CentOS 7中firewalld的全攻略:开启/关闭与端口管理

需积分: 43 3 下载量 102 浏览量 更新于2024-09-10 收藏 2KB TXT 举报
"在 CentOS 7 操作系统中,管理防火墙功能主要依赖于firewalld服务,它是基于模块化策略的动态防火墙,旨在提供更加灵活和易于管理的网络规则。本文将详细介绍如何在CentOS 7中使用systemctl命令来控制firewalld的开启、关闭、重启以及状态查询。 首先,启动firewalld可以通过以下命令实现: 1. `systemctl start firewalld`:这会启动firewalld服务,使其开始监听并执行防火墙规则。 2. `systemctl status firewalld`:用于检查firewalld服务的状态,确认其是否正在运行。 若需暂时禁用firewalld(不推荐长期禁用,因为安全是重要的): - `systemctl disable firewalld`:此命令会设置firewalld在下次系统启动时不自动启动。 - `systemctl stop firewalld`:停止当前运行的firewalld服务。 恢复firewalld或重启以应用新的配置: - `systemctl restart firewalld.service`:重启firewalld服务,确保所有配置更新生效。 - `systemctl enable firewalld.service`:重新设置firewalld为开机启动。 利用systemctl的is-enabled选项可以查看firewalld是否已经启用: - `systemctl is-enabled firewalld.service`:检查firewalld是否会在系统启动时自动启动。 查看已安装的firewalld单元文件和服务状态: - `systemctl list-unit-files | grep enabled`:列出所有启用的firewalld相关的服务单元。 firewalld提供了一组命令行工具,如`firewall-cmd`,用于管理和查询防火墙规则。例如: - `firewall-cmd --version`:显示firewalld的版本信息。 - `firewall-cmd --help`:获取firewalld命令的帮助文档。 - `firewall-cmd --state`:查看firewalld的整体状态,包括开放的区域和规则。 通过`firewall-cmd --zone=public --list-ports`,可以列出指定区域(如public)下的开放端口。对端口进行操作,如添加或删除,可以这样进行: - `firewall-cmd --zone=public --add-port=80/tcp --permanent`:永久性添加80端口到公共区域。 - `firewall-cmd --zone=public --remove-port=80/tcp --permanent`:移除80端口,同样为永久性操作。 `firewall-cmd --reload`用于刷新防火墙规则,使其立即应用新的配置。另外,还可以通过以下命令检查特定端口是否开放: - `firewall-cmd --zone=public --query-port=80/tcp`:查询80端口的状态。 如果需要设置防火墙在遇到紧急情况时进入应急模式(panic mode),可以使用: - `firewall-cmd --panic-on`:开启应急模式。 - `firewall-cmd --panic-off`:关闭应急模式。 最后,通过`firewall-cmd --query-panic`检查应急模式是否开启,以及通过`firewall-cmd --zone=public --add-port=...`或`firewall-cmd --remove-port=...`等命令管理具体的防火墙规则。 CentOS 7中的firewalld防火墙管理是一个关键部分,了解如何使用systemctl和firewall-cmd工具能帮助你有效地监控和调整系统的网络策略,确保系统的安全性和可管理性。"