Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1670054
  • 博文数量: 636
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 3950
  • 用 户 组: 普通用户
  • 注册时间: 2014-08-06 21:58
个人简介

博客是我工作的好帮手,遇到困难就来博客找资料

文章分类

全部博文(636)

文章存档

2024年(5)

2022年(2)

2021年(4)

2020年(40)

2019年(4)

2018年(78)

2017年(213)

2016年(41)

2015年(183)

2014年(66)

我的朋友

分类: 系统运维

2017-03-08 11:17:34

查看防火墙状态。

systemctl status firewalld


临时关闭防火墙命令。重启电脑后,防火墙自动起来。

systemctl stop firewalld


永久关闭防火墙命令。重启后,防火墙不会自动启动。

systemctl disable firewalld


打开防火墙命令。

systemctl enable firewalld


 防火墙开放特定端口:

文件/etc/sysconfig/iptables



1、关闭firewall:

systemctl stop firewalld.service #停止firewall

systemctl disable firewalld.service #禁止firewall开机启动


2、安装iptables防火墙

yum install iptables-services #安装


查看防火墙状态。

systemctl status firewalld


临时关闭防火墙命令。重启电脑后,防火墙自动起来。

systemctl stop firewalld


永久关闭防火墙命令。重启后,防火墙不会自动启动。

systemctl disable firewalld


打开防火墙命令。

systemctl enable firewalld


 防火墙开放特定端口:

文件/etc/sysconfig/iptables


1、关闭firewall:

systemctl stop firewalld.service #停止firewall

systemctl disable firewalld.service #禁止firewall开机启动


2、安装iptables防火墙

yum install iptables-services #安装



防火墙
Redhat Enterprise Linux7已经默认使用firewalld作为防火墙,其使用方式已经变化。

基于iptables的防火墙被默认不启动,但仍然可以继续使用。

RHEL7中有几种防火墙共存:firewalld、iptables、ebtables等,默认使用firewalld作为防火墙,管理工具是firewall-cmd。RHEL7的内核版本是3.10,在此版本的内核里防火墙的包过滤机制是

firewalld,使用firewalld来管理netfilter,不过底层调用的命令仍然是iptables等。因为这几种daemon是冲突的,所以建议禁用其他几种服务

systemctl status {firewalld,iptable,ip6tables,ebtables}

例如若要禁用iptables、ip6tables、ebtables防火墙,方法如下图

systemctl mask {firewalld,iptable,ebtables,ip6tables} 

查看这几种服务是否正在运行

systemctl is-active iptables.service

systemctl is-active firewalld.service

systemctl is-active ip6tables.service

systemctl is-active ebtables.service 
 
RHEL7虽然有iptables但是不建议使用了,使用新的firewalld服务。
查看firewalld软件包是否安装

rpm -qa |grep firewalld

Firewalld提供了支持网络/防火墙区域(zone)定义网络链接以及接口安全等级的防火墙管理工具。拥有运行时配置和永久配置选项。它也支持允许服务或者应用程序直接添加防火墙规则的接口。以前的

system-config-firewall防火墙模型是静态的,每次修改都要求防火墙完全重启
。这个过程包括内核 netfilter 防火墙模块的卸载和新配置所需模块的装载等。相反,

firewall daemon 动态管理防火墙,不需要重启整个防火墙便可应用更改
。因而也就没有必要重载所有内核防火墙模块了。
wKioL1b44MeTifpdAAKbTab-0Q4366.png


数据包要进入到内核必须要通过这些zone中的一个,而不同的zone里定义的规则不一样(即信任度不一样,过滤的强度也不一样)。可以根据网卡所连接的网络的安全性来判断,这张网卡的流量到底使用哪个zone,比如上图来自eth0的流量全部使用zone1的过滤规则,eth1的流量使用zone2。一张网卡同时只能绑定到一个zone
 
预定义的服务:服务是端口和/或协议入口的组合。
 
端口和协议:定义了 tcp 或 udp 端口,端口可以是一个端口或者端口范围。
 
ICMP 阻塞:可以选择 Internet 控制报文协议的报文。这些报文可以是信息请求亦可是对信息请求或错误条件创建的响应。
 
