IPTABLES ile Firewall Yönetimi

iptables&nftables

Linux’ta IPTABLES Kullanarak Güvenlik Duvarı Kuralları Yazma

Linux işletim sistemlerinde ağ trafiğini yönetmek ve siber tehditlere karşı koruma sağlamak için IPTABLES’ı kullanarak güvenlik duvarı kuralları yazma adımlarını detaylı bir şekilde ele alıyoruz. Temel ve ileri düzey kural oluşturma, örnek senaryolar, ayarları kaydetme ve ipuçları dahil olmak üzere kapsamlı bilgiler sunmayı amaçlıyoruz.

Güvenlik duvarları, siber saldırılara karşı kritik bir savunma hattı oluşturarak ağ trafiğini filtrelemek ve kontrol etmek için kullanılır. Linux sistemlerinde, IPTABLES, bu amaçla yaygın olarak kullanılan güçlü bir araçtır. Bu yazı, IPTABLES’ı kullanarak temel ve ileri düzey güvenlik duvarı kuralları yazmayı öğrenmenize ve uygulamanıza yardımcı olacaktır.

IPTABLES Kuralı Yazma

Her IPTABLES kuralı, aşağıdaki dört temel öğeden oluşur::

  1. Komut Seçimi:
    • İzin vermek için iptables -A
    • Engellemek için iptables -D kullanılır.
  2. Zincir (Chain) Belirleme:
    • Gelen paketler için INPUT
    • Giden paketler için OUTPUT
    • Yönlendirilen paketler için FORWARD
  3. Kriter Belirleme:
    • Örneğin, belirli bir IP adresinden gelen trafik için -s 192.168.1.1
    • Belirli bir port için --dport 22
  4. Eylem Belirleme:
    • Kabul etmek için ACCEPT
    • Reddetmek için DROP
    • Başka bir zincire yönlendirmek için JUMP

Örnek Kurallar

  • Belirli Bir IP Adresinden Gelen Trafik İçin Engel:
  • iptables -A INPUT -s 192.168.1.1 -j DROP

    Bu kural, 192.168.1.1 adresinden gelen tüm trafiği engeller.

  • Belirli Bir Porta Gelen Trafik İçin İzin:
  • iptables -A INPUT -p tcp --dport 80 -j ACCEPT

    Bu kural, TCP üzerinden port 80’e gelen trafiği kabul eder.

  • Tüm Giden Trafik İçin İzin:
  • iptables -A OUTPUT -j ACCEPT

    Bu kural, tüm giden trafiği kabul eder.

İleri Düzey Örnekler

  1. Tüm Gelen Bağlantıları Reddet:
  • sudo iptables -P INPUT DROP
    sudo iptables -P FORWARD DROP
  • HTTP ve HTTPS Portlarına İzin Ver:
  • sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
    sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
  • SSH ve FTP için Belirli IP’lerden Erişime İzin Ver:
  • # SSH için
    sudo iptables -A INPUT -p tcp -s 192.168.1.100 --dport 22 -j ACCEPT
    sudo iptables -A INPUT -p tcp -s 10.0.0.5 --dport 22 -j ACCEPT
    # FTP için
    sudo iptables -A INPUT -p tcp -s 192.168.1.100 --dport 21 -j ACCEPT
    sudo iptables -A INPUT -p tcp -s 10.0.0.5 --dport 21 -j ACCEPT
  • Yerel Ağdan Tüm Trafiklere İzin Ver:
  • sudo iptables -A INPUT -i lo -j ACCEPT
    sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
  • Ayarları Kaydet ve Yeniden Başlatma Yönetimi:
  1. sudo iptables-save > /etc/iptables/rules.v4

    Bu komut, kuralların yeniden başlatmalarda uygulanmasını sağlar.

 

Spesifik Kurallar Ekleme: Özel durumlar için kurallar ekleyebilirsiniz. Örneğin, belirli bir IP adresinden gelen veya giden trafiğe izin vermek veya engellemek isteyebilirsiniz.

  • # Belirli bir IP adresinden gelen SSH trafiğine izin ver

    sudo iptables -A INPUT -p tcp -s 192.168.1.100 --dport 22 -j ACCEPT

     

    # Tüm ICMP (ping) isteklerini reddet
    sudo iptables -A INPUT -p icmp -j DROP
  • Lojistik Ayarları Yapma: Yerel ağ trafiklerini kabul etmek ve mevcut bağlantılara izin vermek için:
  • sudo iptables -A INPUT -i lo -j ACCEPT
    sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
  • Kuralları Test Etme: Yeni eklenen kuralların beklenildiği gibi çalıştığından emin olmak için test edin. iptables -L -v komutunu kullanarak mevcut kuralları ve istatistikleri gözden geçirebilirsiniz.

 

IPTABLES, daha karmaşık ağ filtreleme senaryoları oluşturmak için çeşitli gelişmiş seçenekler sunar:

  • Modüller: Paketleri işlemek için ek işlevler sağlayan modülleri yükleyebilirsiniz. Örneğin, nf_nat modülü, NAT (Network Address Translation) gibi gelişmiş yönlendirme teknikleri sağlar.
  • Markalama: Paketleri belirli kriterlere göre işaretleyebilir ve daha sonra bu işaretleri filtreleme işleminde kullanabilirsiniz.
  • Sınırlı Hız: Belirli kaynaklardan gelen trafiği bant genişliği sınırıyla sınırlayabilirsiniz.

Güvenlik Duvarı Yönetimi İpuçları

  • Beyaz Liste Yaklaşımı: Yalnızca izin verilen trafiği tanımlayın ve varsayılan olarak her şeyi engelleyin.
  • En Az Ayrıcalık İlkesini Uygulayın: Gerekenden fazla erişim izni vermeyin.
  • Kuralları Düzenli Olarak Güncelleyin: Sisteminizdeki değişikliklere ve yeni tehditlere ayak uydurun.
  • Logları İzleyin: Şüpheli etkinlikleri ve potansiyel saldırıları belirlemek için logları inceleyin.
  • Test Edin ve Doğrulayın: Herhangi bir kuralı uygulamadan önce test ortamında gerekli testleri uygulayın.

IPTABLES kuralları, sunucunuzun güvenliğini artırırken, belirli kaynaklardan sadece belirli hizmetlere erişim sağlamaya yardımcı olur. Bu kuralları uygulamadan önce, daha fazla bilgi edinmek ve özelleştirilmiş yapılandırmalar için güvenilir çevrimiçi kaynaklara başvurabilirsiniz.

Leave A Comment

Your email address will not be published. Required fields are marked *

×