FirewallD 防火墙使用概述( 三 )


方法二:在相应目录使用编辑软件直接编辑好 XML 文件并执行 firewall-cmd --new-service-from-file=service-name.xml,系统将自动完成同名自定服务类型的添加 。
端口作为特定系统服务的接收和区分网络流量并将其转发到系统服务的逻辑设备,系统守护进程通常侦听特定的服务端口 。防火墙在默认的服务类型配置中已经定义了相应服务需要放行的对应的端口 。当用户还需要在某个服务中放行特定的自定义端口或者端口段的时候可以通过 firewall-cmd 完成,格式如下:
firewall-cmd [--zone=zone_name] [--service=service_name] --add-port=port-number/port-type这里需要说明的是 --zone、--service 为可选参数,如果用户不添加这两个参数执行命令时相当与在默认区域中直接添加了端口,当只选取了 --zone 参数时,命令执行的结果是在指定区域直接添加端口,此时与服务状态无关 。只有在使用 --service 参数时才是在相应的服务中添加端口 。
当用户需要删除一个端口时可以使用如下命令:
firewall-cmd [--zone=zone_name] [--service=service_name] --remove-port=port-number/port-type当用户需要向不同区域添加服务时,用户可以通过如下步逐进行:
firewall-cmd --add-service=ssh --zone=drop该命令将向区域 drop 中添加 ssh 服务,其实质就是放行 ssh 服务定义中的默认 22 端口入站方向的流量及连接 。
在多网络接口主机中,可以使用如下方法将指定的网络接口添加到需要的区域中,从而实现每个接口的安全连接区域要求,实现真正的区域化网络安全管理 。
使用命令:
firewall-cmd --get-active-zones查看当前激活的安全区域和相应的网络接口配置 。使用命令
firewall-cmd --zone=work --change-interface=ens3p0则将网卡 ens3p0 加入到了 work 区域,之后所有通过该网卡的流量将受到区域安全规则的约束和限制,该配置是即时生效的并且会自动保存为永久配置 。
用户需要将某个网卡加入到特定安全区域也可以直接使用:
vi /etc/sysconfig/network-scripts/ifcfg-connection-name并在该文件下加入 ZONE=zone-name 行,该网卡即属于特定的安全区域 。
用户可以对安全区域进行默认规则设置,默热规则包括三个选项 ACCEPT、REJECT、DROP,其中 ACCEPT 选项将放行所有流量,REJECT、DROP 选项将阻止所有进入该安全区域的流量,与 REJECT 不同的是 DROP 选项直接丢弃进入安全区域的数据包,并不会向该数据包的发起者回复任何信息 。用户可以使用命令:
firewall-cmd --zone=zone-name --set-target=<default|ACCEPT|REJECT|DROP>进行相应安全区域的默认规则设置 。
3.3、使用区域根据来源来管理传入流量
你可以使用区域根据来源管理流入流量,这使你可以对传入流量进行排序,并将其路由到不同区域,以允许或禁止该流量可以到达的服务 。
如果将源添加到区域,则该区域将变为活动状态,并且来自该源的任何传入流量将通过它 。你可以为每个区域指定不同的设置,该设置将应用于来自给定来源的流量 。即使你只有一个网络接口,也可以使用更多区域 。
通过以下实例,我们可以将特定网段对 HTTP 的请求流量进行更细致的管理,使用命令:
firewall-cmd --zone=trusted --add-source=192.168.1.0/24将该网段作为资源加入到 trusted 区中,通过命令:
firewall-cmd --zone=trusted --add-service=http将 Web 服务添加到相同区域中,随后该目标地址产生的访问 Web 服务流量将可以顺利通过 。
3.4、防火墙锁机制
为了防止本地程序比如 KVM 虚拟机组件对防火墙的修改,FirewallD 还提供了一种锁闭机制来防止本地程序或者服务组件对防火墙配置的修改,并且该命令只有 root 用户本身才可以执行 。
用户可以使用命令:
firewall-cmd --query-lockdown查询防火墙锁闭状态,当需要锁闭时可以直接执行命令:
firewall-cmd --lockdown-on恢复到非锁闭状态时可以执行命令:
firewall-cmd --lockdown-off四、后记FirewallD 防火墙组件作为 RedHat 对自由软件社区的贡献之一,具有很好的普适性,希望通过本文的讲解使更多的用户开始熟悉该防火墙软件组件,并将其作为主机本地侧防护很好的技术手段,不断提高主机自身的 IPS 能力 。在当今网络环境复杂的形势下让主机具有更好的安全性和可用性 。




推荐阅读