伪装:私有网络地址可以被映射到公开的IP地址。这是一次正规的地址转换。
 
端口转发:端口可以映射到另一个端口以及/或者其他主机。
 
在进行firewalld配置之前,我想来讨论一下区域(zones)这个概念。默认情况就有一些有效的区域。由firewalld 提供的区域按照从不信任到信任的顺序排序。

丢弃区域(Drop Zone):如果使用丢弃区域,任何进入的数据包将被丢弃。这个类似与我们之前使用iptables -j drop。使用丢弃规则意味着将不存在响应。

阻塞区域(Block Zone):阻塞区域会拒绝进入的网络连接,返回icmp-host-prohibited,只有服务器已经建立的连接会被通过即只允许由该系统初始化的网络连接

公共区域(Public Zone):只接受那些被选中的连接,默认只允许 ssh 和 dhcpv6-client。这个 zone 是缺省 zone

外部区域(External Zone):这个区域相当于路由器的启用伪装(masquerading)选项。只有指定的连接会被接受,即ssh,而其它的连接将被丢弃或者不被接受。

隔离区域(DMZ Zone):如果想要只允许给部分服务能被外部访问,可以在DMZ区域中定义。它也拥有只通过被选中连接的特性,即ssh。

工作区域(Work Zone):在这个区域,我们只能定义内部网络。比如私有网络通信才被允许,只允许ssh,ipp-client和 dhcpv6-client。

家庭区域(Home Zone):这个区域专门用于家庭环境。它同样只允许被选中的连接,即ssh,ipp-client,mdns,samba-client和 dhcpv6-client。

内部区域(Internal Zone):这个区域和工作区域(Work Zone)类似,只有通过被选中的连接,和home区域一样。

信任区域(Trusted Zone):信任区域允许所有网络通信通过。记住:因为trusted是最被信任的,即使没有设置任何的服务,那么也是被允许的,因为trusted是允许所有连接的

以上是系统定义的所有的 zone,但是这些 zone 并不是都在使用。只有活跃的 zone 才有实际操作意义。

Firewalld的原则:

如果一个客户端访问服务器,服务器根据以下原则决定使用哪个 zone 的策略去匹配

1.如果一个客户端数据包的源 IP 地址匹配 zone 的 sources,那么该 zone 的规则就适
用这个客户端;一个源只能属于一个zone,不能同时属于多个zone。

2.如果一个客户端数据包进入服务器的某一个接口(如eth0)区配zone的interfaces,
则么该 zone 的规则就适用这个客户端;一个接口只能属于一个zone,不能同时属于多个zone。

3.如果上述两个原则都不满足,那么缺省的 zone 将被应用

你可以使用任何一种 firewalld 配置工具来配置或者增加区域,以及修改配置。工具有例如firewall-config 这样的图形界面工具, firewall-cmd 这样的命令行工具,或者你也可以在配置文件目录中创建或者拷贝区域文件,/usr/lib/firewalld/zones 被用于默认和备用配置,/etc/firewalld/zones 被用于用户创建和自定义配置文件。
命令行工具firewall-cmd支持全部防火墙特性,基本应用如下:

1、 获取firewalld状态
firewall-cmd  --state

2、在不改变状态的条件下重新加载防火墙:
firewall-cmd  --reload
如果你使用--complete-reload,状态信息将会丢失。

3、获取支持的区域列表

firewall-cmd  --get-zones
这条命令输出用空格分隔的列表

4、获取所有支持的服务

 firewall-cmd  --get-services

这条命令输出用空格分隔的列表。
服务是firewalld所使用的有关端口和选项的规则集合。被启动的服务会在firewalld服务开启或者运行时自动加载。默认情况下,很多服务是有效的。使用下面命令可列出有效的服务。
想要列出默认有效的服务,也可以进入下面的目录也能够取得。
# cd /usr/lib/firewalld/services/

想要创建自己的服务,需要在下面的目录下定义它。比如,现在我想添加一个rhmp服务,端口号1935。首先,任选一个服务复制过来。
wKioL1b44W-hYDNQAAALlHlDH0k961.png

接下来把复制过来的文件重命名为“rtmp.xml”,
wKiom1b44O7gE6WIAAAKXNcpWXE897.png

