iptables学习(3)

参考原文网址:
http://man.lupaworld.com/content/network/iptables-tutorial-cn-1.1.19.html#MANGLETABLE

(1)mangle表
可以改变数据包的TOS、TTL、MARK等特性:
TOS操作用来设置或改变数据包的服务类型域;
TTL操作用来改变数据包的生存时间域,我们可以让所有数据包只有一个特殊的TTL。它的存在有 一个很好的理由,那就是我们可以欺骗一些ISP。为什么要欺骗他们呢?因为他们不愿意让我们共享 一个连接。那些ISP会查找一台单独的计算机是否使用不同的TTL,并且以此作为判断连接是否被共享 的标志;
MARK用来给包设置特殊的标记;

(2)nat表
主要有以下:
DNAT:改变的是目的地址
SNAT:改变的是源地址
MASQUERADE:MASQUERADE的作用和MASQUERADE完全一样,只是计算机 的负荷稍微多一点。因为对每个匹配的包,MASQUERADE都要查找可用的IP地址,而 不象SNAT用的IP地址是配置好的。当然,这也有好处,就是我们可以使用通过PPP、 PPPOE、SLIP等拨号得到的地址,这些地址可是由ISP的DHCP随机分配的

(3)filter表
过滤数据包,较为复杂,常用有DROP、ACCEPT、REJECT

状态机制

(1)conntrack
/proc/net/ip_conntrack里的conntrack记录当前被跟踪的连接;除了本地产生的包由OUTPUT链处理外,所有连接跟踪都是在PREROUTING链里进行处理的,意思就是, iptables会在PREROUTING链里从新计算所有的状态。如果我们发送一个流的初始化包,状态就会在OUTPUT链 里被设置为NEW,当我们收到回应的包时,状态就会在PREROUTING链里被设置为ESTABLISHED。如果第一个包不是本地产生的,那就会在PREROUTING链里被设置为NEW状 态。综上,所有状态的改变和计算都是在nat表中的PREROUTING链和OUTPUT链里完成的
(2)数据包在用户空间的状态
NEW
NEW说明这个包是我们看到的第一个 包。意思就是,这是conntrack模块看到的某个连接第一个包,它即将被匹配了。比如,我们看到一个SYN 包,是我们所留意的连接的第一个包,就要匹配它。第一个包也可能不是SYN包,但它仍会被认为是NEW状态

ESTABLISHED
ESTABLISHED已经注意到两个方向上 的数据传输,而且会继续匹配这个连接的包。处于ESTABLISHED状态的连接是非常容 易理解的。只要发送并接到应答,连接就是ESTABLISHED的了。一个连接要从NEW变 为ESTABLISHED,只需要接到应答包即可,不管这个包是发往防火墙的,还是要由防 火墙转发的。ICMP的错误和重定向等信息包也被看作是ESTABLISHED,只要它们是我 们所发出的信息的应答

RELATED
RELATED是个比较麻烦的状态。当一 个连接和某个已处于ESTABLISHED状态的连接有关系时,就被认为是RELATED的了。换句话说,一个连接要想 是RELATED的,首先要有一个ESTABLISHED的连接。这个ESTABLISHED连接再产生一个主连接之外的连接,这 个新的连接就是RELATED的了,当然前提是conntrack模块要能理解RELATED

INVALID
INVALID说明数据包不能被识别属于 哪个连接或没有任何状态。有几个原因可以产生这种情况,比如,内存溢出,收到不知属于哪个连接的ICMP 错误信息。一般地,我们DROP这个状态的任何东西

iptables语法规则

书写规则的语法格式是:

iptables [-t table] command [match] [target/jump]

target指令必须最后;
table处可以指定自己的表名;
match描述了包的特点,如来源IP地址、网络接口、端口、协议等
若数据包符合所有的match属性,内核就用target来处理它或者把它发给target

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • iptabels是与Linux内核集成的包过滤防火墙系统,几乎所有的linux发行版本都会包含iptables的功...
    随风化作雨阅读 10,310评论 1 16
  • 1 前言 防火墙(Firewall),就是一个隔离工具,工作于主机或者网络的边缘,对于进出本主机或本网络的报文,根...
    魏镇坪阅读 11,885评论 1 23
  • 三寸讲台,方寸之间,数十年如一日。粉笔挥洒,描绘成才路。静听朗朗书声,教有道,百年树人。润无声,汩汩清泉,桃李满天...
    移阁眺月阅读 3,255评论 0 0
  • 数据库升级的意义 我们在开发Android应用的时候,不可避免地要使用数据库。而数据库的结构在第一版的时候定下来,...
    Ten_Minutes阅读 3,508评论 0 1
  • 有一次暑假在家烧到41度 但是我没有很害怕 爸叫我穿个长袖外套就开车载我去看医生 给我贴退烧贴还一直夸我额头高、 ...
    小小君阅读 1,711评论 0 0

友情链接更多精彩内容