Iptables防火墙state模块扩展匹配规则

举报
jiangxl 发表于 2022/07/09 23:41:23 2022/07/09
【摘要】 Iptables防火墙state模块扩展匹配规则 state模块也就是conntrack连接追踪的概念,主要作用就是源端到目标端所经过的路由跟踪记录,通过连接跟踪,就可以分析出源端到目标端所经过的地址,...

Iptables防火墙state模块扩展匹配规则

state模块也就是conntrack连接追踪的概念,主要作用就是源端到目标端所经过的路由跟踪记录,通过连接跟踪,就可以分析出源端到目标端所经过的地址,然后判断出有哪些是异常的,哪些是正常的。

连接追踪,第一次建立的请求时NEW状态,基于NEW状态之后,在建立的连接是ESTABLISHED状态,RELATED是相关的连接,INVALID是无效的连接。

一个典型的场景:当本机的80端口向其他客户端发起了请求,但是并不是ESTABLISHED状态,而是NEW状态,此时一定是有问题的,WEB 80端口不会向客户端发起请求,只能是ESTABLISHED状态,此时通过iptables防火墙的state模块就可以很好的解决此问题,当追踪的状态不对时,直接拒绝通行。

案例:允许接收远程主机ssh和http的请求(NEW、ESTABLISHED),响应时仅允许本机回应ssh、http的ESTABLISHED的请求。

接收请求时可能是NEW和ESTABLISHED状态,但是响应是一定只有ESTABLISHED状态,否则就是异常现象,在INPUT添加接收时的规则,在OUTPUT链添加响应时的规则。

1)编写防火墙规则

先添加允许特定状态的规则,随后添加拒绝所有的规则

1.添加允许接收ssh和http NEW和ESTABLSHED请求的规则
[root@jxl-1 ~]# iptables -t filter -I INPUT -p tcp -m multiport --dport 22,80 -m state --state NEW,ESTABLISHED -j ACCEPT
[root@jxl-1 ~]# iptables -A INPUT -j DROP

2.添加允许响应ssh和http ESTABLSHED请求的规则
[root@jxl-1 ~]# iptables -t filter -I OUTPUT -p tcp -m multiport --sport 22,80 -m state --state ESTABLISHED -j ACCEPT
[root@jxl-1 ~]# iptables -A OUTPUT -j DROP

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

2)查看设置的防火墙规则
在这里插入图片描述

3)查看效果

其他主机向本机发送ssh和http请求,接收正常。

在这里插入图片描述

本机主动发起NEW状态,发起异常。

在这里插入图片描述

文章来源: jiangxl.blog.csdn.net,作者:Jiangxl~,版权归原作者所有,如需转载,请联系作者。

原文链接:jiangxl.blog.csdn.net/article/details/125689920

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

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

全部回复

上滑加载中

设置昵称

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

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

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