接下来打开并编辑文件的头部、描述、协议和端口号,以供RTMP服务使用,如下图所示。
wKiom1b44QLCiIyOAAAKpMQ8s74188.png

重启firewalld服务或者重新加载设置,以激活这些设置。
# firewall-cmd --reload
为确认服务是否已经启动,运行下面的命令获取有效的服务列表。
# firewall-cmd --get-services


5、获取所有支持的ICMP类型
firewall-cmd  --get-icmptypes

这条命令输出用空格分隔的列表。
6、列出全部启用的区域的特性(即查询当前防火墙策略)
解释:特性可以是定义的防火墙策略,如:服务、端口和协议的组合、端口/数据报转发、伪装、ICMP 拦截或自定义规则等

firewall-cmd  --list-all-zones
上面的命令将会列出每种区域如block、dmz、drop、external、home、internal、public、trusted以及work。如果区域还有其它详细规则(rich-rules)、启用的服务或者端口,这些区域信息也会分别被罗列出来

7、输出区域全部启用的特性。如果省略区域,将显示默认区域的信息。
firewall-cmd [--zone=] --list-all
 firewall-cmd  --list-all
输出指定区域启动的特性
  firewall-cmd  --zone=public  --list-all 

8、查看默认区域
 firewall-cmd  --get-default-zone
public区域是默认区域。
在文件/etc/firewalld/firewalld.conf中定义成DefaultZone=public。

9、设置默认区域
firewall-cmd --set-default-zone=区域名
 
流入默认区域中配置的接口的新访问请求将被置入新的默认区域。当前活动的连接将不受影响。
firewall-cmd  --set-default-zone=drop

firewall-cmd  --get-default-zone


firewall-cmd  --get-active-zone

10获取活动的区域

 

这条命令将用以下格式输出每个区域所含接口:

区域名

interfaces :  接口名

11根据接口获取区域即需要查看哪个区域和这个接口绑定即查看某个接口是属于哪个zone的:

firewall-cmd --get-zone-of-interface=接口名

 

这条命令将输出接口所属的区域名称。

12将接口(网卡)增加到区域

firewall-cmd [--zone=] --add-interface=接口名

 

如果接口不属于区域,接口将被增加到区域。如果区域被省略了,将使用默认区域。接口在重新加载后将重新应用。

13修改接口所属区域

firewall-cmd [--zone=] --change-interface=接口名

 

这个选项与 --add-interface 选项相似,但是当接口已经存在于另一个区域的时候,该接口将被添加到新的区域。

14从区域中删除一个接口

firewall-cmd [--zone=] --remove-interface=接口名

 

注:如果某个接口不属于任何Zone,那么这个接口的所有数据包使用默认的Zone的规则

15查询区域中是否包含某接口

firewall-cmd [--zone=] --query-interface=接口名

 

如果区域被省略了,将使用默认区域

16列举区域中启用的服务

firewall-cmd [ --zone= ] --list-services

 

如果区域被省略了,将使用默认区域

查看home区域中启用服务

 

17启用应急模式阻断所有网络连接,以防出现紧急状况

 

18禁用应急模式

firewall-cmd --panic-off

19查询应急模式

firewall-cmd --query-panic

其他相关的配置项可以查看firewall-cmd的手册页:#man  firewall-cmd

处理运行时区域

运行时模式下对区域进行的修改不是永久有效的。重新加载或者重启后修改将失效。

1启用区域中的一种服务给某个区域开启某个服务

firewall-cmd [--zone=区域] --add-service=服务 [--timeout=秒数]

操作启用区域中的一种服务。如果未指定区域,将使用默认区域。如果设定了超时时间,服务将只启用特定秒数。

 

使区域中的 ipp-client 服务生效60:

启用默认区域中的http服务:firewall-cmd --add-service=http

2禁用区域中的某种服务即关闭某个服务

firewall-cmd [--zone=区域] --remove-service=服务

此举禁用区域中的某种服务。如果未指定区域,将使用默认区域。

:禁止默认区域中的 http 服务:

 

3查询区域中是否启用了特定服务

firewall-cmd [--zone=区域] --query-service=服务

 

Yes表示服务启用,no表示服务关掉了。

