linux 防ip攻击,Linux使用CCKiller防御少量IP高并发CC攻击(防刷站)

CCKiller:Linux轻量级CC攻击防御工具,秒级检查、自动拉黑和释放。CCKiller 是用于个人低配服务器的轻量级 CC 攻击防御,可以抵挡单个 IP 产生的高并发攻击。

功能特性

①、秒级检查

很多防御脚本都是使用了 Linux 系统的计划任务 crontab 来定时检查的。而 crontab 的最细颗粒是 1 分钟,也就是说脚本最快也只能 1 分钟检查一次。CCKiller利用 while 循环实现秒级检查,实现更细的颗粒。当然,CCKiller 更是被作者写成了系统服务,更加灵活稳定。

②、拉黑时长

CCKiller 可以设置拉黑时长,默认为 10 分钟。当发现有恶意请求时,会自动拉黑目标 IP,并在拉黑时长结束后自动释放。

③、并发阈值

CCKiller 可以设定单个 IP 的最高请求数,如果某个 IP 同时请求数超过了设定的阈值,就会被暂时拉黑一段时间。

④、邮件发送

这个功能没啥好说的,意义并不大。

⑤、并发显示

安装后,直接运行 cckiller 会列出当前系统的请求排行,可以清晰的看到当前请求 IP 和并发数。使用-s 参数还可以继续定制需求,比如 cckiller -s 10 就能显示当前并发数排行前 10 名的 IP。

⑥、手动拉黑

支持手动拉黑,执行后会立即检查,将并发请求超过 n 的 IP 拉黑一段时间,比如 cckiller -k 100 就会将目前超过 100 个请求的 IP 拉黑一段时间,如果没有则不会执行任何拉黑操作。

工具安装:

beda33e06d55?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

默认输入y即可,输入n可进入自定义配置模式。

beda33e06d55?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

默认配置信息,回车确定安装。

The Time interval : 20 s #每 20s 检查一次系统请求情况

The Forbidden Time: 600 s #拉黑时长设为 10 分钟

Adminstrator Email: root@localhost #邮件对象设置为 root@localhost(即关闭邮件发送)

Connections Allow: 100 #单个 IP 并发限制为 100

beda33e06d55?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

安装完成,配置文件目录:/usr/local/cckiller/ck.conf

安装后自动开始检查拦截。

服务控制:

安装后,会将 cckiller 注册成系统服务,这时你就可以使用 service 来控制 cckiller 了。

使用标准的 service 定义,支持 start | stop | restart | status 四个参数。所以,你可以使用

service cckiller stop 来停止 cckiller,也可以使用 service cckiller status 来查看状态。

集成命令

成功安装后,系统还会多出一个 cckiller 的命令,这个命令现有功能如下:

cckiller -h 可以调出帮助信息:

Copyright ©2015 zhang.ge. All rights reserved.

Usage: cckiller [OPTIONS] [N]

N : number of tcp/udp connections (default 100)

OPTIONS:

-h | --help: Show this help screen

-k | --kill: Block the offending ip making more than N connections

-s | --show: Show The TOP "N" Connections of System Current

-k 是拉黑功能,需要在后面带上你想拉黑的并发数,比如 cckiller -k 100 就会拉黑当前请求数大于 100 的 IP 一段时间(和拉黑时长一致)

-s 是显示并发排名,也需要在后面带上数字,比如 cckiller -s 10 就能显示当前并发数排行前 10 名的 IP。

文件结构

脚本安装目录为/usr/local/cckiller,其结构如下:

cckiller/

├── cckiller #主程序

├── log/ #日志目录(ver 1.0.1新增特性)

├── ck.conf #配置文件

├── ignore.ip.list #白名单

└── install.sh #安装和卸载脚本

如果你熟悉 vim 的话,只要编辑 ck.conf 就可以定义工具参数了:

##### Paths of the script and other files

PROGDIR="/usr/local/cckiller"

PROG="/usr/local/cckiller/cckiller"

LOGDIR="/usr/local/cckiller/log"

IGNORE_IP_LIST="/usr/local/cckiller/ignore.ip.list"

IPT="/sbin/iptables"

DKName=CCkiller

DKVer=1.0.5

##### SLEEP_TIME设定检查频率,单位为秒

SLEEP_TIME=10

##### NO_OF_CONNECTIONS设定并发限制

NO_OF_CONNECTIONS=60

##### EMAIL_TO设定邮件的发送对象(请改为自己的邮箱地址)

EMAIL_TO="xxxxx@qq.com"

##### BAN_PERIOD设定拉黑时长,单位为秒

BAN_PERIOD=300

##### 设置忽略端口,比如 21,2121,8000 (默认不忽略)

IGNORE_PORT=

##### 定义日志级别 INFO,DEBUG,WARNING,OFF (默认 INFO)

LOG_LEVEL=INFO

白名单

工具安装时会默认将系统所有 IP 都加入白名单,避免自己把自己给拉黑的尴尬。如果你还有其他要加白的 IP,可以将 IP 加入到 cckiller 安装目录下的 ignore.ip.list 文件中,每行一个。

卸载工具

可以找到安装脚本,使用 ./install.sh -U 来卸载 CCKiller。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值