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,那么就不接收此报文

           

  • 相关阅读:
    我的游戏学习日志30——(对)游戏性的分析(4)
    我的游戏学习日志29——(对)游戏性的分析(3)
    我的游戏学习日志28——(对)游戏性的分析(2)
    我的游戏学习日志27——(对)游戏性的分析(1)
    我的游戏学习日志26——游戏的基础(4)
    我的游戏学习日志25——游戏的基础(3)
    我的游戏学习日志24——游戏的基础(2)
    我的游戏学习日志23——游戏的基础(1)
    在已有Win7/10系统电脑中加装Ubuntu18.04(安装双系统)
    pixhawk入门
  • 原文地址:https://www.cnblogs.com/yxh168/p/15565608.html
Copyright © 2011-2022 走看看