4启用区域端口和协议组合

firewall-cmd [--zone=区域] --add-port=portid[-portid]/protocol [--timeout=seconds]

操作将启用端口和协议的组合。端口可以是一个单独的端口或者是一个端口范围 。协议可以是tcpudp

 

5禁用端口和协议组合

firewall-cmd [--zone=区域] --remove-port=portid[-portid]/protocol

 

6查询区域中是否启用了端口和协议组合

firewall-cmd [--zone=区域] --query-port=portid[-portid]/protocol

 

7启用区域中的 IP 伪装功能

firewall-cmd [--zone=区域] --add-masquerade

操作启用区域的伪装功能。私有网络的地址将被隐藏并映射到一个公有IP。这是地址转换的一种形式,常用于路由。由于内核的限制,伪装功能仅可用于IPv4

8禁用区域中的 IP 伪装

firewall-cmd [--zone=区域] --remove-masquerade

9查询区域的伪装状态

firewall-cmd [--zone=区域] --query-masquerade

10启用区域的 ICMP 阻塞功能

firewall-cmd [--zone=区域] --add-icmp-block=icmp类型

 

操作将启用选中的 Internet 控制报文协议(ICMP)报文进行阻塞。 ICMP 报文可以是请求信息或者创建的应答报文,以及错误应答。

11禁止区域的 ICMP 阻塞功能

firewall-cmd [--zone=区域] --remove-icmp-block=icmp类型

12查询区域的 ICMP 阻塞功能

firewall-cmd [--zone=区域] --query-icmp-block=icmp类型

13在区域中启用端口转发或映射

firewall-cmd [--zone=区域] --add-forward-port=port=portid[-portid]:proto=protocol[ :toport=portid[-portid]][ :toaddr=address [/mask]]

端口可以映射到另一台主机的同一端口,也可以是同一主机或另一主机的不同端口。端口号可以是一个单独的端口或者是端口范围 。协议可以为tcpudp。目标端口可以是端口号或者是端口范围 。目标地址可以是 IPv4 地址。受内核限制,端口转发功能仅可用于IPv4

意思是凡是来从external进来的22端口的数据包全部转发到211.106.65.50

firewall-cmd --zone=external --add-forward-port=port=22:proto=tcp:toaddr=211.106.65.50

14禁止区域的端口转发或者端口映射

firewall-cmd [--zone=] --remove-forward-port=port=portid[-portid]:proto=protocol[ :toport=portid[-portid]][ :toaddr=address [/mask]]

15查询区域的端口转发或者端口映射

firewall-cmd [--zone=]--query-forward-port=port=portid[-portid]:proto=protocol[ :toport=portid[-portid]][ :toaddr=address [/mask]]

处理永久区域

永久选项不直接影响运行时的状态。这些选项仅在重载或者重启服务时可用。为了使用运行时和永久设置,需要分别设置两者。选项--permanent需要是永久设置的第一个参数。

1获取永久选项所支持的服务

firewall-cmd --permanent --get-services

2获取永久选项所支持的ICMP类型列表

firewall-cmd --permanent --get-icmptypes

3获取支持的永久区域

firewall-cmd --permanent --get-zones

4、配置防火墙在public区域打开http协议,并保存,以致重启有效

firewall-cmd --permanent --zone=public --add-service=http

查看永久模式下public区域是否打开http服务。

firewall-cmd --permanent --zone=public --query-service=http

5、防火墙开放8080端口在public区域

firewall-cmd --permanent --zone=public --add-port=8080/tcp

6、仅允许部分IP访问本机服务配置

firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4"

source address="192.168.0.0/24" service name="http" accept"

禁止远程IP访问ssh

firewall-cmd --permanent --zone=public --add-rich-rule=’rule family=ipv4

source address=192.168.0.0/24 service name=ssh accept’

查看rich规则

Firewall-cmd  --list-rich-rules

7、删除rich规则

firewall-cmd --permanent --zone=public --remove-rich-rule=’rule family=ipv4

source address=192.168.0.0/24 service name=ssh accept’

8、仅允许部分IP访问本机端口配置

firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4"

source address="192.168.0.0/24"port protocol="tcp" port="8080" accept"

9、创建rich规则,可以指定日志的前缀和输出级别

firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.0.4/24"port port=8080 protocol="tcp" log prefix=proxy level=warning accept"

可以通过查看/var/log/messages日志文件

10端口转发。实验环境下,desktop访问server5423端口,将访问server80端口。

Server上的操作:(172.25.0.10desktopIP地址)

 

11172.25.1.0/24网段内的客户端不能访问主机的SSH

 

12、也可通过配置以下XML文件,进行对防火墙的配置修改

#cat /etc/firewalld/zones/public.xml

Public

For use in public areas. You do not trust the other computers on networks

               to not harm your computer. Only selected incoming connections are accepted.

总结

netfilter 防火墙总是容易受到规则顺序的影响,因为一条规则在链中没有固定的位置。在一条规则之前添加或者删除规则都会改变此规则的位置。在静态防火墙模型中,改变防火墙就是重建一个干净和完善的防火墙设置,默认链通常也没有安全的方式添加或删除规则而不影响其他规则。

动态防火墙有附加的防火墙功能链。这些特殊的链按照已定义的顺序进行调用,因而向链中添加规则将不会干扰先前调用的拒绝和丢弃规则。从而利于创建更为合理完善的防火墙配置。

下面是一些由守护进程创建的规则,过滤列表中启用了在公共区域对 ssh , mdns 和 ipp-client 的支持:

 

总结:

图形化配置工具

firewall daemon 主要的配置工具是firewall-config。它支持防火墙的所有特性。管理员也可以用它来改变系统或用户策略。

命令行客户端

firewall-cmd是命令行下提供大部分图形工具配置特性的工具。

附录:要想了解更多firewall防火墙更多知识可以查看firewall的相关手册页,下图所显示的就是firewall防火墙的相关手册页:

 

若要查看rich-rule手册页

 

 

例如:允许icmp协议的数据包通信

 



防火墙中的一切都与一个或者多个区域相关联,下面对各个区进行说明:

Zone                                    Description 
-----------------------------------------------------
drop (immutable)                 Deny all incoming connections, outgoing ones are accepted. 
block (immutable)                Deny all incoming connections, with ICMP host prohibited messages issued. 
trusted (immutable)             Allow all network connections 
public                            Public areas, do not trust other computers
external                          For computers with masquerading enabled, protecting a local network 
dmz                               For computers publicly accessible with restricted access.  
work                              For trusted work areas 
home                              For trusted home network connections 
internal                          For internal network, restrict incoming connections

drop(丢弃)
任何接收的网络数据包都被丢弃,没有任何回复。仅能有发送出去的网络连接

block(限制)
任何接收的网络连接都被 IPv4 的 icmp-host-prohibited 信息和 IPv6 的 icmp6-adm-prohibited 信息所拒绝。

public(公共)
在公共区域内使用,不能相信网络内的其他计算机不会对您的计算机造成危害,只能接收经过选取的连接。

external(外部)
特别是为路由器启用了伪装功能的外部网。您不能信任来自网络的其他计算,不能相信它们不会对您的计算机造成危害,只能接收经过选择的连接。

dmz(非军事区)
用于您的非军事区内的电脑,此区域内可公开访问,可以有限地进入您的内部网络,仅仅接收经过选择的连接。

work(工作)
用于工作区。您可以基本相信网络内的其他电脑不会危害您的电脑。仅仅接收经过选择的连接。

home(家庭)
用于家庭网络。您可以基本信任网络内的其他计算机不会危害您的计算机。仅仅接收经过选择的连接。

internal(内部)
用于内部网络。您可以基本上信任网络内的其他计算机不会威胁您的计算机。仅仅接受经过选择的连接。

trusted(信任)
可接受所有的网络连接。


操作防火墙的一些常用命令:

--显示防火墙状态
[root@localhost zones]# firewall-cmd --state
running


--列出当前有几个zone
[root@localhost zones]# firewall-cmd --get-zones
block dmz drop external home internal public trusted work

--取得当前活动的zones
[root@localhost zones]# firewall-cmd --get-active-zones
public
  interfaces: ens32 veth4103622

--取得默认的zone
[root@localhost zones]# firewall-cmd --get-default-zone
public

--取得当前支持service
[root@localhost zones]# firewall-cmd --get-service           
RH-Satellite-6 amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt  nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https

--检查下一次重载后将激活的服务。
[root@localhost zones]# firewall-cmd --get-service --permanent
RH-Satellite-6 amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt  nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https

--列出zone public 端口
[root@localhost zones]# firewall-cmd --zone=public --list-ports

--列出zone public当前设置
[root@localhost zones]# firewall-cmd --zone=public --list-all
public (default, active)
  interfaces: eno16777736
  sources: 
  services: dhcpv6-client ssh
  ports: 
  masquerade: no
  forward-ports: 
  icmp-blocks: 
  rich rules:

--增加zone public开放http service
[root@localhost zones]# firewall-cmd --zone=public --add-service=http
success
[root@localhost zones]# firewall-cmd --permanent --zone=internal --add-service=http
success


--重新加载配置
[root@localhost zones]# firewall-cmd --reload
success


--增加zone internal开放443/tcp协议端口
[root@localhost zones]# firewall-cmd --zone=internal --add-port=443/tcp
success


--列出zone internal的所有service
[root@localhost zones]# firewall-cmd --zone=internal --list-services
dhcpv6-client ipp-client mdns samba-client ssh


设置黑/白名单
--增加172.28.129.0/24网段到zone trusted(信任)
[root@localhost zones]# firewall-cmd --permanent --zone=trusted --add-source=172.28.129.0/24
success


--列出zone truste的白名单
[root@localhost zones]# firewall-cmd --permanent --zone=trusted --list-sources
172.28.129.0/24


--活动的zone
[root@localhost zones]# firewall-cmd --get-active-zones
public
  interfaces: eno16777736


--添加zone truste后重新加载,然后查看--get-active-zones
[root@localhost zones]# firewall-cmd --reload          
success
[root@localhost zones]# firewall-cmd --get-active-zones
public
  interfaces: ens32 veth4103622
trusted
  sources: 172.28.129.0/24


--列出zone drop所有规则
[root@localhost zones]# firewall-cmd --zone=drop --list-all
drop
  interfaces: 
  sources: 
  services: 
  ports: 
  masquerade: no
  forward-ports: 
  icmp-blocks: 
  rich rules:


--添加172.28.13.0/24到zone drop
[root@localhost zones]# firewall-cmd --permanent --zone=drop --add-source=172.28.13.0/24
success


--添加后需要重新加载
[root@localhost zones]# firewall-cmd --reload
success


[root@localhost zones]# firewall-cmd --zone=drop --list-all
drop
  interfaces: 
  sources: 172.28.13.0/24
  services: 
  ports: 
  masquerade: no
  forward-ports: 
  icmp-blocks: 
  rich rules: 


[root@localhost zones]# firewall-cmd --reload
success


--从zone drop中删除172.28.13.0/24
[root@localhost zones]# firewall-cmd --permanent --zone=drop --remove-source=172.28.13.0/24
success


--查看所有的zones规则
[root@localhost ~]# firewall-cmd --list-all-zones


最后再提几点:

1、很多时候我们需要开放端口或开放某IP访问权限,我们需要先查看我们当前默认的zone是哪个然后在对应的zone里面添加port和source,这样对外才会有作用。

     比如我当前的默认zone是public,我需要开放80端口对外访问,则执行如下命令:

     [root@localhost zones]# firewall-cmd --zone=public --permanent --add-port=80/tcp
     success
     [root@localhost zones]# firewall-cmd --reload
     success

2、使用命令的时候加上 --permanent 是永久生效的意思,在重启防火墙服务后依然生效。否则,只对重启服务之前有效。

3、我们执行的命令,结果其实都体现在具体的配置文件中,其实我们可以直接修改对应的配置文件即可。

      以public zone为例,对应的配置文件是/etc/firewalld/zones/public.xml,像我们刚刚添加80端口后,体现在public.xml 中的内容为:

     [root@localhost zones]# cat public.xml
     
     
       Public
       For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming      connections are accepted.
       
      
       
     

     这个大家可自己再进一步了解下配置文件的结构后,进行自行配置,不过记得要在配置后 --reload 或重启 firewall 服务。



阅读(1206) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~