CentOS7基础之Firewalld

从CentOS7开始,防火墙从iptables换成了Firewalld。这两个工具其实调用的都是内核的netfilter子系统。iptables是一个更为底层的工具,用户需要手工配置每一条策略,这种方式不但工作量大,而且对用户的技术水平要求比较高,一个配置不当的防火墙很难起到应有的作用。
firewalld是一个更为简单的工具。它通过使用“zone”对流量(traffic)进行分类的方法来简化防火墙的配置。firewalld自带了很多zone,每个zone都有自己的防火墙规则(firewall rule),用户只要把流量和zone关联起来就能实现最基本的防火墙配置。华为的专业防火墙用的也是这个概念。
举个例子,我的机器的eth2这个网卡连接的是内网,我希望通过eth2的所有流量不受任何限制,我只要把eth2与一个定义了允许所有流量通过的zone关联在一起就可以了。

Firewalld 预制的zone

预制的所有的zone都允许所有外出流量(outgoing traffic),以及与之匹配的流入流量(incoming traffic)。比如你发起的一个http访问请求就是外出流量,你看到网址呈现的内容就是与之匹配的流入流量。

zone名称 默认的防火墙规则
trusted 允许所有流量
home 允许 ssh,mdns, ipp-client, samba-client,dhcpv6-client
internal 允许 ssh,mdns, ipp-client, samba-client,dhcpv6-client
work ssh, ipp-client, dhcpv6-client
public ssh, dhcpv6-client
external ssh
dmz ssh
block 拒绝所incoming traffic
drop 拒绝所incoming traffic,并且不提供反馈信息

上面这个表列出的是每个zone的默认规则,用户可以根据自己的需要去调整各个zone的规则。

Firewalld 的zone逻辑:

如上表所示每个zone有自己的一套规则,Firewalld通过把流入流量(incoming traffic)导入不同的zone来实现对数据包的过滤。

Firewalld遵循以下规则把incoming traffic导入不同的zone,它采用“first match win”的方式,按照下面的顺序进行。

  • 流入流量(incoming traffic)的源地址(source address)与zone中定义的源地址规则匹配。
  • incoming traffic 流经的网卡属于的zone。
  • 不满足以上两个规则的流量都导入“default” zone。 你可以把任何一个zone指定为default zone。

Firewalld的配置工具

firewall-config: 图形化窗口下的配置工具。

这个工具相对直观,但是在实际工作中很多Linux上没有安装图形化窗口,我就不做使用介绍了。

firewall-cmd: 这是一个命令行工具。

对于firewalld来说,只有把zone设置好基本上就完成了防火墙的配置。比如你的Linux主机上有两块网卡,eth0是用来上互连网的,eth1是连内网的,你只有把eth0放到block zone,这样所以来自互联网的访问都会被拒绝。把eth1放到trusted zone,这样内网的任何访问都是允许的。具体命令如下:

把eth0加入到block zone:
Firewall-cmd --add-interface=eth0 --zone=block
把eth1加入到trusted zone:
Firewall-cmd --add-interface=eth1 --zone=trusted

如果你只允许其他人通过ssh和web访问你的Linux主机,你可以做如下配置:
设置default zone为public
firewall-cmd --set-default-zone=public
查看当前的默认zone
firewall-cmd --get-default-zone
在防火墙中开启http服务。下面这个命令修改的是内存中的防火墙规则,这条规则会立即生效,但firewalld服务重启后,这条规则会消失。
firewall-cmd --add-service=http
通过在命令中加入 --permanent 可以把防火墙规则写入配置文件,这样防火墙规则在Firewalld重新加载后依然生效。
firewall-cmd --add-service=http --permanent

关注我的公众号获得更多信息

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Jackel_yan/article/details/85125266
今日推荐