redhat 7.x 的防火墙软件firewall 介绍
-
zone 的概念。firewall 一般有9个zone ,配置文件都在 /usr/lib/firewalld/zones/ 里面。
系统的配置文件目录就在 /usr/lib/firewalld 这个目录
用户的配置文件目录再 /etc/firewalld
在具体介绍zone之前学生先给大家介绍几个相关的名词,因为如果不理解这几个名词zone就无从入手。
-
target:目标,这个前面学生也已经给大家介绍过了,可以理解为默认行为,有四个可选值:default、ACCEPT、%%REJECT%%、DROP,如果不设置默认为default。
ACCEPT
:通过这个包。%%REJECT%%
:拒绝这个包,并返回一个拒绝的回复。DROP
:丢弃这个包,不回复任何信息。default
:不做任何事情。 -
service:这个在前面学生已经给大家解释过了,他表示一个服务
-
port:端口,使用port可以不通过service而直接对端口进行设置
-
interface:接口,可以理解为网卡
-
source:源地址,可以是ip地址也可以是ip地址段
-
icmp-block:icmp报文阻塞,可以按照icmp类型进行设置
-
masquerade:ip地址伪装,也就是按照源网卡地址进行NAT转发
-
forward-port:端口转发
-
rule:自定义规则
-
-
firewall 常用命令
firewall 的常用命令
firewall-cmd --list-all #查看firewall的所有配置
firewall-cmd --reload #修改了配置之后平滑启动
zone 相关:
firewall-cmd --get-zone #显示支持的区域列表
firewall-cmd --list-all-zones #列出全部区域启用的特性
firewall-cmd --get-default-zone #查看默认的zone
firewall-cmd --get-active-zone #查看当前活跃的zone
firewall-cmd --zone=XX --list-all #显示XX区域详情
# firewall-cmd --set-default-zone=work //设定默认zone
# firewall-cmd --get-zone-of-interface=ens33 //查指定网卡
# firewall-cmd --zone=public --add-interface=lo //给指定网卡设置zone
# firewall-cmd --zone=dmz --change-interface=lo //针对网卡更改zone
# firewall-cmd --zone=dmz --remove-interface=lo //针对网卡删除zone
# firewall-cmd --get-active-zones //查看系统所有网卡所在的zone
service 相关:
firewall-cmd --get-services #显示支持的服务
firewall-cmd --list-services #显示默认zone开启的服务,如果要查具体zone,加上参数--zone=XX
firewall-cmd --zone=public --add-service=ssh --permanent #在public区里面添加ssh服务,永久生效,一般后面需要在执行 --reload -
例如,我在设置防火墙的时候,输出firewall-cmd ,按两下tab键,没有显示选项命令。