Debian防火墙规则添加指南(iptables与ufw)
Debian系统中,防火墙规则主要通过iptables(底层工具)或ufw(用户友好封装)配置。以下是两种工具的具体操作步骤及注意事项:
iptables是Debian默认的防火墙工具,需通过命令行直接操作,适合需要精细控制的场景。
sudo apt update && sudo apt install iptables。sudo iptables -L -n -v(-L列出规则,-n以数字显示地址/端口,-v显示详细信息)。sudo iptables -P INPUT DROP    # 拒绝所有入站
sudo iptables -P FORWARD DROP  # 拒绝所有转发
sudo iptables -P OUTPUT ACCEPT # 允许所有出站
192.168.1.100访问SSH(端口22):sudo iptables -A INPUT -s 192.168.1.100 -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
192.168.1.101的所有入站流量:sudo iptables -A INPUT -s 192.168.1.101 -j DROP
-m conntrack模块):sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables规则默认重启后失效,需通过iptables-persistent保存:
sudo apt install iptables-persistent  # 安装时选择“是”保存当前规则
sudo netfilter-persistent save        # 手动保存规则
sudo netfilter-persistent reload      # 重新加载规则
也可手动备份规则到/etc/iptables/rules.v4:
sudo iptables-save > /etc/iptables/rules.v4
ufw(Uncomplicated Firewall)是基于iptables的前端工具,命令更简洁,适合新手或快速配置。
sudo apt update && sudo apt install ufw。sudo ufw enable(系统会提示确认,输入y)。sudo ufw status(显示当前规则);sudo ufw status verbose(显示详细信息,包括默认策略)。sudo ufw allow ssh(或sudo ufw allow 22/tcp)。sudo ufw allow 80/tcp(HTTP)、sudo ufw allow 443/tcp(HTTPS)。192.168.1.100访问80端口:sudo ufw allow from 192.168.1.100 to any port 80
sudo ufw allow 2290:2300/tcp
sudo ufw limit 22/tcp
sudo ufw delete allow 80/tcp。sudo ufw reset(清除所有自定义规则,恢复默认策略)。/etc/ufw/user.rules),无需手动操作。sudo iptables-save > ~/iptables-backup.txt或sudo ufw export > ~/ufw-backup.rules),避免配置错误导致无法访问。INPUT DROP(拒绝所有入站),ufw默认已开启此策略,确保未明确允许的流量被拦截。iptables和netfilter-persistent,安装ufw时会自动安装这些组件。通过以上步骤,可根据需求选择工具添加防火墙规则,保护Debian系统安全。