在 Ubuntu 系统中,iptables 是一个用于配置内核防火墙(netfilter)规则的命令行工具。以下是如何使用 iptables 添加自定义规则的步骤:
首先,你可以查看当前的 iptables 规则,以确保你不会覆盖现有的重要规则。
sudo iptables -L -n -v
你可以使用 iptables 命令添加各种类型的规则。以下是一些常见的规则类型:
sudo iptables -A INPUT -s 192.168.1.100 -j ACCEPT
sudo iptables -A INPUT -s 192.168.1.100 -j DROP
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j DROP
sudo iptables -A INPUT -p udp -j ACCEPT
sudo iptables -P INPUT DROP
在 Ubuntu 中,iptables 规则在重启后不会自动保存。你可以使用 iptables-persistent 工具来保存规则。
iptables-persistentsudo apt-get update
sudo apt-get install iptables-persistent
在安装过程中,系统会提示你是否保存当前的 iptables 规则。选择“是”以保存规则。
如果你已经安装了 iptables-persistent,可以使用以下命令手动保存规则:
sudo netfilter-persistent save
你可以使用以下命令查看保存的 iptables 规则:
sudo iptables -L -n -v
如果你需要删除某个规则,可以使用 -D 选项。例如,删除允许特定 IP 地址访问的规则:
sudo iptables -D INPUT -s 192.168.1.100 -j ACCEPT
如果你需要清空所有 iptables 规则,可以使用以下命令:
sudo iptables -F
请注意,这将删除所有规则,包括默认策略。在执行此操作之前,请确保你了解其影响。
通过以上步骤,你可以在 Ubuntu 系统中使用 iptables 添加自定义规则,并确保这些规则在系统重启后仍然有效。