在Debian系统中,可通过ufw或iptables工具配置防火墙规则,以下是具体方法:
sudo apt update
sudo apt install ufw
sudo ufw enable # 启用防火墙,默认拒绝入站、允许出站
sudo ufw allow 22/tcp # 允许SSH
sudo ufw allow 80/tcp # 允许HTTP
sudo ufw allow 443/tcp # 允许HTTPS
sudo ufw allow from 192.168.1.100 to any port 22 # 仅允许该IP访问SSH
sudo ufw deny 23/tcp # 拒绝FTP端口
sudo ufw deny from 10.0.0.1 # 拒绝该IP的所有访问
sudo ufw status # 简略状态
sudo ufw status verbose # 详细规则(含编号,方便删除)
sudo ufw delete allow 22/tcp # 按规则内容删除
sudo ufw delete <规则编号> # 按编号删除(需先通过`status verbose`查看编号)
sudo ufw default deny incoming # 拒绝所有入站(仅允许显式放行的规则)
sudo ufw default allow outgoing # 允许所有出站(默认已开启)
sudo ufw logging on
sudo apt install iptables
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j DROP
sudo iptables -A INPUT -p tcp --dport 22 -m connlimit --connlimit-above 5 -j DROP
sudo iptables-save > /etc/iptables/rules.v4 # 保存规则
sudo sh -c "iptables-restore < /etc/iptables/rules.v4" # 恢复规则
创建脚本 /etc/network/if-pre-up.d/iptables
:
#!/bin/sh
/sbin/iptables-restore < /etc/iptables/rules.v4
赋予执行权限:
sudo chmod +x /etc/network/if-pre-up.d/iptables
cp /etc/iptables/rules.v4 /etc/iptables/rules.v4.bak
)。/var/log/syslog
或journalctl
监控防火墙活动。参考来源: