在CentOS系统中,防火墙的设置是保障系统安全的重要环节,CentOS 7及更高版本默认使用firewalld作为防火墙管理工具,而iptables则作为底层实现,以下是关于CentOS防火墙设置的详细指南:
基本操作
1、启动和停止防火墙
启动:使用命令systemctl start firewalld
可以启动firewalld服务。
停止:使用命令systemctl stop firewalld
可以停止firewalld服务。
2、查看状态
查看防火墙状态:通过运行systemctl status firewalld
或firewallcmd state
可以查看当前防火墙的状态。
3、设置开机自启
启用:使用命令systemctl enable firewalld
可以在系统启动时自动启动firewalld。
禁用:使用命令systemctl disable firewalld
可以禁止系统启动时自动启动firewalld。
配置防火墙规则
1、开放端口
永久开放端口:例如要永久开放TCP协议的80端口,可以使用命令firewallcmd zone=public addport=80/tcp permanent
。
重新加载配置:添加完规则后,需要运行firewallcmd reload
使配置生效。
2、关闭端口
永久关闭端口:例如要永久关闭TCP协议的80端口,可以使用命令firewallcmd zone=public removeport=80/tcp permanent
。
3、查看开放端口
使用命令firewallcmd listports
可以查看当前所有开放的端口。
高级配置
1、设置访问白名单
允许特定IP访问端口:例如只允许特定IP段访问服务器的22端口,可以使用命令firewallcmd permanent addrichrule='rule family="ipv4" source address="指定IP或IP段" port protocol="tcp" port="22" accept'
。
允许特定IP访问所有端口:可以使用命令firewallcmd permanent zone=public addrichrule='rule family="ipv4" source address="指定IP或IP段" accept'
。
2、服务访问配置
查询服务:使用命令firewallcmd queryservice ftp
可以查询ftp服务是否被允许。
列出放行的服务:使用命令firewallcmd getservices
可以列出所有被放行的服务。
FAQs
1、如何检查某个端口是否已经开放?
可以通过命令firewallcmd listports
查看当前开放的端口,或者使用nmap p 端口号 localhost
来检查特定端口的状态。
2、如何在不重启服务的情况下使新加的规则立即生效?
使用命令firewallcmd reload
可以重新加载防火墙配置,使新加的规则立即生效。
通过以上步骤,您可以有效地管理和配置CentOS系统的防火墙,确保网络环境的安全性和稳定性。