iptables的状态检测机制(TCP、UDP、ICMP状态详解) 您所在的位置:网站首页 三星a71重启故障 iptables的状态检测机制(TCP、UDP、ICMP状态详解)

iptables的状态检测机制(TCP、UDP、ICMP状态详解)

2023-09-11 20:54| 来源: 网络整理| 查看: 265

1、UDP连接连接  

  UDP(用户数据包协议)是一种无状态协议,以为这个协议没有序列号。不过,这并不意味着我们不能跟踪UDP连接。虽然没有序列号,但是我们还可以使用其它的一些信息跟踪UDP连接的状态。下面是状态表中关于UDP连接的条目:  

 udp 17 19 src=192.168.1.2 dst=192.168.1.50 sport=1032 dport=53 [UNREPLIED] src=192.168.1.50 dst=192.168.1.2 sport=53 dport=1032 use=1  

 这个状态表项只有在iptables过滤规则允许建立新的连接时,才能建立。以下的规则可以产生这类状态表项,这两条规则只允许向外的UDP连接:  

iptables -A INPUT -p udp -m state --state ESTABLISHED -j ACCEPT   

iptables -A OUTPUT -p udp -m state --state NEW,ESTABLISHED -j ACCEPT   

上面的状态表项包含如下信息:

        连接的协议是UDP(IP协议号17)

 这个状态表项还有19秒中就超时

2、TCP连接

iptables -A INPUT -p tcp -m state --state ESTABLISHED -j ACCEPT iptables -A OUTPUT -p tcp -m state --state NEW,ESTABLISHED -j ACCEPT

################

Iptables中的有状态 现在我们来解释一下状态  NEW:如果你的主机向远程机器发时一个连接请求,这个数据包状态是NEW.  ESTABLISHED:当联接建立之后,远程主机和你主机通信数据状态为ESTABLISHED  RELATED: 像ftp这样的服务,用21端口传送命令,而用20端口(port模式)或其他端口(PASV模式)传送数据。在已有21端口上建立好连接后发送命令,用20传送的数据,状态是RELATED  1, 默认规则,对所以进入你机器的数据都丢弃,iptables -P INPUT DROP  2, 禁止其他机器主动发起对你机器的连接,但你却可以主动的连接其他机器, 这条可以省去由默认规则处理,iptables -A INPUT -m state --state NEW -j DROP  3, 当你主动连接其他机器之后,再进来的数据就是ESTABLISHED状态了,iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 4, 接下来如果你的机器提供pasv模式的ftp服务(会使用动态的端口来传送数据,这对于有状态的防火墙轻易做到,甚至不用知道它用了哪些端口,因为它会认识到这些数据是RELATED的),  iptables -A INPUT -i ppp0 -p tcp -dport 21 -j ACCEPT iptables -A INPUT -i ppp0 -p udp -dport 21 -j ACCEPT  两条命令就解决了内部用户上网收发E_mail、浏览网页、使用msn聊天等需求 #iptables –A FORWARD –i eth0 –p tcp –m multiport --dports 25,80,110,443,1863 –j ACCEPT #iptables –A FORWARD –i eth0 –p udp --dport 53 –j ACCEPTIptables中的有状态 现在我们来解释一下状态  NEW:如果你的主机向远程机器发时一个连接请求,这个数据包状态是NEW.  ESTABLISHED:当联接建立之后,远程主机和你主机通信数据状态为ESTABLISHED  RELATED: 像ftp这样的服务,用21端口传送命令,而用20端口(port模式)或其他端口(PASV模式)传送数据。在已有21端口上建立好连接后发送命令,用20传送的数据,状态是RELATED  1, 默认规则,对所以进入你机器的数据都丢弃,iptables -P INPUT DROP  2, 禁止其他机器主动发起对你机器的连接,但你却可以主动的连接其他机器, 这条可以省去由默认规则处理,iptables -A INPUT -m state --state NEW -j DROP  3, 当你主动连接其他机器之后,再进来的数据就是ESTABLISHED状态了,iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 4, 接下来如果你的机器提供pasv模式的ftp服务(会使用动态的端口来传送数据,这对于有状态的防火墙轻易做到,甚至不用知道它用了哪些端口,因为它会认识到这些数据是RELATED的),  iptables -A INPUT -i ppp0 -p tcp -dport 21 -j ACCEPT iptables -A INPUT -i ppp0 -p udp -dport 21 -j ACCEPT  两条命令就解决了内部用户上网收发E_mail、浏览网页、使用msn聊天等需求 #iptables –A FORWARD –i eth0 –p tcp –m multiport --dports 25,80,110,443,1863 –j ACCEPT #iptables –A FORWARD –i eth0 –p udp --dport 53 –j ACCEPT

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有