Мина известно време откакто писах тук. За последно писах през лятото. Има си причина да не желая да разказвам (все още) какво се случи на Кара Дере. Само ще кажа, че отсега планирам следващото ходене там вкъщи.
Реших, че е крайно време да организирам малко GitHub профила си, защото…никога не се знае кой ще го погледне. В резултат на това в последните седмици активно се старая да отворя колкото се може повече от кода, който по една или друга причина съм писал и искам да отворя.
https://github.com/krasimirstoev/node-exporter-ansible-playbook – в GitHub трудно се намира Ansible playbook единствено за иснталиране на node_exporter. В моя случай – имам купчина сървъри, за които съм решил да използвам grafana, защото са ми нужни удобни графики за последните седмици. Реших да добавя този playbook поради тази причина.
https://github.com/krasimirstoev/StudentX – това е fork на оригиналното хранилище на Кирил, който вече няма класически блог, заради това няма да го линквам. Над десетилетие този проект си стоеше като паметник на ученическият ни ентусиазъм. В оня период моята подготовка изобщо не беше в посока IT, поради което целият проект го написа Кирил. Написа го прекрасно, изпихме много пиене докато го мислехме и обикаляхме страната за НОИТ състезанията. Над декада обаче му липсваше база данни. Един ден ме хвана яд, защото не го пазим в довършено състояние, заради това седнах да изчета кода и да направя структурата на базата данни. Разбира се, защото Киро е…така, не ми одобрява pull request-а, който се постарах да е точно толкова аматьорски, колкото ние сме били през 2008-2009 година.
https://github.com/krasimirstoev/ariel – когато имаш десетки (да не напиша стотици) мрежи, трябва да имаш добър инструмент, с който да проверяваш дали някой адрес не е попаднал в някой черен списък. В моя случай имам казус, че имам прекалено много мрежи и досегашните решения изисипваха над половин милион DNS заявки. Организации като SpamHaus не бяха щастливи от това. Поради тази причина направих реорганизация – кои мрежи са ми важни и искам често да се проверяват и кои са ми по-малко важни. В резултат на това написах този скрипт, който намали изходящите ми DNS заявки от 0.5M дневно до около 50 000, което е супер. Малко изглежда като заклинание стартирането му, но е удачно да се сложи в /etc/cron.d/ariel. Стартирането на проверка изглежда като заклинание, което донякъде ми харесва. Ето пример:25 1 * * 1 root /bin/bash /root/scripts/ariel --network=10.10.10.0 --priority=2 --lock --log_everything --compose_email [email protected] [email protected] --list=/etc/ariel/dnsbl.conf >> /var/log/ariel/cron.log 2>&1
Използвам семафори, което ми помага за бърза проверка. На практика чрез –priority=0 –max_procs=15, ако имаш добра машина, това си е инструмент за DNS атака.
https://github.com/krasimirstoev/wp-kurt-legacy – статично хранилище на (засега) единствения ми плъгин за WordPress, който е част от extend-а на WordPress. Опитал съм се да споделя какво е Заветът на Вонегът.
https://github.com/krasimirstoev/athena – никога няма да се науча да слагам добри имена на „проектите“ си. По някое време през годината се бях ядосал, че WordPress-а ми тук се счупи зловещо при минорен ъпгрейд. Ядосах се, седнах и за около ден написах блог функционалност за Django. Не харесвам Python, обаче в Athena пренесох всички важни функционалности, които ми трябват от WordPress, за да имам функционален блог. След втория или третия commit реших, че няма смисъл да мигрирам към Django, но така или иначе вече бях направих това хранилище, нека стои за поколенията. В носталгични дни си спомням как WordPress беше единствено блог. Сега може да бъде всичко, което има своята цена.
https://github.com/krasimirstoev/sf – това е само основата техническа част на един проект, който от години ми се иска да предложа на някои барове/заведения. Идеята е проста – вместо да се използват сламки и пластмасови късметчета, на масата просто да има един QR код, който да се сканира. Съответно посетителя на бара/заведението сканира кода и си „тегли“ късметчето за деня. Проблемът, който исках да атакувам е, че тъпите късметчета са пластмасова хартия, която е навита и се държи от парченце сламка. Вече сме 2024 година и на практка почти няма хора без подходящ смартфон. И тук вече идва частта с бизнес реализацията. Как да го предложа сега това на заведенията? Мислех да си имат свой собствен поддомейн към основния, с който ще работи проекта и да имат възможност през лесен административен интерфейс да си изберат цитат от какви категории да се „теглят“ от съответното заведение. Тук идва и моят проблем – искам това да е леко и да коства на практика 0.00$ годишно за хостинг. Заради това направих „базата“ да е прост json файл. Обаче ако ще трябва заведенията да си избират категории, отиваме на вариант API. В момента не мога да отделя необходимото време, но определено ми се иска един ден да мога да го реализирам.
Килър фийчъра е, че всички цитати от късметчетата са ръчно проверени.
https://github.com/krasimirstoev/named-ad-block – допреди две години имах една малка машинка, на която бях сложил контейнери. Един от тези контейнер сложих малък named сървър и направих тази проста реализация да блокирам реклами. На openwrt рутера бях сложил в resolv.conf адреса на хоста, на който прекарвах двустранно 53 порт от/към контейнера. На практика това е по-дърварския (или админски) начин да блокирам гадни реклами. В момента използвам LXC контейнер с pi-hole, което е много по-удобно и на практика не се изисква никаква поддръжка от моя страна. Въпреки това, оставям и това хранилище за поколенията.
За съжаление по тоя вектор в общи линии вече няма какво да се направи, големите рекламодатели успяват да заобиколят блокирането на реклами.
Толкова от мен, друг път – повече. Тъжно ми е, че нямам време да разпиша и нетехничарски публикации.
Leave a Reply