conntrack

举报
yd_224301282 发表于 2023/07/28 17:36:58 2023/07/28
【摘要】 conntrack NAT ipvs 状态防火墙连接跟踪可以让 Netfilter 知道某个特定连接的状态。运行连接跟踪的防火墙称作 带有状态机制 的防火墙,以下简称为 状态防火墙状态防火墙有以下5种状态StateCommentNEWNEW说明这个包是我们看到的第一个包。意思就是,这是 conntrack模块看到的某个连接第一个包 ,它即将被匹配了。比如,我们看到一个SYN 包,是我们所留意...

conntrack

NAT

ipvs

状态防火墙

  • 连接跟踪可以让 Netfilter 知道某个特定连接的状态。运行连接跟踪的防火墙称作 带有状态机制 的防火墙,以下简称为 状态防火墙

  • 状态防火墙有以下5种状态

    • State Comment
      NEW NEW说明这个包是我们看到的第一个包。意思就是,这是 conntrack模块看到的某个连接第一个包 ,它即将被匹配了。比如,我们看到一个SYN 包,是我们所留意的连接的第一个包,就要匹配它。第一个包也可能不是SYN包,但它仍会被认为是NEW状态。这样做有时会导致一些问题,但对某些情况是有非常大的帮助的。例如,在 我们想恢复某条从其他的防火墙丢失的连接时,或者某个连接已经超时,但实际上并未关闭时
      ESTABLISHED ESTABLISHED已经注意到两个方向上的数据传输,而且会继续匹配这个连接的包。处于ESTABLISHED状态的连接是非常容易理解的。只要发送并接到应答,连接就是ESTABLISHED的了。一个连接要从NEW变为ESTABLISHED, 只需要接到应答包即可,不管这个包是发往防火墙的,还是要由防火墙转发的 。ICMP的错误和重定向等信息包也被看作是ESTABLISHED,只要它们是我 们所发出的信息的应答
      RELATED RELATED是个比较麻烦的状态。当一 个连接和某个已处于ESTABLISHED状态的连接有关系时,就被认为是RELATED的了。换句话说,一个连接要想是RELATED的, 首先要有一个ESTABLISHED的连接。这个ESTABLISHED连接再产生一个主连接之外的连接 ,这个新的连接就是RELATED的了,当然前提是conntrack模块要能理解RELATED。ftp是个很好的例子,FTP-data 连接就是和FTP-control有RELATED的。还有其他的例子,比如,通过IRC的DCC连接。有了这个状态,ICMP应答、FTP传输、DCC等才能穿过防火墙正常工作。注意,大部分还有一些UDP协议都依赖这个机制。这些协议是很复杂的,它们把连接信息放在数据包里,并且要求这些信息能被正确理解
      INVALID INVALID说明 数据包不能被识别属于哪个连接或没有任何状态 。有几个原因可以产生这种情况,比如, 内存溢出 , 收到不知属于哪个连接的ICMP错误信息 。一般地,我们DROP这个状态的任何东西
      UNTRACKED
  • TCP在状态防火墙中的状态变化

    • 连接跟踪一看到 SYN 包,就认为这个连接是 NEW 状态,一看到返回的 SYN/ACK 包,就认为连接是 ESTABLISHED 状态
    • state-tcp-connecting.jpg
  • UDP在状态防火墙中的状态变化

    • state-udp-connection.jpg
  • 状态防火墙的使用

    • 针对特定的网段不允许先发起ssh请求,该网段内已经存在的ssh连接不影响

      • iptables -A input -t filter -i eth0 -p tcp -m tcp --dport 22 -m state --state NEW -j DROP
        
    • 不允许RELATED状态的数据包通过,这样ftp类似的协议就会出问题

      • iptables -A INPUT -t filter -m state --state RELATED -j DROP
        

https://blog.csdn.net/dhRainer/article/details/83411428

https://luckymrwang.github.io/2022/04/24/iptables-nat-conntrack的特殊之处/

https://blog.csdn.net/u011897062/article/details/129055500

https://cloud.tencent.com/developer/article/1832908

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。