云服务器
香港服务器centos 6/7 开放端口和关闭端口问题
2025-07-20 09:52  点击:0
在CentOS中使用iptables或firewalld管理端口

CentOS 7及更高版本的操作系统使用firewalld作为默认防火墙,而CentOS 7以下的系统版本则使用iptables。下面分别介绍如何在CentOS 7及以上版本和CentOS 7以下的版本中管理端口。

对于CentOS 7及更高版本

使用firewalld管理端口

1. 检查已打开的端口
sh
firewall-cmd --list-ports


2. 添加端口(以80端口为例)
sh
firewall-cmd --zone=public --add-port=80/tcp --permanent

--permanent 参数表示该规则将在系统重启后仍然生效。

3. 重新加载firewalld配置
sh
firewall-cmd --reload


4. 检查新增的端口
sh
firewall-cmd --zone=public --query-port=80/tcp


5. 关闭端口(以80端口为例)
sh
firewall-cmd --zone=public --remove-port=80/tcp --permanent


6. 重新启动firewalld
sh
firewall-cmd --reload


或者,您可以直接关闭firewalld并安装iptables

1. 关闭firewalld并禁止其启动
sh
systemctl stop firewalld.service
systemctl disable firewalld.service


2. 安装iptables服务
sh
yum -y install iptables-services


3. 使用iptables管理端口,操作方法与CentOS 7以下版本相同。

对于CentOS 7以下版本

使用iptables管理端口

1. 打开端口(以80端口为例)
sh
iptables -I INPUT -p tcp --dport 80 -j ACCEPT


2. 关闭端口(以80端口为例)
sh
iptables -I INPUT -p tcp --dport 80 -j DROP


3. 保存更改
sh
/etc/rc.d/init.d/iptables save


4. 查看打开的端口
sh
iptables -L


注意在CentOS 7及更高版本中,使用firewalld比使用iptables更为推荐,因为firewalld提供了更好的用户界面和更丰富的功能。然而,对于需要兼容旧版系统的脚本或者习惯于iptables的用户,上述的iptables命令仍然适用。