Tanulja meg, hogyan lehet ideiglenesen letiltani az iptables tűzfalat Linuxban hibaelhárítás céljából. Emellett megtudhatja, hogyan mentheti el a házirendeket, és hogyan állíthatja vissza azokat, amikor újra engedélyezi a tűzfalat.
Néha felmerül az igény, hogy kikapcsolja az iptables tűzfalat valamilyen kapcsolati hibaelhárításhoz, majd vissza kell kapcsolnia. Eközben az összes tűzfal házirendjét is el akarja menteni. Ebben a cikkben bemutatjuk, hogyan mentheti el a tűzfal-házirendeket, és hogyan tilthatja/engedélyezheti az iptables tűzfalat. További részletekért az iptables tűzfalról és a házirendekről olvassa el a róla szóló cikkünket.
Iptables házirendek mentése
Az iptables tűzfal ideiglenes kikapcsolása során az első lépés a meglévő tűzfalszabályok/házirendek mentése. A iptables-save
parancs felsorolja az összes létező házirendjét, amelyet egy fájlba menthet a szerverén.
root@kerneltalks # iptables-save# Generated by iptables-save v1.4.21 on Tue Jun 19 09:54:36 2018*nat:PREROUTING ACCEPT :INPUT ACCEPT :OUTPUT ACCEPT :POSTROUTING ACCEPT :DOCKER - ---- output trucated----root@kerneltalks # iptables-save > /root/firewall_rules.backup
Az iptables-save tehát az a parancs, amellyel az iptables házirendekről biztonsági mentést készíthet.
Stop/disable iptables firewall
Régebbi Linux kernelek esetén lehetőséged van az iptables szolgáltatás leállítására a service iptables stop
paranccsal, de ha az új kernelen vagy, akkor csak törölnöd kell az összes házirendet és minden forgalmat átengedni a tűzfalon. Ez olyan jó, mintha leállítanád a tűzfalat.
Az alábbi parancslistát használd ehhez.
root@kerneltalks # iptables -Froot@kerneltalks # iptables -Xroot@kerneltalks # iptables -P INPUT ACCEPTroot@kerneltalks # iptables -P OUTPUT ACCEPTroot@kerneltalks # iptables -P FORWARD ACCEPT
Hol –
- -F: Flush all policy chains
- -X: Felhasználó által definiált láncok törlése
- -P INPUT/OUTPUT/FORWARD: Meghatározott forgalom elfogadása
Amikor ez megtörtént, ellenőrizze az aktuális tűzfal házirendeket. Úgy kell kinéznie, mint az alábbiakban, ami azt jelenti, hogy mindent elfogad (jó, ha a tűzfalad le van tiltva/leállítva)
# iptables -LChain INPUT (policy ACCEPT)target prot opt source destinationChain FORWARD (policy ACCEPT)target prot opt source destinationChain OUTPUT (policy ACCEPT)target prot opt source destination
Tűzfalpolitikák visszaállítása
Ha végeztél a hibaelhárítással, és vissza akarod kapcsolni az iptables-t az összes beállításával együtt. Először vissza kell állítanunk a házirendeket az első lépésben készített biztonsági mentésből.
root@kerneltalks # iptables-restore </root/firewall_rules.backup
Újraindítani az iptables tűzfalat
Az iptables szolgáltatást pedig abban az esetben, ha az előző lépésben leállítottuk az service iptables start
segítségével indítsuk el. Ha nem állítottad le a szolgáltatást, akkor csak a házirendek visszaállítása lesz elég. Ellenőrizze, hogy minden házirend visszakerült-e az iptables tűzfal konfigurációiba :
root@kerneltalks # iptables -LChain INPUT (policy ACCEPT)target prot opt source destinationChain FORWARD (policy DROP)target prot opt source destinationDOCKER-USER all -- anywhere anywhereDOCKER-ISOLATION-STAGE-1 all -- anywhere anywhere-----output truncated-----
Ez az! Sikeresen letiltotta és engedélyezte a tűzfalat anélkül, hogy elveszítette volna a házirend szabályait.
Az iptables tűzfal végleges kikapcsolása
Az iptables végleges kikapcsolásához kövesse az alábbi folyamatot –
- Stop iptables service
- Disable iptables service
- Flush all rules
- Save configuration
Ez az alábbi parancsok használatával érhető el.
root@kerneltalks # systemctl stop iptablesroot@kerneltalks # systemctl disable iptablesroot@kerneltalks # systemctl status iptablesroot@kerneltalks # iptables --flushroot@kerneltalks # service iptables saveroot@kerneltalks # cat /etc/sysconfig/iptables