2026最新版Linux系统防火墙配置教程:iptables与firewalld完整指南
Linux防火墙的作用是什么?
Linux防火墙用于控制网络流量进出系统,是服务器安全的第一道防线。它可以:
阻止非法访问服务器
保护开放端口不被扫描
控制特定IP访问权限
防止DDoS与恶意连接
提升整体系统安全性
在生产环境中,防火墙配置是必须操作。
Linux防火墙核心工具
不同发行版使用不同防火墙工具:
CentOS / RHEL:firewalld(默认)
Ubuntu / Debian:ufw 或 iptables
高级控制:iptables / nftables
一、firewalld防火墙配置(推荐)
第一步:检查firewalld状态
systemctl status firewalld
第二步:启动防火墙
systemctl start firewalld
第三步:设置开机启动
systemctl enable firewalld
第四步:查看当前防火墙规则
firewall-cmd --list-all
第五步:开放端口(关键操作)
开放HTTP端口80
firewall-cmd --permanent --add-port=80/tcp
开放HTTPS端口443
firewall-cmd --permanent --add-port=443/tcp
第六步:重新加载规则
firewall-cmd --reload
第七步:关闭端口
firewall-cmd --permanent --remove-port=80/tcp
firewall-cmd --reload
第八步:限制IP访问(安全关键)
允许指定IP访问SSH
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.10" port port=22 protocol=tcp accept'
第九步:查看已开放端口
firewall-cmd --list-ports
二、iptables防火墙配置(传统方式)
第一步:查看当前规则
iptables -L
第二步:允许SSH连接
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
第三步:允许HTTP/HTTPS
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
第四步:拒绝所有其他访问
iptables -P INPUT DROP
第五步:保存规则
service iptables save
三、UFW防火墙(Ubuntu推荐)
第一步:启用防火墙
sudo ufw enable
第二步:允许端口
sudo ufw allow 22
sudo ufw allow 80
sudo ufw allow 443
第三步:查看状态
sudo ufw status
第四步:拒绝端口
sudo ufw deny 23
四、防火墙安全优化技巧
技巧一:默认拒绝所有入站流量
firewall-cmd --set-default-zone=drop
技巧二:只开放必要端口
建议开放:
22(SSH)
80(HTTP)
443(HTTPS)
技巧三:限制SSH访问IP
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="你的IP" service name="ssh" accept'
技巧四:关闭不必要服务端口
检查开放端口:
ss -tulnp
技巧五:防止暴力破解SSH
建议:
修改默认22端口
使用密钥登录
限制登录IP
五、常见防火墙问题
1. 网站无法访问
可能原因:
80/443未开放
防火墙未重载
2. SSH连接失败
可能原因:
22端口未开放
IP被限制
3. 规则不生效
解决方法:
firewall-cmd --reload
六、防火墙最佳实践
默认拒绝所有访问
只开放必要端口
限制SSH访问来源IP
定期检查开放端口
关闭不使用服务
使用密钥登录SSH
总结
Linux防火墙配置的核心原则是:
默认拒绝,按需开放
控制端口访问范围
限制来源IP提高安全性
使用firewalld或iptables进行精细控制
定期检查与维护规则
通过规范的防火墙配置,可以有效防止网络攻击、端口扫描和非法入侵,让Linux服务器运行更加安全稳定。