CentOS防火墙版本升级指南
cp /etc/sysconfig/iptables /etc/sysconfig/iptables.bakcp -r /etc/firewalld /etc/firewalld.bakiptables --version(显示内核模块及用户空间工具版本)firewall-cmd --version(显示firewalld主版本号)cat /etc/centos-release。CentOS 6及更早版本默认使用iptables(集成于内核),升级需同步更新内核与网络工具包:
sudo yum update kernel* network-scripts iptables*
sudo reboot
iptables --version,确认版本号较升级前提升。CentOS 7及以上默认使用firewalld(动态防火墙管理工具),升级需通过dnf/yum更新firewalld及相关依赖:
# CentOS 7
sudo yum update firewalld
# CentOS 8及以上
sudo dnf update firewalld
sudo systemctl restart firewalld
firewall-cmd --version # 查看版本号
systemctl status firewalld # 确认服务运行正常
iptables-translate工具(firewalld自带)辅助转换:iptables-translate -A INPUT -p tcp --dport 22 -j ACCEPT
转换后的规则需手动添加至firewalld(如firewall-cmd --permanent --add-service=ssh)。firewall-cmd --reload(无需重启服务)service iptables restart(CentOS 6)或systemctl restart iptables(CentOS 7)telnet <服务器IP> 22 # 测试SSH端口
curl -I http://<服务器IP> # 测试HTTP端口
/var/log/messages或journalctl -u firewalld),确认无大量拒绝连接记录,确保规则生效。uname -r查看内核版本)。--permanent选项保存永久规则(如firewall-cmd --permanent --add-port=80/tcp),修改后需reload生效;iptables需通过/etc/sysconfig/iptables文件保存规则(service iptables save)。