在Debian系统中,iptables
是一个用于配置Linux内核防火墙(netfilter)规则的命令行工具。以下是一些基本的iptables
规则设置步骤:
首先,你可以查看当前的iptables
规则:
sudo iptables -L -v -n
-L
:列出规则。-v
:详细模式,显示更多信息。-n
:以数字形式显示地址和端口,而不是解析主机名和服务名。如果你想清空所有现有的iptables
规则,可以使用以下命令:
sudo iptables -F
-F
:清空所有链中的规则。你可以为每个链设置默认策略,例如:
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT
-P
:设置默认策略。sudo iptables -A INPUT -i lo -j ACCEPT
-A
:追加规则到链的末尾。-i lo
:指定输入接口为本地回环接口。-j ACCEPT
:接受匹配的流量。sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
-m conntrack
:使用连接跟踪模块。--ctstate ESTABLISHED,RELATED
:匹配已建立的连接和相关的连接。sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
-p tcp
:指定协议为TCP。--dport 22
:指定目标端口为22(SSH)。sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
--dport 80
:指定目标端口为80(HTTP)。--dport 443
:指定目标端口为443(HTTPS)。在Debian中,iptables
规则默认不会持久化保存。你可以使用iptables-persistent
包来保存规则:
sudo apt-get update
sudo apt-get install iptables-persistent
在安装过程中,系统会提示你是否保存当前的iptables
规则。选择“是”即可。
如果你已经保存了规则,可以使用以下命令恢复:
sudo iptables-restore < /etc/iptables/rules.v4
< /etc/iptables/rules.v4
:指定规则文件路径。iptables
规则时要小心,错误的规则可能导致系统无法访问。iptables
规则,以便在需要时恢复。通过以上步骤,你可以设置基本的iptables
规则来保护你的Debian系统。根据具体需求,你可以进一步调整和扩展这些规则。