如何暫時禁用iptables防火墻
了解如何在 Linux 中暫時禁用 iptables 防火墻來進行故障排除。還要學習如何保存策略以及如何在啟用防火墻時恢復它們。
有時你需要關閉 iptables 防火墻來做一些連接故障排除,然后你需要重新打開它。在執(zhí)行此操作時,你還需要保存所有防火墻策略。在本文中,我們將引導你了解如何保存防火墻策略以及如何禁用/啟用 iptables 防火墻。有關 iptables 防火墻和策略的更多詳細信息請閱讀我們的文章。
保存 iptables 策略
臨時禁用 iptables 防火墻的***步是保存現有的防火墻規(guī)則/策略。iptables-save
命令列出你可以保存到服務器中的所有現有策略。
root@kerneltalks # # iptables-save
# Generated by iptables-save v1.4.21 on Tue Jun 19 09:54:36 2018
*nat
:PREROUTING ACCEPT [1:52]
:INPUT ACCEPT [1:52]
:OUTPUT ACCEPT [15:1140]
:POSTROUTING ACCEPT [15:1140]
:DOCKER - [0:0]
---- output trucated----
root@kerneltalks # iptables-save > /root/firewall_rules.backup
因此,iptables-save 是可以用來備份 iptables 策略的命令。
停止/禁用 iptables 防火墻
對于較老的 Linux 內核,你可以選擇使用 service iptables stop
停止 iptables 服務,但是如果你在用新內核,則只需清除所有策略并允許所有流量通過防火墻。這和你停止防火墻效果一樣。
使用下面的命令列表來做到這一點。
root@kerneltalks # iptables -F
root@kerneltalks # iptables -X
root@kerneltalks # iptables -P INPUT ACCEPT
root@kerneltalks # iptables -P OUTPUT ACCEPT
root@kerneltalks # iptables -P FORWARD ACCEPT
這里 –
-F
:刪除所有策略鏈-X
:刪除用戶定義的鏈-P INPUT/OUTPUT/FORWARD
:接受指定的流量
完成后,檢查當前的防火墻策略。它應該看起來像下面這樣接受所有流量(和禁用/停止防火墻一樣)
# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
恢復防火墻策略
故障排除后,你想要重新打開 iptables 的所有配置。你需要先從我們在***步中執(zhí)行的備份中恢復策略。
root@kerneltalks # iptables-restore </root/firewall_rules.backup
啟動 iptables 防火墻
然后啟動 iptables 服務,以防止你在上一步中使用 service iptables start
停止了它。如果你已經停止服務,那么只有恢復策略才能有用。檢查所有策略是否恢復到 iptables 配置中:
# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy DROP)
target prot opt source destination
DOCKER-USER all -- anywhere anywhere
DOCKER-ISOLATION-STAGE-1 all -- anywhere anywhere
-----output truncated-----
就是這些了!你已成功禁用并啟用了防火墻,而不會丟失你的策略規(guī)則。