İptables Nedir? Kullanımı ve Komutları
iptables, Linux işletim sistemi üzerinde kullanılan bir güvenlik aracıdır. Bu araç, sunucularınızda yer alan ağ trafiğini yönetmek, izin verilen veya engellenen bağlantıları kontrol etmek için kullanılır. Bu makalede, iptables kuralları hakkında detaylı bir bilgi sunacağız. Ayrıca, iptables kurallarını kullanarak bir IP adresini engelleme, bir IP adresine izin verme, log tutma, içeri aktarma ve dışarı aktarma işlemleri için örnekler de paylaşacağız.
Makale Başlıkları
iptables Nedir?
iptables, Linux işletim sistemi üzerinde kullanılan bir güvenlik aracıdır. Bu araç, sunucularınızda yer alan ağ trafiğini yönetmek, izin verilen veya engellenen bağlantıları kontrol etmek için kullanılır.
iptables, bir paket filtreleme sistemidir. İptables kuralları, belirli IP adreslerinden gelen trafiği engellemek veya izin vermek, belirli portlara erişimi kısıtlamak veya belirli protokolleri engellemek gibi birçok farklı amaç için kullanılabilir.
iptables kurulumu
iptables’i yüklemek için aşağıdaki komutu kullanabilirsiniz:
sudo apt-get install iptables
Bu komut, iptables paketini yükleyecektir.
iptables Kurallarının Kullanımı
iptables kuralları, izin verilen veya engellenen bağlantıları kontrol etmek için kullanılır. Kurallar, chain’ler ile birleştirilerek kullanılır. Chain’ler, paketlerin geçtiği yerlerdir. Aşağıdaki chain’ler iptables’da kullanılır:
- INPUT: Sunucunuza gelen paketleri kontrol eder.
- OUTPUT: Sunucunuzdan çıkan paketleri kontrol eder.
- FORWARD: Sunucunuz üzerinden geçen paketleri kontrol eder.
iptables kuralları oluşturmak için, aşağıdaki temel komutlardan yararlanabilirsiniz:
- iptables -L: Mevcut tüm kural setlerini listeler.
- iptables -F: Mevcut tüm kural setlerini siler.
- iptables -A: Yeni bir kural seti ekler.
- iptables -D: Var olan bir kural setini siler.
- iptables -I: Var olan bir kural seti içine yeni bir kural ekler.
- iptables -P: Varsayılan bir policy belirler.
iptables Kural Ekleme
Yeni bir iptables kuralı eklemek için aşağıdaki komutu kullanabilirsiniz:
sudo iptables -A CHAIN_NAME -i INTERFACE -s SOURCE_IP -p PROTOCOL --dport PORT -j ACTION
Bu komutta, CHAIN_NAME, kuralın ekleneceği chain’i belirtir. INTERFACE, kuralın hangi ağ arayüzüne uygulanacağını belirtir. SOURCE_IP, kaynak IP adresini belirtir. PROTOCOL, kullanılacak olan protokolü belirtir. PORT, kullanılacak olan port numarasını belirtir. ACTION, kuralın ne yapacağını belirtir.
iptables Kural Silme
Var olan bir iptables kuralını silmek için aşağıdaki komutu kullanabilirsiniz:
sudo iptables -D CHAIN_NAME RULE_NUMBER
Bu komutta, CHAIN_NAME, kuralın bulunduğu chain’i belirtir. RULE_NUMBER, silinecek olan kuralın numarasını belirtir.
IP Adresini Engelleme
Belirli bir IP adresini engellemek için, aşağıdaki komutu kullanabilirsiniz:
iptables -A INPUT -s [IP Adresi] -j DROP
Bu komut, belirtilen IP adresine gelen paketleri engeller.
Örneğin, 192.168.1.100 IP adresini engellemek için aşağıdaki komutu kullanabilirsiniz:
iptables -A INPUT -s 192.168.1.100 -j DROP
IP Adresine İzin Verme
Belirli bir IP adresine izin vermek için, aşağıdaki komutu kullanabilirsiniz:
iptables -A INPUT -s [IP Adresi] -j ACCEPT
Bu komut, belirtilen IP adresine gelen paketleri izin verir.
Örneğin, 192.168.1.100 IP adresine izin vermek için aşağıdaki komutu kullanabilirsiniz:
iptables -A INPUT -s 192.168.1.100 -j ACCEPT
iptables Log Tutmak
iptables kurallarından geçen paketleri loglamak için, aşağıdaki komutu kullanabilirsiniz:
iptables -A INPUT -s [IP Adresi] -j LOG --log-prefix "Paket Loglandı: "
Bu komut, belirtilen IP adresine gelen paketleri loglar ve logların önüne “Paket Loglandı: ” metnini ekler.
Örneğin, 192.168.1.100 IP adresine gelen paketleri loglamak için aşağıdaki komutu kullanabilirsiniz:
iptables -A INPUT -s 192.168.1.100 -j LOG --log-prefix "Paket Loglandı: "
Kural içeri Aktarma
İptables kurallarını içeri aktarmak için, aşağıdaki komutu kullanabilirsiniz:
iptables-restore < [dosya_adı]
Bu komut, belirtilen dosyadaki iptables kurallarını içeri aktarır.
Örneğin, “iptables-kuralları.txt” dosyasındaki iptables kurallarını içeri aktarmak için aşağıdaki komutu kullanabilirsiniz:
iptables-restore < iptables-kuralları.txt
Kural Dışarı Aktarma
İptables kurallarını dışarı aktarmak için, aşağıdaki komutu kullanabilirsiniz:
iptables-save > [dosya_adı]
Bu komut, iptables kurallarını belirtilen dosyaya dışarı aktarır.
Örneğin, iptables kurallarını “iptables-kuralları.txt” dosyasına dışarı aktarmak için aşağıdaki komutu kullanabilirsiniz:
iptables-save > iptables-kuralları.txt
Kuralları Listeleme
iptables kurallarını listelemek için, aşağıdaki komutları kullanabilirsiniz:
- iptables -L: Tüm kuralları listeler.
- iptables -L [Chain İsmi]: Belirli bir chain içindeki kuralları listeler.
Örneğin, INPUT chain’indeki tüm kuralları listelemek için aşağıdaki komutu kullanabilirsiniz:
iptables -L INPUT
Bu makalede, iptables kuralları hakkında temel bilgileri ve kullanımlarını öğrendik. IP adresi engelleme, IP adresi açma, log tutma, içeri aktarma ve dışarı aktarma işlemleri için örnekler de paylaştık. İptables kurallarını kullanarak sunucularınızda yer alan ağ trafiğini yönetebilir ve güvenliğinizi sağlayabilirsiniz.