Giriş
Akış şöyledir.
Add anlamına gelir.
-D - delete işlemi
Add ile eklenen kuralı siler
-j seçeneği
Kurala uyan pakete ne işlem yapılacağını belirtir. ACCEPT, REJECT, DROP, LOG olabilir.
Örnek
Akış şöyledir.
prerouting -> input -> local process
iptables tarafından drop edilmesini beklediğimiz bir broadcast paketi wireshark ile görmeye devam edebiliriz. Açıklaması şöyleWireshark uses libpcap to fetch data from the NIC before it is handled by the OS.-A - add işlemi
Add anlamına gelir.
-D - delete işlemi
Add ile eklenen kuralı siler
-j seçeneği
Kurala uyan pakete ne işlem yapılacağını belirtir. ACCEPT, REJECT, DROP, LOG olabilir.
Örnek
Loglama için şöyle yaparız.
$ iptables -A INPUT -p ICMP --icmp-type 8 -j LOG --log-prefix "Iptables: Ping detected: "
Açıklaması şöyle
That command asks the kernel to log ICMP type 8 packets. The target file will consist of the following records for every packet received:kernel: [122972.300408] Iptables: Ping detected: IN=eth0 OUT=MAC=00:64:d9:36:7b:d7:00:24:2d:a6:e2:43:08:91 SRC=xxx.xxx.xxx.xxxDST=xxx.xxx.xxx.xxx LEN=60 TOS=0x00 PREC=0x00 TTL=124 ID=23020 PROTO=ICMPTYPE=8 CODE=0 ID=33602 SEQ=2462A technique such as this is resource-heavy as it dumps all packet metadata to a file.
Örnek
Şöyle yaparız.# iptables -I INPUT -p tcp --dport 3001 -j REJECT # iptables -I INPUT -p tcp --dport 3002 -j DROP $ nc -v 127.0.0.1 3000 nc: connect to 127.0.0.1 port 3000 (tcp) failed: Connection refused $ nc -v 127.0.0.1 3001 nc: connect to 127.0.0.1 port 3001 (tcp) failed: Connection refused $ nc -v 127.0.0.1 3002-i seçeneği - interface
Açıklaması şöyle.
iptables doesn't use the interface's index but is doing a string comparison with the current interface's name when evaluating the -i/--in-interface parameter.Örnek
Şöyle yaparız.
iptables -A INPUT -i ovpn -p tcp --dport 3306 -j ACCEPT
-I - insert işlemiInsert anlamına gelir. Şöyle yaparız.
iptables -I INPUT 1 -p tcp --dport 8443 -j ACCEPT
iptables -I INPUT 1 -p tcp --dport 8080 -j ACCEPT
iptables -I INPUT 1 -p tcp --dport 443 -j ACCEPT
iptables -I INPUT 1 -p tcp --dport 80 -j ACCEPT
--dport seçeneği - destination portŞöyle yaparız.
iptables -A INPUT -s SOMEIP -p tcp --dport 32400 -j DROP
-p seçeneği - protocolÖrnek
Şöyle yaparız.
iptables -A INPUT -p tcp --dport 445 -j DROP
-s seçeneği - sourceÖrnek
Şöyle yaparız.
iptabşes -A INPUT -s <remote_ip_addresses_range> -j DROP
ÖrnekŞöyle yaparız.
## Block every IP address in ~/blocking.txt
## DROP incoming packets to avoid information leak about your hosts firewall
## (HT to Conor Mancone) REJECT outgoing packets to avoid browser wait
for i in $(cat ~/blocking.txt); do
echo "Blocking all traffic to and from $i"
/sbin/iptables -I INPUT -s $i -j DROP
/sbin/iptables -I OUTPUT -d $i -j REJECT
done
--state seçeneğiÖrnek - rate limiting
Şöyle yaparız. 4 dakikada 4 taneye ssh bağlantısına izin verir.
iptables -A INPUT -p tcp -m tcp --dport 22 -m state --state NEW -m recent --update
--seconds 240 --hitcount 4 --name ssh-v4 --mask 255.255.255.255 --rsource -j REJECT
--reject-with tcp-resetiptables -A INPUT -p tcp -m tcp --dport 22 -m state --state NEW -m recent --set
--name ssh-v4 --mask 255.255.255.255 --rsource -j ACCEPT
Hiç yorum yok:
Yorum Gönder