码迷,mamicode.com
首页 > 其他好文 > 详细

iptables补充

时间:2015-05-26 19:09:22      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:iptables   recent   nf_conntrack   connlimit   

 

----------------------------------------

一、connlimit模块


模块实现实现连接数限定


connlimit  
    --connlimit-above [num]    :连接数限定

# iptables -A INPUT -s 172.16.0.0/16 -p tcp --dport 80 -m connlimit ! --connlimit-above 5 -j ACCEPT    #默认为DROP时,表示不超过5个连接数时,允许访问

 

----------------------------------------

二、recent模块


模块实现限制一段时间内的连接数

 

利用iptables的recent模块来抵御DOS攻击,建立一个列表,保存有所有访问过指定的服务的客户端IP


示例:防御SSH暴力破解

1.利用connlimit模块将单IP的并发设置为3;会误杀使用NAT上网的用户,可以根据实际情况增大该值;

2.利用recent和state模块限制单IP在300s内只能与本机建立2个新连接。被限制五分钟后即可恢复访问。

# iptables -I INPUT -p tcp --dport 22 -m connlimit --connlimit-above 3 -j DROP
# iptables -I INPUT  -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH
# iptables -I INPUT  -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 300 --hitcount 3 --name SSH -j LOG --log-prefix "SSH Attach: "
# iptables -I INPUT  -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 300 --hitcount 3 --name SSH -j DROP

下面对最后两句做一个说明:

1.第二句是记录访问tcp 22端口的新连接,记录名称为SSH  
--set 记录数据包的来源IP,如果IP已经存在将更新已经存在的条目

2.第三句是指SSH记录中的IP,300s内发起超过3次连接则拒绝此IP的连接。  
--update 是指每次建立连接都更新列表;  
--seconds必须与--rcheck或者--update同时使用  
--hitcount必须与--rcheck或者--update同时使用

3.iptables的记录:/proc/net/xt_recent/SSH

也可以使用下面的这句记录日志:  
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --name SSH --second 300 --hitcount 3 -j LOG --log-prefix "SSH Attack"

 

三、nf_conntrack模块


模块实现iptables访问跟踪记录

 

跟踪记录文件路径:/proc/net/nf_conntrack

跟踪记录数配置文件:/proc/sys/net/nf_conntrack_max

已建立连接的状态的追踪时长,默认情况下timeout 是5天(432000秒):/proc/sys/net/ipv4/netfilter/nf_conntrack_tcp_timeout_established

 

如果高并发应用场景下必须启用追踪,则尽可能调大nf_conntrack_max,调小nf_conntrack_tcp_timeout_established

本文出自 “Arvin Lau” 博客,请务必保留此出处http://64314491.blog.51cto.com/2784219/1655339

iptables补充

标签:iptables   recent   nf_conntrack   connlimit   

原文地址:http://64314491.blog.51cto.com/2784219/1655339

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!