iptables限制同一IP连接数,防防CC/DDOS攻击
启动sftp本机的iptables防火墙功能,限制每个ip连接22端口(sftp连接端口即是ssh端口)最大为50个,当超过50后的连接数的流量就会被DROP掉!同时iptables需要开放50000-65535范围的端口的访问(linux系统最大的端口为65535)[root@localhost ~]# cat /etc/sysconfig/iptables# Firewall configuration written by system-config-firewall# Manual customization of this file is not recommended.*filter:INPUT ACCEPT [0:0]:FORWARD ACCEPT [0:0]:OUTPUT ACCEPT [0:0]-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT-A INPUT -p icmp -j ACCEPT-A INPUT -i lo -j ACCEPT#-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT-A INPUT -p tcp --syn --dport 22 -m connlimit --connlimit-above 50 --connlimit-mask 0 -j DROP-A INPUT -m state --state NEW -m tcp -p tcp --dport 50000:65535 -j ACCEPT#-A INPUT -j REJECT --reject-with icmp-host-prohibited                                //注意这两行需要注释掉!否则设置的策略无效!#-A FORWARD -j REJECT --reject-with icmp-host-prohibitedCOMMIT=================================解释说明===========================================上面限制端口连接数主要用到的模块是connlimit。-A INPUT -p tcp --syn --dport 22 -m connlimit --connlimit-above 50 --connlimit-mask 0 -j DROP说明输入的目标端口是22,也就是访问sftp本机22端口的流量,如果连接数大于50,则DROP流量,connlimit-above这个是连接数的统计,如果大于50就满足条件,connlimit-mask这个是定义那组主机,此处跟的一个数值是网络位,即子网掩码,也就是connlimit-mask 0 这个ip组的连接数大于connlimit-above 50则DROP掉!总体描述为流量过滤端口和连接数以及网络位,如果满足第一条,则拒绝,流量不再匹配下边的规则,如果不匹配,则第二条规则会允许流量。--connlimit-mask 0 即子网掩码为0,表示所有的ip,也就是说不管什么ip,只要连接此服务器的22端口超过3个,则DROP。如果将--connlimit-mask 0去掉,则子网掩码默认是32,也就是说某个ip连接此服务器的22端口超哥50个,则DROP掉!如果有51台机器,每台机器连接一个,则不会被DROP掉!也就是说connlimit-above 3这个的数量所限制的区域是由--connlimit-mask 0而定! | 
================iptables限制同一IP连接数,防防CC/DDOS攻击================
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
22 
23 
24 
25 
26 
27 
28 
29 
30 
31 
32 
33 
34 
35 
 | 
1)限制与80端口连接的IP最大连接数为50,可自定义修改。[root@localhost ~]# iptables -A INPUT -p tcp --dport 80 -m connlimit --connlimit-above 50 -j DROP2)使用recent模块限制同IP时间内新请求连接数。下面策略表示:60秒有10个新连接,超过记录日志。[root@localhost ~]# iptables -A INPUT -p tcp --dport 80 --syn -m recent --name webpool --rcheck --seconds 60 --hitcount 10-j LOG --log-prefix 'DDOS:' --log-ip-options下面策略表示:60秒10个新连接,超过丢弃数据包[root@localhost ~]# iptables -A INPUT -p tcp --dport 80 --syn -m recent --name webpool --rcheck --seconds 60 --hitcount 10 -j DROP可以在iptables配置文件中[root@localhost ~]# vim /etc/sysconfig/iptables    //删除原来的内容输入如下内容 保存# Generated by iptables-save v1.3.5 on Sun Dec 12 23:55:59 2010*filter:INPUT DROP [385263:27864079]:FORWARD ACCEPT [0:0]:OUTPUT ACCEPT [4367656:3514692346]-A INPUT -i lo -j ACCEPT-A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT-A INPUT -p icmp -j ACCEPT-A INPUT -s 127.0.0.1 -j ACCEPT-A INPUT -p tcp -m tcp –dport 80 -m state –state NEW -m recent –set –name WEB –rsource-A INPUT -p tcp -m tcp –dport 80 -m state –state NEW -m recent –update –seconds 5 –hitcount 20 –rttl –name WEB –rsource -j DROP-A INPUT -p tcp -m multiport –ports 21,22,80 -j ACCEPT-A INPUT -p tcp -m tcp –tcp-flags SYN,RST,ACK SYN -m ttl –ttl-eq 117 -j DROP-A INPUT -p tcp -m tcp –tcp-flags SYN,RST,ACK SYN -m length –length 0:40 -j DROP-A INPUT -p tcp -m tcp ! –tcp-flags SYN,RST,ACK SYN -m state –state NEW -j DROPCOMMIT# Completed on Sun Dec 12 23:55:59 2017以上配置,说明此设定仅对外开放21(FTP),22(SSH),80(http网站)三个TCP端口。设置80端口5秒内20个连接。[root@localhost ~]# /etc/init.d/iptables restar | 
iptables限制同一IP连接数,防防CC/DDOS攻击的更多相关文章
- iptables限制连接数(如sftp) 以及 谨防CC/DDOS攻击的配置   ( connlimit模块)
		
