码迷,mamicode.com
首页 > 其他好文 > 详细

skill——iptables(五)

时间:2018-10-23 15:43:05      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:匹配   ima   lte   src   bcf   png   入站规则   shadow   process   

黑白名单

黑名单:即默认策略为 ACCEPT,链中规则对应的动作应该为 DROP 或 REJECT ,表示只有匹配到规则的报文才会被拒绝,没有匹配到规则的报文默认被放行
白名单:即默认策略为 DROP 或 REJECT,链中规则对应的动作应该为 ACCEPT ,表示只有匹配到规则的报文才会被放行,没有匹配到规则的报文默认被拒绝
也就是说:
白名单时,默认所有人是坏人,只放行好人
黑名单时,默认所有人是好人,只拒绝坏人
案例一:
简单的黑名单(默认策略为 ACCEPT,链中规则对应的动作为 DROP 或 REJECT)
技术分享图片
案例二:
简单的白名单(默认策略为 DROP 或 REJECT,链中规则对应的动作为 ACCEPT )
先添加规则动作为 ACCEPT 的链使端口 22 可以被访问,然后使用 -P 把默认策略改为 DROP
如下图:
技术分享图片
注意:但是上图的设置有个问题,就是如果误操作把这这条规则删掉了或执行了 iptables -F INOUT 清空了链,正在连接的 ssh 就会 的断开,这个显然不是我们想要的
可以做以下修改:
让默认策略继续为:ACCEPT,在需要放行的规则后面添加一条拒绝所有请求的规则
意思是:如果报文符合放行规则,则会被放行规则匹配到,得以通过,如果没有,则会被最后一条拒绝规则禁止通行
技术分享图片
这样做的目的是在误操作的情况下(iptables -F INOUT 清空了链),也可以保证连接是畅通的

自定义链

用于解决默认链中规则非常多时,方便我们分类管理,比如定义一条链,只存放针对 80 端口的入站规则
案例三

  1. 创建一条自定义链
    注意:前面说过,-t filter 可以省略,为默认值
    技术分享图片
    技术分享图片
  2. 向 IN_WEB 中添加并查看规则
    注意:操作自定义链与默认链没什么不同
    技术分享图片
  3. 使用默认链来引用自定义链
    注意:没有默认链引用时,之前定义的规则是无法被正常使用的,被哪条默认链引用取决于实际工作场景(自定义链也可以引用其他自定义链)
    注意:此时的 “-j 动作” 表示访问本机的 80 端口的 tcp 报文将由自定义链来处理,我们也可以发现 IN_WEB 中的 references 数值变为了 1,表示该自定义链被引用了一次
    技术分享图片
    技术分享图片
  4. 重命名自定义链
    技术分享图片
    技术分享图片
  5. 删除自定义链
    注意:删除自定义链需满足两个条件
    1)自定义链中没有任何规则,即自定义链为空
    2)自定义链没有被任何默认链引用,即自定义链的引用计数为 0
    技术分享图片

skill——iptables(五)

标签:匹配   ima   lte   src   bcf   png   入站规则   shadow   process   

原文地址:http://blog.51cto.com/12384628/2307872

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!