在 Ubuntu 系統中,iptables
和 UFW
(Uncomplicated Firewall)可以協同工作,但通常情況下,建議只使用其中一個工具來管理防火墻規則,以避免沖突和混淆。UFW
是一個基于 iptables
的用戶友好型前端,它簡化了規則的配置和管理。
如果你已經安裝了 UFW
,通常不需要直接使用 iptables
,因為 UFW
會自動處理 iptables
規則。然而,如果你需要更細粒度的控制或需要直接編輯 iptables
規則,你可以這樣做。
以下是一些基本的步驟,說明如何在安裝了 UFW
的情況下使用 iptables
:
查看 UFW 狀態:
sudo ufw status
允許或拒絕流量:
使用 UFW
命令來允許或拒絕流量,而不是直接使用 iptables
。
sudo ufw allow 22/tcp
sudo ufw deny 80/tcp
查看 iptables 規則:
如果你需要查看當前的 iptables
規則,可以使用以下命令:
sudo iptables -L
sudo iptables -t nat -L
添加自定義 iptables 規則:
如果你需要添加自定義的 iptables
規則,可以在 UFW
啟用之前這樣做,或者在 UFW
禁用時這樣做。
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
保存 iptables 規則:
在某些版本的 Ubuntu 中,iptables
規則在重啟后不會自動保存。你可以使用 iptables-persistent
包來保存規則。
sudo apt-get install iptables-persistent
sudo netfilter-persistent save
sudo netfilter-persistent reload
禁用 UFW:
如果你需要完全控制 iptables
并且不再需要 UFW
,可以禁用 UFW
。
sudo ufw disable
重新啟用 UFW:
如果你之前禁用了 UFW
并且想要重新啟用它,可以使用以下命令:
sudo ufw enable
請記住,直接操作 iptables
可能會導致復雜的規則集和潛在的安全問題,特別是如果你不熟悉 iptables
的工作原理。因此,除非有充分的理由,否則建議使用 UFW
來管理防火墻規則。