之前在公司服务器上部署了sftp,用于上传业务系统的附件.后来由于程序连接问题,使的sftp连接数过多(最多时高达400多个sftp连接数),因为急需要对sftp的连接数做严格限制.操作记录如下: 启 ...
 - 隐藏服务器真实IP的方法来防止DDOS攻击
		
2017-08-22 作者:小唐 点击: 10,500次 在无盘系统的环境下,服务器软件存在漏洞,就容易受到DDOS攻击,隐藏服务器真实IP是解决问题最好的方法,下面小编与大家分享一下隐藏服务器真实I ...
 - linux中Iptables限制同一IP连接数防CC/DDOS攻击方法
		
1.限制与80端口连接的IP最大连接数为10,可自定义修改. 代码如下 复制代码 iptables -I INPUT -p tcp --dport 80 -m connlimit --connlim ...
 - 域名做CDN来通过隐藏服务器真实IP的方法来防止DDoS攻击(转)
		
隐藏服务器真实IP是解决问题最好和最快的方法,但只针对小流量,大流量同样会扛不住. 服务器前端加CDN中转,比如阿里云.百度云加速.360网站卫士.加速乐.安全宝等,如果资金充裕的话,可以购买高防的盾 ...
 - 简单配置vps,防ddos攻击
		
防人之心不可无. 网上总有些无聊或者有意的人.不多说了.上干货,配置vps apf防小流量ddos攻击. 对于大流量的ddos攻击, 需要机房的硬件防火墙,vps内部可能也扛不住. 1. 安装 DDo ...
 - iptables防DDOS攻击和CC攻击设置
		
防范DDOS攻击脚本 #防止SYN攻击 轻量级预防 iptables -N syn-flood iptables -A INPUT -p tcp --syn -j syn-flood iptables ...
 - iptables防DDOS攻击和CC攻击配置
		
防范DDOS攻击脚本 #防止SYN攻击 轻量级预防 iptables -N syn-flood iptables -A INPUT -p tcp –syn -j syn-flood iptables ...
 - 转:nginx防DDOS攻击的简单配置
		
文章来自于: 近期由于工作需要,做了些防DDOS攻击的研究,发现nginx本身就有这方面的模块ngx_http_limit_req_module和ngx_http_limit_conn_module. ...
 - 防DDOS攻击SHELL脚本
		
最近一段时间服务器频繁遭到DDOS攻击,目前只能通过封IP来源来暂时解决.IP不源变化多端,光靠手工来添加简直是恶梦,想了个方法,用SHELL来做. 比较简单,但很实用:) 以下内容根据作者原文进行适 ...
 
随机推荐
- PHP输入流 php://input 相关【转】
			
为什么xml_rpc服务端读取数据都是通过file_get_contents(‘php://input', ‘r').而不是从$_POST中读取,正是因为xml_rpc数据规格是xml,它的Conte ...
 - CF367C. Hard problem
			
链接[http://codeforces.com/group/1EzrFFyOc0/contest/706/problem/C] 题意: 他希望它们按词典顺序排序(就像字典中那样),但他不允许交换其中 ...
 - [2019BUAA软件工程]结对编程感想
			
结对编程感想 写在前面 本博客为笔者在完成软件工程结对编程任务后对于编程过程.最终得分的一些感想与经验分享.此外笔者还对于本课程的结对编程部分提出了一些建议. Tips Link 作业要求博客 2 ...
 - 《Linux内核设计与实现》第四章读书笔记
			
4.1 多任务 多任务操作系统就是能同时并发地交互执行多个进程的操作系统. 多任务系统可以划分为两类: 非抢占式多任务进程会一直执行直到自己主动停止运行 抢占式多任务Linux/Unix使用的是抢占式 ...
 - 第三个Sprint ------第二天
			
主界面代码 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns: ...
 - Windows 7 64位安装cURL
			
安装cURL. 1, 下载64位的SSL版cURL,网址: http://curl.download.nextag.com/download/curl-7.21.7-win64-ssl-sspi.zi ...
 - css3 @media 实现响应式布局
			
使用css3的@media,可以实现针对不同媒体.不同分辨率的响应式布局. 方法1:根据不同分辨率使用不同css文件 <link rel="stylesheet" media ...
 - [CB]IPv6 在中国 - 大规模部署进行中 进展明显
			
IPv6 在中国 - 大规模部署进行中 进展明显 2019年02月04日 08:21 3078 次阅读 稿源:solidot 0 条评论 中国有着世界上最大的网民人口,但它的 IPv6 普及度却处于世 ...
 - PS(光影魔术手)
			
完成
 - 热修改 MySQL 数据库 pt-online-schema-change 的使用详解
			
由于周五公司团建的关系所以此篇推迟了抱歉. 首先不得不在该篇里面梳理一个数据库热增加删除字段表的工具 pt-online-schema-change 这个工具在前面我的博文 <关于utf8mb4 ...