前面一节初步了解了firewalld的zone和service的配置,下面看看port如何配置


例如,我删除了用户访问http服务的权限,但是允许访问80端口,效果是一样的


wKiom1TBtZvw8-dTAABKz1PioBQ760.jpg

wKioL1TBtnSDlVYpAAAsVOwb6h8107.jpg

RHCE 学习笔记(31) - 防火墙 (中)_第1张图片



前面也说道了,物理网卡(这里叫interface,接口)只能接入一个Zone里面

默认接入的Zone是public,如果我再试图分配到其他Zone,就会提示冲突。


wKioL1TBtnnQdOmTAABJAGdTHnI545.jpg

wKiom1TBtaKw2u_DAABXTQsoRJg593.jpg


删除当前接口的绑定,就可以分配了


wKioL1TBtnzzeEM5AACFTN1R2Mo089.jpg


如果是一个新建的网卡,或者我就手动清空了,如下所示,那对应的规则如何匹配?


RHCE 学习笔记(31) - 防火墙 (中)_第2张图片


如果某个接口不属于任何Zone,那么这个接口的所有数据包使用默认的Zone的规则,这里也就是public的规则。


因此可以继续访问网页


RHCE 学习笔记(31) - 防火墙 (中)_第3张图片



如果觉得每次都要删除添加比较麻烦,可以直接使用 change-interface 修改网卡所在的zone


比如我把接口移到了trusted zone,那这个网卡对应的所有服务都是可以允许的。

wKioL1TBtonwB-3UAACLY45H1dI140.jpg

RHCE 学习笔记(31) - 防火墙 (中)_第4张图片


接下来,我们看看 source (来源), 这个可以限制访问者的IP地址


查看防火墙的设置可以通过 --list来查询

RHCE 学习笔记(31) - 防火墙 (中)_第5张图片


配置source 使用 --add-source 就行了


例如

RHCE 学习笔记(31) - 防火墙 (中)_第6张图片


值得一提的是尽管firewalld是立刻生效的,如果需要重启,可以重启服务,也可以重新加载服务;

wKioL1TBtprxNjlAAABkDBTwVjQ635.jpg



下一个功能是ICMP的过滤。 图形界面里面勾选的icmp类型就拒绝访问了,这个可以屏蔽客户端的PING或者traceroute的测试,一般网管喜欢以安全的名义干这事儿,系统管理员往往觉得忒不方便。


这个功能根据豆子的测试有些bug。 这个bug体现在几点上


1) 图形工具勾选的内容,命令行查询有的时候没有列出来

2)这个屏蔽对windows 的PING 完全无效

3)对于linux的PING,勉强生效;如果当前状态是通的,那么更改之后必须关掉PING再打开才会屏蔽;如果当前不通,修改之后倒是立马就通了


RHCE 学习笔记(31) - 防火墙 (中)_第7张图片



ICMP过滤之后,看看Rich Rules (富规则),这个可以允许我们配置更多的限制


手动图形界面创建一个 禁止远程IP ssh访问


RHCE 学习笔记(31) - 防火墙 (中)_第8张图片


测试成功,访问拒绝

wKiom1TBtc2AxVtXAABjMJRf5ts707.jpg


查看一下配置

RHCE 学习笔记(31) - 防火墙 (中)_第9张图片


依葫芦画瓢照着输入一个类似的命令,禁止http访问

wKiom1TBtdLCCXKWAABvps6ez3k637.jpg


成功

RHCE 学习笔记(31) - 防火墙 (中)_第10张图片


删除富规则


wKioL1TBtrfzt7qzAADftSpa3qY651.jpg


修改一下富规则,可以指定日志的前缀和输出级别

wKioL1TBtrjAiimuAACd2oVDBqs682.jpg


tailf /var/log/message 看看效果

wKiom1TBteLhrLmxAACOyFn9h3Q853.jpg