前面一节初步了解了firewalld的zone和service的配置,下面看看port如何配置
例如,我删除了用户访问http服务的权限,但是允许访问80端口,效果是一样的
前面也说道了,物理网卡(这里叫interface,接口)只能接入一个Zone里面
默认接入的Zone是public,如果我再试图分配到其他Zone,就会提示冲突。
删除当前接口的绑定,就可以分配了
如果是一个新建的网卡,或者我就手动清空了,如下所示,那对应的规则如何匹配?
如果某个接口不属于任何Zone,那么这个接口的所有数据包使用默认的Zone的规则,这里也就是public的规则。
因此可以继续访问网页
如果觉得每次都要删除添加比较麻烦,可以直接使用 change-interface 修改网卡所在的zone
比如我把接口移到了trusted zone,那这个网卡对应的所有服务都是可以允许的。
接下来,我们看看 source (来源), 这个可以限制访问者的IP地址
查看防火墙的设置可以通过 --list来查询
配置source 使用 --add-source 就行了
例如
值得一提的是尽管firewalld是立刻生效的,如果需要重启,可以重启服务,也可以重新加载服务;
下一个功能是ICMP的过滤。 图形界面里面勾选的icmp类型就拒绝访问了,这个可以屏蔽客户端的PING或者traceroute的测试,一般网管喜欢以安全的名义干这事儿,系统管理员往往觉得忒不方便。
这个功能根据豆子的测试有些bug。 这个bug体现在几点上
1) 图形工具勾选的内容,命令行查询有的时候没有列出来
2)这个屏蔽对windows 的PING 完全无效
3)对于linux的PING,勉强生效;如果当前状态是通的,那么更改之后必须关掉PING再打开才会屏蔽;如果当前不通,修改之后倒是立马就通了
ICMP过滤之后,看看Rich Rules (富规则),这个可以允许我们配置更多的限制
手动图形界面创建一个 禁止远程IP ssh访问
测试成功,访问拒绝
查看一下配置
依葫芦画瓢照着输入一个类似的命令,禁止http访问
成功
删除富规则
修改一下富规则,可以指定日志的前缀和输出级别
tailf /var/log/message 看看效果