LINUX.ORG.RU

Iptables & fail2ban

 , , ,


0

1

ТУТ статейка по защите сервера от DoS.
Куда iptables в убунту сервер 12.04 сохраняет логи от параметра -j LOG?

 Sep 14 22:42:18 Brain-Server kernel: [ 351.257185] IPTABLES-FLOOD LENGTH 28: IN=eth0 OUT= MAC=00:1e:90:86:34:a7:90:2b:34:32:12:7c:08:00 SRC=192.168.88.2 DST=192.168.88.10 LEN=28 TOS=0x00 PREC=0x00 TTL=128 ID=30456 PROTO=UDP SPT=62289 DPT=27015 LEN=8 

из кернел.лог. подходит ли сие для регулярного выражения fail2ban ?
 failregex= IPTABLES-FLOOD LENGTH (28|48): IN=eth0 OUT= MAC=[a-zA-F0-9:]+ SRC=<HOST> DST=([0-9]{1,3}\.?){4} LEN=28 

в dmesg они видны, погрепай /var/log - по-моему /var/log/kernel.log

lnx ()

даи это настраивается, если что, куда логи сохранять. в бубунте, вроде, rsyslogd - про его настройку читай.

lnx ()
Ответ на: комментарий от lnx

не получилось в отдельный файл... оно срёт с нереальной скоростью и в syslog и в kern.log (

i_gnatenko_brain ★★★★ ()
Ответ на: комментарий от i_gnatenko_brain

ну разберись, как настраивается логер и всё получится.

lnx ()

s/LOG/ULOG/
+ ulogd / иная программа, слушающая ULOG netlink socket.

AITap ★★★★★ ()
Ответ на: комментарий от lnx

[code] Sep 14 22:42:18 Brain-Server kernel: [ 351.257185] IPTABLES-FLOOD LENGTH 28: IN=eth0 OUT= MAC=00:1e:90:86:34:a7:90:2b:34:32:12:7c:08:00 SRC=192.168.88.2 DST=192.168.88.10 LEN=28 TOS=0x00 PREC=0x00 TTL=128 ID=30456 PROTO=UDP SPT=62289 DPT=27015 LEN=8 [/code]
из кернел.лог. подходит ли сие для регулярного выражения fail2ban ?
[code] failregex= IPTABLES-FLOOD LENGTH (28|48): IN=eth0 OUT= MAC=[a-zA-F0-9:]+ SRC=<HOST> DST=([0-9]{1,3}\.?){4} LEN=28 [/code]

i_gnatenko_brain ★★★★ ()
Ответ на: комментарий от lnx

надо, чтоб банило айпи. то, что пишется в отдельные логи (уже настроил) обрабатывается fail2ban и если более 3х раз встречается один айпи он банится iptables'om. если с помощью fail2ban-regex проверить лог на соответствие регулярному выражению - всё норм, но он почему -то не банит его (

i_gnatenko_brain ★★★★ ()
Ответ на: комментарий от i_gnatenko_brain

Решение проблемы нашёл. Но т.к. я тут создал тему скажите как при выключении/рестарте сервера удалять определённые лог-файлы?

apt-get install fail2ban

iptables -N REJECT_FLOOD28
iptables -A REJECT_FLOOD28 -j LOG --log-prefix 'IPTABLES-FLOOD LENGTH 28: ' --log-level info
iptables -A REJECT_FLOOD28 -j DROP
iptables -A INPUT -i eth0 -p udp --dport 27015 -m length --length 28 -j REJECT_FLOOD28
iptables -N REJECT_FLOOD46
iptables -A REJECT_FLOOD46 -j LOG --log-prefix 'IPTABLES-FLOOD LENGTH 46: ' --log-level info
iptables -A REJECT_FLOOD46 -j DROP
iptables -A INPUT -i eth0 -p udp --dport 27015 -m length --length 46 -j REJECT_FLOOD46
nano /etc/rsyslog.d/10-iptables.conf

:msg, contains, "IPTABLES-FLOOD LENGTH 28: "    -/var/log/iptables.log
:msg, contains, "IPTABLES-FLOOD LENGTH 46: "    -/var/log/iptables.log
& ~
nano /etc/fail2ban/filter.d/ddos.conf
[Definition]
failregex= IPTABLES-FLOOD LENGTH (28|48): IN=eth0 OUT= MAC=[a-zA-F0-9:]+ SRC=<HOST> DST=([0-9]{1,3}\.?){4} LEN=28
nano /etc/fail2ban/jail.conf
banaction = iptables
[ddos]
enabled = true
port      = 27015
protocol = udp
filter = ddos
logpath = /var/log/iptables.log
maxretry = 1
bantime = 6000

i_gnatenko_brain ★★★★ ()
Ответ на: комментарий от i_gnatenko_brain

создай скрипт в /etc/init.d и сделай на него линки в /etc/rc0.d/ и /etc/rc6.d/ читай upstart how-to.

lnx ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.