İptables kullanarak beyaz listeye izin verilen IP'ler (giriş / çıkış)


21

Sunucumun bağlanmasını ve kullanıcıların bağlanmasını istediğim birkaç ip aralığım var. Diğer her şey engellenmelidir.

Bunu iptables ile nasıl yapmalıyım?

İşletim sistemim Debian tabanlı linux dağıtımdır.

Yanıtlar:


27

Bir Firestarter gibi bir güvenlik duvarı yapılandırma aracını almanızı ve oradan gitmenizi öneririm . İşte size bazı temel bilgiler.

#Flush existing rules
iptables -F
# Set up default DROP rule for eth0
iptables -P INPUT DROP
# Allow existing connections to continue
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
# Accept everything from the 192.168.1.x network
iptables -A INPUT -i eth0 -s 192.168.1.0/24 -j ACCEPT
# Allow connections from this host to 192.168.2.10
iptables -A OUTPUT -o eth0 -d 192.168.2.10 -j ACCEPT

3
101010 düğmesini kullanarak kodunuzu sunucu hatası yayınlarında biçimlendirebileceğinizi biliyorsunuz. Bu şekilde yorumlarınız bağırmaktan çıkmayacak. Kodu seçin (farenizi sürükleyin) ve ardından metin alanının üstündeki 101010 düğmesini tıklayın.
Jason Tan

2
Ahhh teşekkür ederim, bunun farkında değildim. Şimdi biliyorum :)
Zenham

1
MEVCUT, İLGİLİ için +1 - çok fazla insan bunu yapmaz.
Alnitak

1
Tanrı sevgisi için, lütfen varsayılan DAMLA kuralını SON olarak ayarlayın! Bu işlem sırasını izleyerek kendimi (ve diğer her şeyi!) Makineden çıkardım.
Bendoh

1
Korkunç cevap. OP, mevcut tüm bağlantıların kesilmesi hakkında hiçbir şey söylemez. Şimdi kilitliyim çünkü en iyi cevabın mantıklı olduğunu düşündüm.
omikes

14
iptables -I INPUT -s <allowed_ip> -j ACCEPT #(repeat this line as needed)
iptables -P INPUT DROP

Bu, sisteminizi izin verilmeyen bilgisayarlar için var olmayan bir sisteme dönüştürecektir.


7

Tüm alt ağlar yerine rasgele aralıklara izin vermek istiyorsanız, 'iprange' iptables modülünü kullanabilirsiniz:

iptables -P INPUT DROP

iptables -A INPUT -m iprange --src-range 192.168.1.30-50 -j ACCEPT

örneğin, adresi 192.168.1.30 ile 192.168.1.50 arasında olan tüm makinelerden gelen trafiğe izin verir.

Aynı IP aralığına gelen ve giden trafiğe izin vermek istiyorsanız, bu IP'lere izin veren ve tüm giriş ve çıkış hedefini hedefleyen belirli bir zincir oluşturmanızı öneririm:

- everithing'i bırakmak için varsayılan politikaları tanımlayın:

iptables -P INPUT DROP

iptables -P OUTPUT DROP

- yeni zinciri oluşturun:

iptables -N allowed_ips

- kaynak izin verilen aralığın bir parçasıysa, kabul edin

iptables -A allowed_ips -m iprange --src-range 192.168.1.30-50 -j ACCEPT

- değilse, işlemeye devam etmek için arayan zincirine dönün

iptables -A allowed_ips -j RETURN

- makineye giren ve çıkan tüm trafiği yeni zincirimizden geçirin

iptables -A INPUT -j allowed_ips

iptables -A OUTPUT -j allowed_ips

ve bu kadar! elbette, lo arayüzünden / lo arayüzüne giden tüm trafiğe izin veren gibi kurallara ihtiyacınız olabilir.



0

Geçtiğimiz yıl için de kullandığım fermi de kullanabilirsiniz ve koşullu güvenlik duvarı kuralları gibi durumlarda bana çok yardımcı oldu.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.