Debian 防火墙配置实操指南
一 常用方案与选择
二 使用 UFW 快速配置
sudo apt update && sudo apt install ufwsudo ufw default deny incoming;sudo ufw default allow outgoingsudo ufw enable(远程操作务必先放行 SSH,见下条)sudo ufw allow ssh(或 sudo ufw allow 22/tcp,若 SSH 端口非默认请改为实际端口)sudo ufw allow 80/tcp;sudo ufw allow 443/tcpsudo ufw allow 6000:6007/tcpsudo ufw allow from 203.0.113.4;sudo ufw allow from 203.0.113.0/24 to any port 22sudo ufw allow in on eth0 to any port 3306sudo ufw status verbose;按编号删除:sudo ufw status numbered 后 sudo ufw delete <编号>sudo ufw disable;sudo ufw reset三 使用 iptables 配置
sudo iptables -L -v -nsudo iptables -P INPUT DROP;sudo iptables -P FORWARD DROP;sudo iptables -P OUTPUT ACCEPTsudo iptables -A INPUT -i lo -j ACCEPTsudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPTsudo iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPTsudo iptables-save > /etc/iptables/rules.v4sudo apt install iptables-persistent,安装时选择保存当前规则;后续可用 sudo systemctl restart netfilter-persistent 使变更生效。/etc/systemd/system/iptables-restore.service,内容:
sudo systemctl enable --now iptables-restore.servicesudo iptables -L -v -n 检查规则是否生效。四 使用 firewalld 配置
sudo apt update && sudo apt install firewalldsudo systemctl start firewalld;sudo systemctl enable firewalldsudo firewall-cmd --add-port=80/tcp --permanent;sudo firewall-cmd --add-port=443/tcp --permanentsudo firewall-cmd --add-service=ssh --permanentsudo firewall-cmd --reloadsudo firewall-cmd --query-port=8080/tcp;sudo firewall-cmd --remove-port=8080/tcp --permanent && sudo firewall-cmd --reloadsudo firewall-cmd --get-zones;sudo firewall-cmd --set-default-zone=publicsudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100/32" service name="ssh" accept'sudo firewall-cmd --runtime-to-permanent--reload;删除规则同样需要 --permanent 并重新加载。五 安全与排错要点
status verbose/--list-ports 等命令核对生效的规则集合。