Bir önceki yazımızda iptables'ın ne olduğunu ,kurulumunu ve yapısını ele almıştık. Önceki yazımıza buradan ulaşabilirsiniz.
Iptables 5 table'dan oluşur. Bunlar aşağıdaki gibidir.
1-Filter Table :
Filter Table, iptables için default(varsayılan) table'dır. Herhani bir table tanımlamazsanız , default olarak Filter Table'ı kullanmış olursunuz.
En çok kullanılan table'dır.
Bir paketin amaçlanan hedefe gitme talebini izin verme ya da reddetmek için kararlar alındığı table türüdür.
Filter Table aşağıdaki 3 chain'e sahiptir.
2-Nat Table:
Network Address Translation kurallarını uygulamak yani yönlendirme kararları alırken kullanılır.
Bu tablo, paketlerin kaynak ve hedef adresleri değiştirilerek farklı Nat üzerinde host ağlarına paketleri yönlendirmeye izin verir.
Doğrudan erişilemeyen servislere erişime izin vermek için sıklıkla kullanılır.
Nat Table aşağıdaki 3 chain'e sahiptir.
3-Mangle Table:
Özel paket değişikliği için kullanılır. TTL değerlerini değiştirmek gbii çeşitli yöntemlerle paket başlıklarını değiştirebilme imkanı sağlar.TCP header'da QOS bitlerini değiştirir.
Mangle Table aşağıdaki 5 chain'e sahiptir.
4-Raw Table:
NOTRACK hedefiyle birlikte bağlantıları izlerken istinai durumların yapılandırılması için kullanılır.
Netfilter hooks'a yüksek öncelikle kaydedilir ve ip_conntrack veya diğer Ip tables'lardan önce çağrılır.
Raw Table aşağıdaki 2 chain'e sahiptir.
5-Security Table:
Bu table, SECMARK ve CONNSECMARK hedefleri tarafından izin verilen Mandatory Access Control(MAC) ağ kuralları için kullanılır. MAC, SELinux gibi Linux güvenlik modülleri tarafından uygulanır. Filter table'dan sonra security table çağrılarak, filter table'daki Discretionary Access Control(DAC) kuralları , MAC kurallarından önce geçerli olması için izin verilir.
SELinux Tarafından, SELinux güvenlik bağlamlarına dayalı politikalar uygulamak için kullanılır.
Securtiy Table aşağıdaki 3 chain'e sahiptir.
Iptables için akış şemalarını verdiğim linklerden inceleyebilirsiniz.
IPTables
hakkında diğer konular