понедельник, 25 июня 2012 г.

Iptables - скриптик для защиты от ДДОСа

Просто скриптик, утянутый на память с Хабра:

#!/bin/bash PATH=/sbin:/usr/sbin:$PATH date=`date +"%Y%m%d%H%M"` iptables -t raw -L PREROUTING -vnxZ | perl -ne 'split/ +/;print "$_[8]\n" if $_[1] ne "0";' | xargs -I {} iptables -t raw -D PREROUTING -s {} -j DROP log_dir=/var/lib/vservers/perfccc/var/www/logs/typofront/ cd ${log_dir} pid=`cat /var/lib/vservers/perfccc/var/run/nginx.pid` mv ${log_dir}/typofront.access.log ${log_dir}/typofront.access.${date}.log /usr/sbin/vkill -s USR1 ${pid} grep "GET /experts/extrasensy/index.html HTTP" ${log_dir}/typofront.access.${date}.log | cut -d ' ' -f 1 | sort | uniq -dc | sort -nr | perl -ne 'split /\s+/; print "$_[2]\n" if ($_[1]>30);' | xargs -I {} iptables -t raw -I PREROUTING -s {} -j DROP /bin/gzip ${log_dir}/typofront.access.${date}.log

четверг, 1 марта 2012 г.

PHP - T_PAAMAYIM_NEKUDOTAYIM

Столкнулся с ошибкой:

Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM in /var/www/index.php
Оказалось, что это иврит, написанный английскими буквами. Переводится как двойное двоеточие, то есть конструкция '::'.

понедельник, 27 февраля 2012 г.

apt-get или aptitude - segmentation fault

После одного из внеплановых перезапусков сервера apt-get и aptitude начисто отказались работать, ругаясь на segmentation fault. Проверка диска с помощью fsck ничего не дала, но помогла следующая команда:
rm /var/cache/apt/*.bin
После этого всё заработало, как надо:)