Hoşgeldin Misafir

IPtables'e Başlangıç Rehberi Ubuntu

35izmir

35izmir

🆁🅴🅸🆂🅲🅸🆂🅴🆅🅴🆁
11 Ocak 2018
2,701 Mesaj

Aktiflik

Seviye

Deneyim

TIM / GÖREV:
Selam Beyler

Bu yazıda Iptables ve kullanımları üzerinde tartışacağız. Iptables, tüm resmi Ubuntu dağıtımlarında varsayılan olarak yüklenmiş bir komut satırı güvenlik duvarıdır. Iptables'i kullanarak, tüm gelen ve giden ağ trafiğini doğrulamak için Linux çekirdeğinin arkasından gidecek bir dizi kuralları etiketleyebilirsiniz.

Bugün gelen ve giden trafiği filtreleyecek bir Filtre Tablosu oluşturmak için çeşitli Iptables seçeneklerini kullanarak Iptable'ın bazı temel kavramlarına bakacağız.

maximized_tab_switching.gif
-


Temel Iptables Seçenekleri

A: Yeni kurallar zincirine ekleyin.
L: Geçerli filtre kurallarını listeler.
m conntrack: Filtre kurallarının bağlantı durumuna göre eşleşmesine izin ver. ctstate seçeneğinin kullanılmasına izin verir.
ctstate: Kuralların eşleşmesi için durum listesini seçer.
NEW Bağlantı henüz görülmedi.
RELATED Yeni Bağlantı, Aynı Olan veya benzeri olan Bağlantıyla Çakışır
ESTABLISHED Bağlantı kuruldu.
INVALID Bazı nedenlerden dolayı trafik tanımlanamadı.
m limit: Kuralın yalnızca sınırlı sayıda eşleşmesi için zorla . limit seçeneğinin kullanılmasına izin verir.

Günlüğe kaydetme kurallarını sınırlamak için kullanışlıdır:

limit - Kuralın ne sıklıkta eşleşmesini istediğinize bağlı olarak


Kod:
 “/ second”, “/ minute”, “/ hour” veya “/ day”


tarafından takip edilen bir sayı olarak verilen maksimum eşleşme oranı. Bu seçenek kullanılmazsa
ve -m limit kullanılırsa, varsayılan “3 / hour” şeklindedir.
-p: Kullanılan bağlantı protokolünü tanımlayın.

–dport: Bu kural için gerekli olan hedef bağlantı noktası. Tek bir bağlantı noktası verilebilir veya başlangıç noktası olarak, tüm bağlantı noktaları baştan sona, her şeyle eşleşecek şekilde bir aralık verilebilir.

-j: Belirtilen hedefe atla. Varsayılan olarak, iptables, dört hedefe izin verir:

ACCEPT - Bu zincirdeki paketi kabul edin ve işleme kurallarını durdurun.
REJECT– Paketi reddedin ve gönderdiğimiz göndericiyi bilgilendirin ve bu zincirdeki işlem kurallarını durdurun.

DROP - Paketi sessizce göz ardı edin ve bu zincirdeki işlem kurallarını durdurun.
LOG - Günlük

komorebi-2-wallpaper-app.gif


-I: Bir kural ekler. İki seçenek alır, kuralı içine sokacak zincir ve olması gereken kural numarası.


-I: INPUT 5 kuralı INPUT zincirine sokar ve listede 5. kuralı yapar.


-s: –source - adres [/ mask] kaynak belirtimi


-d: –destination - address [/ mask] hedef belirtimi


Iptables, gelen ve giden trafiği kontrol etmek için güvenlik duvarı kurallarından başka bir şey olmayan Ipchain kurallarını takip eder


Üç Önemli Tipler Iptable zincirler


Giriş Zinciri: Giriş zinciri kuralı kuralı, gelen trafiğin sunucuya yönelik etkinliklerini yönetmek için kullanılır.


Çıktı Zinciri: Ouput zincir kuralı, sunucunuzdan giden trafiğin etkinliklerini yönetmek için kullanılır.


İletim Zinciri: Bir ip paketinin iletilmesiyle ilgili kuralların eklenmesi için bir ileri zincir kuralı kullanılır. Bu, genellikle, iki ağı birbirine bağlayan yönlendirici olarak bir Linux makineniz varken kullanılır.


Yukarıda açıklandığı gibi, varsayılan olarak ipucunu yüklemek, tüm Ubuntu dağıtımlarında kullanılabilir, ancak herhangi bir Linux tabanlı sistemde yüklü değilse ve bunu yüklemek istiyorsanız, aşağıda verilen komuttan vazgeçin.


sudo apt-get install iptables


Varsayılan olarak, tüm gelen ve giden bağlantı trafiğini filtrelemeden izin veren iptable boştur. Iptable'ın yerleşik kurallarını doğrulamak için iptables'de eklendiyse kuralların listesini gösteren aşağıdaki komutu çalıştırmamız gerekir.


sudo iptables -L-v


Burada -L iptables ve -v zincir kurallarını görüntülemek için kullanılır.

1.png


Gelen Trafiğe İzin

Belirli bir port için trafiğe izin vermek için aşağıda vericeğim komutu kullanabilirsiniz. Burada SSH için 22, HTTP için 80 ve HTTPS için sırasıyla 443'ü kabul ediyoruz.

Kod:
sudo iptables -A INPUT -p tcp –dport 22 -j ACCEPT[/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE]
[SIZE=7][SIZE=6][SIZE=7][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6]sudo iptables -A INPUT -p tcp –dport 80 -j ACCEPT

sudo iptables -A INPUT -p tcp –dport 443 -j ACCEPT


Dolayısıyla, trafik 22, 80 ve 443 numaralı bağlantı noktalarında geldiğinde tcp bağlantısına izin verecektir.

Drop / Deny Incoming Traffic
Gelen Trafiği Bırak / Reddet

Belirli bir port için trafiği reddetmek için aşağıda verilen komutu kullanabilirsiniz. Burada sırasıyla FTP için port 21 ve Telnet için 23

Kod:
sudo iptables -A INPUT -p tcp –dport 21 -j DROP[/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE][/SIZE]
[SIZE=7][SIZE=6][SIZE=7][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6][SIZE=6]sudo iptables -A INPUT -p tcp –dport 23 -j DROP

Dolayısıyla, trafik 21, 23 numaralı bağlantı noktasında geldiğinde tcp bağlantısını reddedecek ve bir mesaj gönderecektir.

Reject Incoming Traffic
Gelen Trafiği Reddet

Reddetme ve Bırakma eylemi, gelen trafiği sadece sunucuyla bağlantı kurmadan engellemek için aynı şekilde çalışır. Burada, “ICMP mesajı Portu Ulaşılamıyor” mesajını gönderir ve gelen paketi bırakır. Aşağıda verilen komutları kullanarak SMTP için 25 numaralı bağlantı noktasını reddediyoruz.

Kod:
sudo iptables -A INPUT -p tcp –dport 25 –j REJECT


Bu yüzden, 25 numaralı bağlantı noktasından trafik geldiğinde ve Hedef Bağlantı noktasına ulaşılamıyorsa tcp bağlantısını bırakır.
 
Moderatör tarafında düzenlendi: