前言:
文章插图
对于firewalld的理解
centos7中使用firewalld来作为防火墙,其底层调用的命令仍然是iptables等命令,但是在配置上发生了较大的变化 。
Centos7中有两个位置存放了firewall的配置文件,一个是/etc/firewalld,一个是/usr/lib/firewalld,前者是用户配置目录,后者是系统配置目录 。/usr/lib/firewalld目录中存放的是firewalld提供的一些默认和备份的配置文件,一般不随意改变,/etc/firewalld目录下才是用户配置的真正生效的配置文件,只有在/etc/firewalld目录不存在或该目录下不存在配置文件的情况下/usr/lib/firewalld目录下的配置文件才会生效 。
01、zone的概念
zone定义了防火墙对某个连接、网口(interface)或源地址的信任等级,我们可以把他理解为防火墙对不同的连接(connection)、网口(interface)或源地址(source address)划分到不同的zone当中,而不同的zone定义了不同的规则,因此防火墙可以针对不同的连接、网口(interface)或源地址做出不同的行为 。
例如,我们将10.12.18.201这个地址划分到zone1中,将10.12.18.202这个地址划分到zone2中,然后zone1中定义的规则为:允许访问3306端口,其余的端口都拒绝访问;zone2中定义的规则为:拒绝访问3306端口,其余的端口都允许访问 。那么10.12.18.201就仅能访问本机的3306端口,10.12.18.202就仅不能访问本机的3306端口 。每个zone的防火墙规则是通过/etc/firewalld/zones目录下的xml配置文件来配置的 。
zone和connection、interface、source address之间是一对多的关系,即一个connection、interface或source address仅能划分到一个zone中,而一个zone中可以包含多个connection、interface或source address 。
01-1
预定义的zone
Centos7中firewalld为用户预定义了9个zone,分别为drop,block,public,external,dmz,work,home,internal,trusted 。这9个zone的配置文件在/usr/lib/firewalld/zones目录下,通过查看他们的配置文件可以得知这9个zone的规则是怎么样的 。
1-1-1 drop--丢弃
任何传入本机的网络数据包都会被丢弃,并且不会回复,只允许本机对外访问其他服务器 。
1-1-2 block--阻塞
任何传入本机的网络连接请求都会被拒绝,并且会回复一条拒绝访问的消息 。
1-1-3 public--公共
用于本机处于公共网络环境的场景下,仅接受特定的连接请求,如仅接受某些特定的IP的连接请求,或仅对外部开放特定的某些端口 。Centos 7 默认的public.xml文件中仅开放用于ssh连接请求的22端口和dhcpv6-client服务的546端口 。
1-1-4 external--外部
与public类似,Centos 7 默认仅开放用于ssh连接请求的22端口 。
1-1-5 dmz--非军事区
与external一样,Centos 7 默认也是仅开放用于ssh连接请求的22端口 。
1-1-6 work--工作
用于工作网络环境场景下,信任大部分的其他的计算机不会对本机进行攻击 。Centos 7 默认开放用于ssh连接请求的22端口,dhcpv6-client服务的546端口,以及IPP协议的631端口 。
1-1-7 home--家
用于家庭网络环境,信任网络上的其他计算机不会攻击本机 。Centos 7默认开放用于ssh连接请求的22端口,dhcpv6-client服务的546端口,IPP协议的631端口,samba服务的137、138端口,mDNS服务的5353端口 。
1-1-8 internal--内部
与home一样,Centos 7默认开放用于ssh连接请求的22端口,dhcpv6-client服务的546端口,IPP协议的631端口,samba服务的137、138端口,mDNS服务的5353端口 。
1-1-9 trusted--信任
所有对本机的网络连接请求都会被接受 。
01-2
将interface和source划分到某个zone
1-2-1 将source划分到某个zone的命令如下
将某个source划分到某个zone的命令如下:
firewall-cmd [--permanent] [--zone=zone] --add-source=source
1-2-2 例如firewall-cmd --permanent --zone=trusted --add-source=192.168.5.112
这条命令会将192.168.5.112这个网口划分到trusted这个zone,–permanent参数会将该配置写入trusted这个zone的配置文件trusted.xml中,使其永久生效,如果不加–permanent,则只会临时生效,重启防火墙或者调用firewall-cmd --reload重新加载配置文件会使得该项配置失效 。1-2-3 将某个网口(interface)划分到某个zone的命令如下:
将某个source划分到某个zone的命令如下:
firewall-cmd [--permanent] [--zone=zone] --add-interface=interface
1-2-4 例如firewall-cmd --permanent --zone=block --add-interface=ens33
这条命令会将ens33这个网口划分到block这个zone,这样其他机器访问本机的ens33网口时就会默认走这个zone 。
推荐阅读
- 东风标致4008配置参数 4008标致
- 电脑配置怎么看显卡配置 电脑配置怎么看显卡
- 在哪里看自己电脑的配置 怎么查看电脑配置信息
- Linux下网络共享存储搭建与配置
- h3c交换机配置ip~~如何初始化配置H3C交换机?
- 古墓丽影9劳拉mod 古墓丽影9配置
- 2020年电脑主流配置 电脑配置怎么看
- 联想b470e配置参数__联想b470笔记本电脑支持多大的内存的
- qq登陆超时请检查您的网络和防火墙设置00001?qq登录超时是怎么回事?
- 华为p10参数配置详细-华为p10具体尺寸是多少