Change IPTABLES log file

Domyślnie w Ubuntu 14.04 iptables loguje ruch w pliku /var/log/syslog. Możemy to zmienić poprzez dodanie unikalnego prefiksu do regułki iptables jak w przykładzie poniżej:

iptables -A INPUT -s 192.168.0.0/24 -i eth0 -j LOG --log-prefix='[spoofing] '

Teraz wystarczy edytować plik /etc/rsyslog.d/20-ufw.conf i dodać do niego odpowiedni filtr:

:msg,contains,"[spoofing] " /var/log/iptables.log

Po restarcie rsysloga poniższym poleceniem:

root@server:/# service rsyslog restart

cały ruch z regułek oznaczonych jak powyżej będzie trafiał do pliku: /var/log/iptables.log.

Zabezpieczenie Binda w iptables

Jak odpowiadać na rekursywne ataki DNS, DoS lub DDoS?

Poniżej kilka przykładów konfiguracji iptables:

Objawem ataków jest wpis w logach Binda podobny do poniższego i powtarzający się nawet kilka razy na sekundę z różnych adresów IP lub cały czas z tego samego.

query (cache) 'isc.org/ANY/IN'

Na początku przed innymi regułami dotyczącymi DNS’a należy dodać poniższe wpisy i zrestartować firewalla:

PUBLIC_IF=eth0 //interfejs sieciowy publiczny
IPTABLES=/sbin/iptables //ścieżka do iptables

$IPTABLES -A INPUT -i $PUBLIC_IF -p udp --dport 53 -m recent --set
$IPTABLES -A INPUT -i $PUBLIC_IF -p udp --dport 53 -m recent --update --seconds 30 --hitcount 10 -j DROP

lub inny przykład:

PUBLIC_IF=eth0 //interfejs sieciowy publiczny
IPTABLES=/sbin/iptables //ścieżka do iptables

$IPTABLES -A INPUT -i $PUBLIC_IF -p udp --dport 53 -m recent --update --seconds 30 -j DROP
$IPTABLES -A INPUT -i $PUBLIC_IF -p udp --dport 53 -m recent --update --seconds 30 --hitcount 10 --rttl --set -j DROP

poniższe też może być ciekawe:

PUBLIC_IF=eth0 //interfejs sieciowy publiczny
IPTABLES=/sbin/iptables //ścieżka do iptables

$IPTABLES -A INPUT -i $PUBLIC_IF -d $MAIN_IP -p udp --dport 53 -m state --state ESTABLISHED,RELATED -j DROP