Yazılım KonularıLinuxYazılar

Sunucu Güvenliği: İptables Nedir?

Giriş

Merhabalar, bu yazımda yazılımsal olarak sunucu güvenliğinizi üst düzeye çıkarmanız için kullanabileceğiniz İptables Firewall kurulumunu bu yazımda derledim. Umarım içerik faydalı olmuştur. İşte iptables nedir?

İptables Nedir?

İptables Nedir?
Sunucu Güvenliği: İptables Nedir? 1

iptables, bir sistem yöneticisinin farklı Netfilter modülleri olarak uygulanan Linux çekirdeği güvenlik duvarının IP paket filtresi kurallarını yapılandırmasına izin veren yardımcı yazılımdır. Filtreler, ağ trafiği paketlerinin nasıl işleneceğine ilişkin kural zincirleri içeren farklı tablolarda düzenlenir.

İptables sunucu güvenliğini arttırımı?

Artık güvenlik duvarı ve iptables’ın ne olduğunu bildiğinize göre, bunları nasıl kullanabileceğimize bakalım. Çoğunlukla insanlar , güzel ve zarif olanla tanışmadan önce firewalld ya da benim gibi kullanmanın basit olduğu ufw firewall’a giderdi .

firewalld ve ufw yi popüler yapan da budur. Ancak basitlik, birlikte çalışmaya karar verdiğinizde maruz kaldığınız esnekliği ve tam özelliği de azaltır iptables.

Kendi başlarına firewalld ve ufw yalnızca bir paketi kabul etmenize veya reddetmenize izin verir. Ama bir paketle yapabileceğiniz çok daha fazlası var. NAT, günlüğe kaydetme ve iletme bunlardan sadece birkaçıdır.

iptables Bu yüzden , karmaşıklıklarından korkmamak ve kolayca kullanmanız için duruyor. İptablesi kullanmak için bir neden listesi :

  • İhtiyacınız olan her şeyi size sağlayan tam özellikli bir araçtır
  • Bir paketle yapmak istediğiniz şeylerle ilgili daha fazla esneklik elde edersiniz
  • İptables ile kural yazmak kendinizi usta bir yazılımcı olduğunuz hissini verebilir :).
  • Geniş kapsamlı kurallar ile sunucu güvenliğini %40 veya daha fazla korunma ihtimaline yaklaştırır (tahminen).

İptables Kurulumu

Bazı sistemlerde iptables kurulu olarak gelebilir, aşağıdaki komut ile İptables sisteminizde mevcutmu kontrol edebilirsiniz:

Not: RHEL / CentOS işletim sistemlerinde firewallD adı verilen bir sistem zaten kuruludur. Eğer Iptables kullanmak istiyorsanız, öncelikle bunu devre dışı bırakmalısınız.
sudo iptables -L -v

Çıktı:
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source             destination         
 
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source             destination         
 
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source             destination

Örnek çıktı yukardaki gibiyse İptables sunucunuzda hazır olarak kurulmuştur. Eğer başka bir sonuç aldıysanız büyük ihtimalle sunucunuzda yazılımsal İptables kurulu değildir, İptablesi sunucunuza kurmak için:

sudo apt-get update
sudo apt-get install iptables

komutlarını sırasıyla komut istemcinize giriniz.

İptables Komutları

ACCEPT (KABUL ET): Paketin geçmesine izin verileceği anlamına gelir

.DROP (REDDET): Paketin geçmesine izin verilmeyeceği anlamına gelir

.RETURN (GERİ ÇEVİR): Şimdiki zincirin pas geçilmesi ve çağrıldığı zincirde bir sonraki kurala geçilmesi gerektiği anlamına gelir.

iptables -L = Oluşturduğunuz iptables kurallarının hepsini görüntülemek için kullanabilirsiniz.

sudo iptables –L

iptables -F =Eğer tüm kuralları silmek ve yeniden temiz bir sayfa açmak isterseniz, bu komutu kullanabilirsiniz

sudo iptables –F

-D –delete: Zinciri silmek için kullanılır. Silme işlemi için ya zincir numarası ya da kuralın kendisi yazılmalıdır.

sudo iptables -D --numarası

-R –replace:Var olan bir kural zincirini değiştirmek için  kullanılır:

iptables -R INPUT 1 -s 192.168.1.44 -j REJECT

-P –policy : Belirtilen zincir içersinde paket herhangi bir kurala uymazsa pakete ne yapılacağını belirtir. ACCEPT, REJECT, DROP:

iptables –P INPUT DROP # Gelen paket bir kurala uymuyorsa drop et şeklindedir.
Önemli Bilgi:Sunucu root erişiminiz varsa yani sunucu yöneticisi iseniz sudo olmadanda kodları kullanabilirsiniz.
Sudo komutu /etc/ dizinindeki sudoers dosyası üzerinden yapılandırılır. Sudo komutu ile normal kullanıcılara yönetici seviyesinde izinler verirsiniz. Normalde Ubuntu'yu yüklerken oluşturulan ilk kullanıcının sudo izni bulunmaktadır.

Hedef Opsiyonları

–log-level: Olay loglama öncelik seviyesini belirlemek için kullanılır.

–log-ip-options: IP paket başlığında set edilmiş herhangi bir opsiyon loglamak için kullanılır.

–log-prefix: Ön ek eklemek için kullanılır.

–log-tcp-options: TCP paket başlığında set edilmiş herhangi bir opsiyon loglamak için kullanılır.

–log-tcp-sequence: Loglarda paketler için TCP sıra sayısı yazmak için kullanılır. 

Önemli İptables bilgiler

Farklı servisler için kullanılan farklı İptables protokoller:

  • iptables IPv4 için uygulanır.
  • ip5tables Ipv6 için uygulanır.
  • arptables ARP için uygulanır.
  • ebtables Ethernet çerçeveleri için uygulanır.

İpTables ana dosyaları:

  • /etc/init.d/iptables – Komutlar: (start |stop |restart |save)
  • /etc/sysconfig/iptables – Kuralları kaydedilen yer.
  • /sbin/iptables – binary dosyası.

Dinleme Opsiyonları:

-v –verbose: daha ayrıntılı çıktı almak için kullanılır.

-x –exact: verbose kullanıldığında kısaltma değerler kullanılmaktadır. Exact diyerek  bu değeri uzunca gösterilmektedir.

-n –numeric: Host ismi yerine IP adresini,servis yerine port numarası(www yerine 80 ) gösterilmesi için kullanılır. Bazı değerleri dönüştüremeyebilir.

-t –table: Kullanılacak table harici başka bir table’a eklemek için kullanılır.

Bu yazıyı yazarken kullandığım kaynaklar:

  1. Kaynak1
  2. Kaynak2
  3. Netfilter web sitesi (İptables yayıncısı)

Önceki Sonraki
No Comments

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir