如果你需要在CentOS中使用firewalld
防火墙服务同时放行HTTP服务的默认端口80以及另一个端口8888,可以按照以下步骤进行:
防火墙启停与开机自启动
1. 首先确认`firewalld`服务是否正在运行。可以通过运行以下命令来检查:
systemctl status firewalld
2. 如果防火墙没有启动,可以使用以下命令启动它:
systemctl start firewalld
3. 要让防火墙在每次系统启动时自动启动,可以执行:
systemctl enable firewalld
放行88,8888
4. 现在,你可以通过运行以下命令来永久性地打开HTTP服务的端口80和8888:
firewall-cmd --permanent --add-port=88/tcp
firewall-cmd --permanent --add-port=8888/tcp
5. 接着,要使新的配置生效,需要重新加载防火墙规则:
firewall-cmd --reload
查看放行列表
6. 最后,你可以通过运行以下命令来验证端口80和8888是否已成功添加到防火墙允许列表中:
firewall-cmd --list-all
在这个输出中,你应该能看到80/tcp
和8888/tcp
都已经添加到了公开区域(public zone),这意味着来自任何地方的这些端口的流量都将被接受。
注意:在某些情况下,你可能需要将端口添加到特定的区域(如工作区、家庭区等)。在这种情况下,你可以在上述命令中指定相应的区域名称,例如--zone=work
或--zone=home
。
放行DNS服务
[root@dnsserver ~]# firewall-cmd --list-services
dhcpv6-client ssh
[root@dnsserver ~]# firewall-cmd --add-service=dns --permanent
success
[root@dnsserver ~]# firewall-cmd --reload
success
[root@dnsserver ~]# firewall-cmd --list-services
dhcpv6-client dns ssh
关闭端口88,8888
[root@webserver ~]# firewall-cmd --permanent --remove-port=88/tcp
success
[root@webserver ~]# firewall-cmd --permanent --remove-port=8888/tcp
success
[root@webserver ~]# firewall-cmd --permanent --add-port=80/tcp
success
[root@webserver ~]# firewall-cmd --reload
success
[root@webserver ~]# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: ens33 ens36
sources:
services: dhcpv6-client ssh
ports: 80/tcp
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks: