Daha Linux'ta bir güvenlik duvarı veya güvenlik duvarı yapılandırın, iptables kullanabiliriz, birçok kullanıcı tarafından unutulmuş görünen güçlü bir araç. Bağlantı düzeyinde trafiği filtrelemek için ebtables ve arptables veya uygulama düzeyinde Squid gibi başka yöntemler olsa da, iptables çoğu durumda çok yararlı olabilir ve sistemimizde ağın trafik ve taşıma seviyesinde iyi bir güvenlik uygular.
Linux çekirdeği, iptables'ı uygular. paketleri filtrelemeyle ilgilenir ve bu makalede size basit bir şekilde yapılandırmayı öğretiyoruz. Basitçe ifade etmek gerekirse, iptables, ekibinizi potansiyel tehditlerden izole ederek hangi bilgilerin girip giremeyeceğini belirler. Firehol, Firestarter vb. Gibi başka projeler olmasına rağmen, bu güvenlik duvarı programlarının çoğu iptables kullanıyor ...
Eh, Hadi işe koyulalım, örneklerle her şeyi daha iyi anlayacaksınız (bu durumlarda ayrıcalıklara sahip olmak gerekir, bu nedenle komutun önünde sudo kullanın veya kök olun):
İptables'ı kullanmanın genel yolu bir filtre politikası oluşturmak için:
IPTABLES -ARGUMENTS I / O EYLEM
ARGUMENT nerede kullanacağımız argüman, normalde -P varsayılan ilkeyi oluşturmak için, ancak yapılandırdığımız ilkeleri görmek için -L, oluşturulan bir ilkeyi silmek için -F, bayt ve paket sayaçlarını sıfırlamak için -Z, vb. Diğer bir seçenek, bir ilke eklemek için (varsayılan olarak değil) -A, belirli bir konuma bir kural eklemek için -I ve belirli bir kuralı silmek için -D'dir. Ayrıca -p protokollerini, –spor kaynak portunu, –hedef port için portu, -i gelen arayüzü, -o giden arayüzü, –s kaynak IP adresini ve -d hedef IP adresini işaret eden başka argümanlar da olacaktır.
Ayrıca, I / O şunları temsil eder: siyaset INPUT girişine, OUTPUT çıkışına uygulanır veya bir FORWARD trafik yönlendirmesidir (PREROUTING, POSTROUTING gibi başkaları da vardır, ancak bunları kullanmayacağız). Son olarak, EYLEM olarak adlandırdığım şey, kabul edersek KABUL, reddedersek REDDET veya ortadan kaldırırsak DROP değerini alabilir. DROP ve REJECT arasındaki fark, bir paket REJECT ile reddedildiğinde, onu oluşturan makinenin reddedildiğini bilecek, ancak DROP ile sessizce hareket edecek ve saldırgan veya kaynak ne olduğunu bilmeyecek ve olmayacaktır. bir güvenlik duvarımız olup olmadığını veya bağlantının başarısız olup olmadığını öğrenin. Ayrıca, sistem günlüğünün bir takibini gönderen LOG gibi başkaları da var ...
Kuralları değiştirmek için, iptables dosyasını tercih ettiğimiz metin düzenleyicimiz nano, gedit, ... ile düzenleyebilir veya kurallara sahip komut dosyaları oluşturabiliriz (bunları geçersiz kılmak istiyorsanız, satırın önüne bir # koyarak yapabilirsiniz, böylece yorum olarak yok sayılır) burada açıklayacağımız gibi komutlarla konsol aracılığıyla. Debian ve türevlerinde iptables-save ve iptables-restore araçlarını da kullanabilirsiniz ...
En uç politika, her şeyi engellemektir, kesinlikle tüm trafik, ancak bu bizi izole bırakacak:
iptables -P INPUT DROP
Hepsini kabul etmek:
iptables -P INPUT ACCEPT
Eğer istersek ekibimizden gelen tüm giden trafik kabul edilir:
iptables -P OUTPUT ACEPT
La başka bir radikal eylem, tüm politikaları silmek olacaktır. iptables'tan:
iptables -F
Daha somut kurallara gidelimBir web sunucunuz olduğunu ve bu nedenle 80 numaralı bağlantı noktasından geçen trafiğe izin verilmesi gerektiğini düşünün:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
Ve önceki kurala ek olarak, iptables içeren bir ekip istiyorsak yalnızca alt ağımızdaki bilgisayarlar tarafından görülebilir ve bu, harici bir ağ tarafından fark edilmez:
iptables -A INPUT -p tcp -s 192.168.30.0/24 --dport 80 -j ACCEPT
Önceki satırda, iptables'a söylediğimiz şey bir -A kuralı eklemektir, böylece GİRİŞ girişleri ve 80 numaralı bağlantı noktası üzerinden TCP protokolü kabul edilir. Şimdi yapmamı istediğini hayal et web taraması reddedildi iptables çalıştıran makineden geçen yerel makineler için:
iptables -t filter -A FORWARD -i eth1 -o eth0 -p tcp --dport 80 DROP
Kullanımın basit olduğunu düşünüyorum, iptables'ın her parametresinin ne için olduğunu hesaba katarak basit kurallar ekleyebiliriz. Hayal ettiğimiz tüm kombinasyonları ve kuralları yapabilirsiniz ... Kendimi daha fazla genişletmemek için bir şey daha ekleyin, yani makine yeniden başlatılırsa oluşturulan politikalar silinecektir. Tablolar sıfırlanır ve eskisi gibi kalacaktır, bu nedenle, kuralları iyi tanımladıktan sonra onları kalıcı yapmak istiyorsan, bunları /etc/rc.local adresinden başlatmalısınız veya bir Debianınız veya türevleriniz varsa, bize verilen araçları kullanmalısınız (iptables-save, iptables-restore ve iptables-apply).
Bu, IPTABLES'ta gördüğüm ilk makale, yoğun-orta düzeyde bilgi gerektirse de, DOĞRUDAN TAHILA GİTMEKTEDİR.
Herkese, çok iyi bir şekilde özetlendiği ve açıklandığı için bir "hızlı başvuru kılavuzu" olarak kullanmasını tavsiye ederim. 8-)
Gelecekteki bir makalede, çoğu linux dağıtımında systemd'ye yapılan değişikliğin genel olarak linux güvenliğini bir şekilde etkileyip etkilemediği ve bu değişikliğin geleceğin ve linux dağıtımlarının daha iyisi veya kötüsü için olup olmadığı hakkında konuşmanızı istiyorum. Ayrıca devuan'ın geleceği hakkında nelerin bilindiğini bilmek isterim (sistemd'siz debian).
Çok teşekkür ederim çok güzel yazılar yazıyorsun.
Mangle masasını açıklayan bir makale yazabilir misiniz?
Yalnızca Facebook'u engelle?