zoukankan      html  css  js  c++  java
  • iptables基础概念

    数据包流向

            

         规则链

               

         表

             把具有相同功能的规则的集合叫做"表"
             不同功能的规则,我们可以放置在不同的表中进行管理,而iptables已经为我们定义了4种表,每种表对应了不同的功能,而我们定义的规则也都逃脱不了这4种功能的范围

            

     规则说明

           规则:根据指定的匹配条件来尝试匹配每个流经此处的报文,一旦匹配成功,则由规则后面指定的处理动作进行处理

           匹配条件

                 匹配条件分为基本匹配条件与扩展匹配条件

           处理动作

                处理动作在iptables中被称为target(这样说并不准确,我们暂且这样称呼),动作也可以分为基本动作和扩展动作

            

            规则的优先级机制

                 如果报文已经被前面的规则匹配到,iptables则会对报文执行对应的动作,即使后面的规则也能匹配到当前报文,很有可能也没有机会再对报文执行相应的动作了.如果报文先被第一条规则匹配到了,于是当前报文被”放行”了.因为报文已经被放行了,所以即使第二条规则即使能够匹配到刚才”放行”的报文,也没有机会再对刚才的报文进行丢弃操作了.这就是iptables的工作机制。 规则的顺序很重要

           表的优先级机制

                   同一个表中的规则按照从上到下依次匹配

                   不同表中的规则先匹配表的优先级,然后再按照单个表中的规则从上到下依次匹配

               

    表的增删改查

           查询

                 iptables -nvL INPUT --line

           添加         

                 注意点:添加规则时,规则的顺序非常重要
                 命令语法:iptables -t 表名 -A 链名 匹配条件 -j 动作
                 示例:iptables -t filter -A INPUT -s 192.168.1.146 -j DROP

                 在指定表的指定链的首部添加一条规则,-I选型表示在对应链的开头添加规则
                 命令语法:iptables -t 表名 -I 链名 匹配条件 -j 动作
                 示例:iptables -t filter -I INPUT -s 192.168.1.146 -j ACCEPT

                 在指定表的指定链的指定位置添加一条规则
                 命令语法:iptables -t 表名 -I 链名 规则序号 匹配条件 -j 动作
                 示例:iptables -t filter -I INPUT 5 -s 192.168.1.146 -j REJECT

                 设置指定表的指定链的默认策略(默认动作),并非添加规则
                 命令语法:iptables -t 表名 -P 链名 动作
                 示例:iptables -t filter -P FORWARD ACCEPT
                 上例表示将filter表中FORWARD链的默认策略设置为ACCEPT

           修改

                命令语法:iptables -t 表名 -R 链名 规则序号 规则原本的匹配条件 -j 动作
                示例:iptables -t filter -R INPUT 3 -s 192.168.1.146  -j  ACCEPT

                2.先通过编号删除规则.再在原编号位置添加一条规则

           删除

              按照规则序号删除规则,删除指定表的指定链的指定规则.-D选项表示删除对应链中的规则。
              命令语法:iptables -t 表名 -D 链名 规则序号
              示例:iptables -t filter -D INPUT 3
              上述示例表示删除filter表中INPUT链中序号为3的规则

     规则策略

             iptables -t filter -A INPUT ! -s 192.168.227.154 -j ACCEPT

             

            正确的理解> 只要报文的源IP不是192.168.227.154, 那么就接收此报文
                                 换句话说就是,报文的源IP不是192.168.227.154时会被接收,并不能代表报文的源IP是192.168.227.154时会被拒绝
                                 当来自192.168.227.154的报文经过INPUT链时,并不能匹配上例中的规则.于是此报文就继续匹配后面的规则,可是上例中只有一条规则,这条规则后面没有其他可以匹配的规则,于是此报文就会去匹配当前链的默认动作(默认策略)

                                 而上例中 INPUT链的默认动作为ACCEPT.所以,来自192.168.227.154的ping报文就被接收了.如果,把上例中INPUT链的默认策略改为DROP,那么154的报文将会被丢弃

           错误的理解> 只要报文的源IP是192.168.227.154,那么就不接收此报文

           

  • 相关阅读:
    URAL——DFS找规律——Nudnik Photographer
    URAL1353——DP——Milliard Vasya's Function
    URAL1203——DPor贪心——Scientific Conference
    递推DP HDOJ 5389 Zero Escape
    区间DP UVA 1351 String Compression
    树形DP UVA 1292 Strategic game
    Manacher HDOJ 5371 Hotaru's problem
    同余模定理 HDOJ 5373 The shortest problem
    递推DP HDOJ 5375 Gray code
    最大子序列和 HDOJ 1003 Max Sum
  • 原文地址:https://www.cnblogs.com/yxh168/p/15565608.html
Copyright © 2011-2022 走看看