Ez az útmutató megpróbálja megmagyarázni, hogyan kell az iptables-t használni a linuxon a könnyen érthető nyelveken.
tartalom[elrejt]
|
Áttekintés
Az Iptables egy szabályalapú tűzfal, amely feldolgozza az egyes szabályokat, amíg megtalálja az egyezik.
Todo: példát itt
Használat
Az iptables segédprogram általában előtelepítve van a Linux-eloszlásodon, de nem működik semmilyen szabály. Itt találja a segédprogramot a legtöbb elosztásban:
/sbin/iptables
Egyetlen IP-cím blokkolása
Az "IP" paramétert az -s paraméter segítségével blokkolhatja, a 10.10.10.10 helyett a megcélozni kívánt címmel. Ebben a példában megjegyezzük, hogy a melléklet helyett a -I paramétert (vagy a beillesztés is működik), mert meg szeretnénk győződni arról, hogy ez a szabály először megjelenik, mielőtt engedélyeznénk a szabályokat.
/sbin/iptables -I INPUT -s 10.10.10.10 -j DROP
Az összes forgalom engedélyezése IP-címről
Alternatívan engedélyezheti az összes IP-cím forgalmát ugyanazokkal a parancsokkal, mint a fentiek, de a DROP helyett az ACCEPT. Meg kell győződnie arról, hogy ez a szabály először megjelenik, mielőtt bármilyen DROP szabályt alkalmazna.
/sbin/iptables -A INPUT -s 10.10.10.10 -j ACCEPT
A port összes címének blokkolása
A portot teljesen letilthatja a hálózaton keresztül a -port kapcsolóval, és hozzáadhatja a blokkolni kívánt szolgáltatás portját. Ebben a példában blokkoljuk a mysql portot:
/sbin/iptables -A INPUT -p tcp --dport 3306 -j DROP
Egyetlen port engedélyezése egyetlen IP-ről
Az -s parancsot hozzáadhatod a -port parancshoz a szabály korlátozásához egy adott porthoz:
/sbin/iptables -A INPUT -p tcp -s 10.10.10.10 --dport 3306 -j ACCEPT
A jelenlegi szabályok megtekintése
Az aktuális szabályokat a következő paranccsal tekintheti meg:
/sbin/iptables -L
Ennek a következőhöz hasonló kimenetnek kell lennie:
Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT all -- 192.168.1.1/24 anywhere ACCEPT all -- 10.10.10.0/24 anywhere DROP tcp -- anywhere anywhere tcp dpt:ssh DROP tcp -- anywhere anywhere tcp dpt:mysql
Természetesen az aktuális kimenet egy kicsit hosszabb lesz.
A jelenlegi szabályok törlése
A flush paraméter használatával törölheti az aktuális szabályokat. Ez nagyon hasznos, ha a szabályokat helyes sorrendbe kell helyezni, vagy tesztelés közben.
/sbin/iptables --flush
Distribution-specifikus
Míg a legtöbb Linux disztribúció tartalmaz egyfajta iptables-ot, ezek közül néhány olyan csomagolást is tartalmaz, amelyek megkönnyítik a menedzsmentet. Leggyakrabban ezek a "kiegészítõk" olyan init szkriptek formájában valósulnak meg, amelyek az inicializáláskor gondoskodnak az iptables inicializálásáról, noha bizonyos eloszlások között szerepelnek a teljes terjedelmû csomagoló alkalmazások, amelyek megkísérlik a közös eset egyszerûsítését.
Gentoo
A iptables A Gentoo init scriptje számos közös forgatókönyvet képes kezelni. A kezdők számára lehetővé teszi az iptables beállítását az indításkor (általában az Ön által igényelt):
rc-update add iptables default
Az init parancsfájl segítségével könnyen be tudod tölteni és törölni a tűzfalat egy könnyen megjegyezhető parancs segítségével:
/etc/init.d/iptables start /etc/init.d/iptables stop
Az init parancsfájl kezeli az aktuális tűzfal-konfiguráció megtartásának megkezdésére / leállítására vonatkozó részleteit. Így a tűzfal mindig abban az állapotban van, ahol elhagyta. Ha manuálisan új szabályt kell mentenie, akkor az init szkript is képes kezelni ezt:
/etc/init.d/iptables save
Ezenkívül visszaállíthatja a tűzfalat az előzőleg mentett állapotba (abban az esetben, ha kísérletezett a szabályokkal, és most vissza szeretné állítani a korábbi működési konfigurációt):
/etc/init.d/iptables reload
Végül az init script az iptables-t "pánikba" állítja, ahol minden bejövő és kimenő forgalom blokkolva van. Nem tudom, miért hasznos ez a mód, de úgy tűnik, hogy minden Linux-tűzfalnak megvan.
/etc/init.d/iptables panic
Figyelem: Ne indítsa el a pánik módot, ha SSH-n keresztül csatlakozik a kiszolgálóhoz; Önakarat le kell választani! Az egyetlen idő, amikor az iptables-et pánik módba kell behelyezned, miközben te vagyfizikailag a számítógép előtt.