zoukankan      html  css  js  c++  java
  • iptables-参数-A和-I

    iptables -L -n --line-number 列出链所有的规则

    [root@GDY-TEST07 etc]# iptables -L -n --line-number
    Chain INPUT (policy ACCEPT)
    num  target     prot opt source               destination         
    1    ACCEPT     tcp  --  192.168.216.55       0.0.0.0/0           tcp dpt:22 
    2    ACCEPT     tcp  --  192.168.228.0/24     0.0.0.0/0           tcp dpt:22 
    3    ACCEPT     tcp  --  10.153.97.0/24       0.0.0.0/0           tcp dpt:22 
    4    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:22 
    
    Chain FORWARD (policy ACCEPT)
    num  target     prot opt source               destination         
    
    Chain OUTPUT (policy ACCEPT)
    num  target     prot opt source               destination      
    

     删除指定的第4行规则:iptables -D INPUT 4

    [root@tp ~]# iptables -F        清除预设表filter中的所有规则链的规则
    [root@tp ~]# iptables -X        清除预设表filter中使用者自定链中的规则

    -A与-I 参数的区别

    -A参数

    iptables是由上往下进行匹配

    iptables -A INPUT -s 192.168.228.0/24 -p tcp --dport 22 -j ACCEPT
    iptables -A INPUT -s 10.153.97.0/24 -p tcp --dport 22 -j ACCEPT
    iptables -A INPUT -p tcp --dport 22 -j DROP

    执行以上三条命令后,防火墙由上往下匹配,既从num 1开始匹配到num 3,则允许192.168.228.0/24和10.153.97.0/24这两个网段访问,其他不允许访问

    [root@GDY-TEST07 etc]# iptables -L -n --line-number
    Chain INPUT (policy ACCEPT)
    num  target     prot opt source               destination         
    1    ACCEPT     tcp  --  192.168.228.0/24     0.0.0.0/0           tcp dpt:22 
    2    ACCEPT     tcp  --  10.153.97.0/24       0.0.0.0/0           tcp dpt:22 
    3    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:22 
    
    Chain FORWARD (policy ACCEPT)
    num  target     prot opt source               destination         
    
    Chain OUTPUT (policy ACCEPT)
    num  target     prot opt source               destination     
    

    对比

    -I 参数

    iptables -I INPUT -s 192.168.228.0/24 -p tcp --dport 22 -j ACCEPT
    iptables -I INPUT -s 10.153.97.0/24 -p tcp --dport 22 -j ACCEPT
    iptables -I INPUT -p tcp --dport 22 -j DROP

    执行以上三条命令后,防火墙由上往下匹配,既从num 1开始匹配,此时num 1的防火墙策略已将访问拒绝,num 2和num 3即使accept也不会生效

    [root@GDY-TEST07 etc]# iptables -L -n --line-number
    Chain INPUT (policy ACCEPT)
    num  target     prot opt source               destination
    1    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:22         
    2    ACCEPT     tcp  --  192.168.228.0/24     0.0.0.0/0           tcp dpt:22 
    3    ACCEPT     tcp  --  10.153.97.0/24       0.0.0.0/0           tcp dpt:22 
     
    
    Chain FORWARD (policy ACCEPT)
    num  target     prot opt source               destination         
    
    Chain OUTPUT (policy ACCEPT)
    num  target     prot opt source               destination    

    从以上的-A 和 -I参数可以看出,-A 会将后执行的策略添加到已有策略后,而-I 则会插入到已有策略的前(既成为第一条策略)。

    按照上述所说,如果想加一条策略为允许192.168.216.55这台机器访问,此时应采用-I 参数将策略添加到已有策略前,如果采用-A 参数将策略添加到已有策略后,

    当前场景则是添加到drop策略后,则“允许192.168.216.55这台机器访问”策略则不会生效。

    正确命令:

    iptables -I INPUT -s 192.168.216.55/32 -p tcp --dport 22 -j ACCEPT

    [root@GDY-TEST07 etc]# iptables -L -n --line-number
    Chain INPUT (policy ACCEPT)
    num  target     prot opt source               destination         
    1    ACCEPT     tcp  --  192.168.216.55       0.0.0.0/0           tcp dpt:22 
    2    ACCEPT     tcp  --  192.168.228.0/24     0.0.0.0/0           tcp dpt:22 
    3    ACCEPT     tcp  --  10.153.97.0/24       0.0.0.0/0           tcp dpt:22 
    4    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:22 
    
    Chain FORWARD (policy ACCEPT)
    num  target     prot opt source               destination         
    
    Chain OUTPUT (policy ACCEPT)
    num  target     prot opt source               destination      
    

    以上所述,只适合上述所说场景。

    因为上述场景drop策略是禁止所有从22端口进行访问。

  • 相关阅读:
    Delphi三层开发小技巧:TClientDataSet的Delta妙用
    Delphi ADOQuery的速度优化
    delphi ADOQUery中错误解决方法"无法为更新定位行。一些值可能已在最后...
    ClientDataSet中修改,删除,添加数据和Delta属性
    学习 SQL 语句
    Delphi处理数据网格DBGrid的编辑框 获取还没有提交到数据集的字段文本
    移动前端头部标签(HTML5 head meta)
    最全面的前端开发指南
    解决jQuery.live在mobile safari(iphone / ipad / ipod)绑定失败的问题
    jQuery滑动选取数值范围插件
  • 原文地址:https://www.cnblogs.com/mustark/p/11189883.html
Copyright © 2011-2022 走看看