资源说明:在CentOS 7中,FirewallD是默认的防火墙管理系统,它提供了一种动态管理防火墙规则的方法。本文将详细介绍如何使用FirewallD命令行工具进行配置和管理。
确保你的系统已经安装了FirewallD。如果没有,可以通过`yum install firewalld`命令来安装。安装完成后,你可以通过`systemctl start firewalld.service`来启动防火墙服务,或者使用`systemctl enable firewalld.service`使其在系统启动时自动启动。若需关闭FirewallD,执行`systemctl stop firewalld.service`,取消开机启动则使用`systemctl disable firewalld.service`。你可以用`systemctl status firewalld.service`检查防火墙的状态,如果显示"active (running)",则表示FirewallD正在运行。
FirewallD的配置和管理主要通过`firewall-cmd`命令进行。要查看防火墙当前的状态,输入`firewall-cmd --state`,如果返回"running",则说明防火墙处于活动状态。你可以用`firewall-cmd --get-active-zones`来获取当前活动的区域,这些区域定义了不同的安全策略。
获取FirewallD支持的所有服务,可以使用`firewall-cmd --get-services`,这些服务包括HTTP、HTTPS、SSH等常见协议。如果你想知道哪些服务是永久性开启的,即即使在系统重启后仍然启用,可以运行`firewall-cmd --get-services --permanent`。
在某些情况下,你可能需要启用或禁用应急模式,这会导致所有网络连接被阻断。在FirewallD的早期版本(0.3.0之前),应急模式可以通过`firewall-cmd --panic-on`启用,而`firewall-cmd --panic-off`用于关闭应急模式。不过,这些选项在较新版本中可能已不再适用,具体操作应参考最新的FirewallD文档。
在FirewallD中添加、删除或查询特定端口或服务的开放状态也很常见。例如,要允许SSH服务,可以使用`firewall-cmd --permanent --add-service=ssh`(添加到永久规则),然后使用`firewall-cmd --reload`使改动生效。如果你想移除该服务,用`firewall-cmd --permanent --remove-service=ssh`,同样记得`--reload`。
对于自定义端口,如添加TCP的8080端口,可以使用`firewall-cmd --permanent --add-port=8080/tcp`,删除则用`firewall-cmd --permanent --remove-port=8080/tcp`。同样,别忘了`firewall-cmd --reload`以应用更改。
此外,FirewallD还允许你定义和管理区域。例如,你可以创建一个新的区域,如`firewall-cmd --permanent --new-zone=my-zone`,然后将某个接口分配给这个区域,如`firewall-cmd --permanent --zone=my-zone --add-source=192.168.1.0/24`。这会将192.168.1.0/24网段的流量分配到my-zone区域。
CentOS 7中的FirewallD提供了强大的防火墙管理功能,通过其命令行工具`firewall-cmd`,我们可以方便地控制网络服务、端口和区域,从而更好地保护系统和网络资源。了解并熟练掌握这些命令,对于管理和维护CentOS 7系统的网络安全至关重要。
本源码包内暂不包含可直接显示的源代码文件,请下载源码包。