23 Kasım 2015 Pazartesi

tcpdump

Giriş
wireshark, tcpdump windowsta wincap, unix'te ise libpcap (packet capture) kütüphanalerini kullanıyorlar.

tcpdump komutu
tcpdump komutu yazısına taşıdım

iptables
iptables firewall olarak kullanılır. Durdurmak için şöyle yaparız
service iptables stop
Şöyle de yapabiliriz.
/etc/init.d/iptables stop
Tablolar nelerdir
iptables'da tablolar vardır. Her tabloya ait kavramsal bazı zincirler vardır. Tablolar şunlar
Filter Table,
NAT Table
Mangle Table,
Raw Table.

Zincirler nelerdir
Tablolarda şu zincirler vardır
Filter Table -> INPUT , OUTPUT, FORWARD
NAT Table -> PREROUTING, POSTROUTING, OUTPUT
Mangle Table -> PREROUTING, OUTPUT, FORWARD, INPUT, POSTROUTING
Raw Table -> PREROUTING, OUTPUT

Makinemize gelen bir paket şu zincirleri izler.
PREROUTING --> INPUT --> OUTPUT --> POSTROUTING

Eğer paket iletilecekse şu zinciri izler
PREROUTING --> FORWARD --> POSTROUTING

İşlem sırası
Şöyledir

                                   RAW
                                PREROUTING

                                    |

                                  MANGLE
                                PREROUTING

                                    |

                                   NAT
                                PREROUTING

                                    |

                                 ROUTING
                                 KARARI

                                    |
                -----------------------------------------
                |                                       |

              MANGLE                                  MANGLE
              INPUT                                   FORWARD

                |                                       |

              FILTER                                  FILTER
              INPUT                                   FORWARD

                |                                       |
                                                        |
              LOCAL                                     |
              İŞLEM                                     |
                                                        |
                |                                       |
                                                        |
             ROUTING                                    |
             KARARI                                     |
                                                        |
                |                                       |
                                                        |
               RAW                                      |
              OUTPUT                                    |
                                                        |
                |                                       |
                                                        |
              MANGLE                                    |
              OUTPUT                                    |
                                                        |
                |                                       |
                                                        |
               NAT                                      |
              OUTPUT                                    |
                                                        |
                |                                       |
                                                        |
              FILTER                                    |
              OUTPUT                                    |
                                                        |
                |                                       |
                |                                       |
                -----------------------------------------
                                    |

                                 MANGLE
                               POSTROUTING

                                    |

                                   NAT
                               POSTROUTING


Mangle Tablosu
mangle tablosu ile gönderilen paketlerdeki ip alanları değiştirilebilir.
iptables -t mangle -A OUTPUT -p icmp -j DSCP --set dscp 8
Nat Tablosu
Kendi makineme gelmeyen paketleri ethernet promiscous modda alabilirim. Ping komutuna cevap vermek için PREROUTING aşamasında NAT ile gelen paketlerin destination adresleri 192.168.122.1 yapılır.
iptables -t nat -A PREROUTING -i eth0 -j PNAT --to 192.168.122.1.
80. portu başka porta yönlendirmek için şöyle yaparız.
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3000
192.168.212.21'e gelen UDP paketini, 192.168.215.46'y yönlendiren bir başka örnek

iptables -t nat -A PREROUTING -d 192.168.212.21 -j DNAT
         --to-destination 192.168.215.46
Input Tablosu
İçeriden giden bağlantıya izin vermek için şöyle yaparız. Dışarıdaki sunucu benim bağlantımı kabul ettiği için bana Established TCP paketleri gönderecektir. Bu paketleri kabul ederek bağlantı kurulmasına izin veririm.
iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT
Gelen bazı TCP paketlerini drop etmek için şöyle yaparız.  Bazı paketlerin %1 oranında düşürerek kötü bir bağlantıyı taklit edebiliriz.
iptables -A INPUT -m statistic --mode random --probability 0.01 -j DROP
Gelen bağlantıya izin vermek için şöyle yaparız.
iptables -I INPUT 1 -p tcp --dport 80 -j ACCEPT

Seçenekler ve Anlamları
-A append
Belirtilen zincire ekleme yapar

-i interface
Kuralın geçerli olduğu arayüzü belirtir.

-j
Pakete ne yapılacağı belirtirir. Accept, Drop bazı seçenekler.

-m module
Hangi modülün kullanılacağını belirtirim. state ve statistic modülleri mevcut.

iptables kaydetme
Yapılan değişiklikler şöyle kaydedilir.
iptables-save > /etc/sysconfig/iptables
Şöyle de kaydedebiliriz.
/etc/init.d/iptables save


Hiç yorum yok:

Yorum Gönder