Linux iptables简单防攻击脚本(自动过滤白名单)
2013-03-26 08:13
741 查看
Linux iptables简单防攻击脚本(自动过滤白名单)
这里自动分析黑名单及白名单的iptables 脚本(此脚本直接从生产服务器上下载)即/root/deny_100.sh,脚本内容如下(white.txt为企业外 网合法IP)[root@mail ~]# cat /root/deny_100.sh
#/bin/bash
netstat -an| grep :80 | grep -v 127.0.0.1 |awk '{ print $5 }' | sort|awk -F: '{print $1}' | uniq -c | awk '$1 >100' > /root/black.txt
for i in `awk '{print $2}' /root/black.txt`
do
COUNT=`grep $i /root/black.txt | awk '{print \$1}'`
DEFINE="100"
ZERO="0"
if [ $COUNT -gt $DEFINE ];
then
grep $i /root/white.txt > /dev/null
if [ $? -gt $ZERO ];
then
echo "$COUNT $i"
iptables -I INPUT -p tcp -s $i -j DROP
fi
fi
done
2009年3月30日下午14:25分,用下列命令监控时:
netstat -an| grep :25 | grep -v 127.0.0.1 |awk '{ print $5 }' | sort|awk -F: '{print $1}' | uniq -c | awk '$1 >100'
1122 219.136.163.207
17 61.144.157.236
用http://www.ip138.com一查,发现
ip138.com IP查询(搜索IP地址的地理位置)
您查询的IP:219.136.163.207
本站主数据:广东省广州市 电信(荔湾区)
参考数据一:广东省广州市 电信(荔湾区)
参考数据二:广东省广州市荔湾区 电信ADSL
调用deny_100.sh后将此IP Drop掉,再运行./root/count.sh后无显示,显示成功,可用iptables –nL验证,所以将此安全脚本写进crontab里
*/1 * * * * root /bin/sh /root/deny_100.sh
※在这里衷心感谢3158的技术总监,谢谢您的帮助;监视端口视服务器性质而 定,web是80,mail25,其它以此类推;局域网下要测试此iptables的脚本的同志可用webbench模拟并发环境,然后启动此脚本检测其 有效性。好了,关于iptables的技巧及其它使用问题,欢迎来信交流
相关文章推荐
- 自动分析黑名单及白名单的iptables脚本
- Linux-- 简单的程序守护脚本,程序异常退出后自动重启
- linux下shell脚本自动上传或下载脚本及远程服务器相关vsftpd iptables配置
- Linux平台自动部署脚本的一个简单例子
- shell script自动搭建简单的linux系统初始化脚本
- Linux 指令简单将攻击IP列入iptables 限制范围
- iptables防攻击自动黑白名单脚本
- linux下使用git和gradle编译项目,编写简单的自动发布脚本
- linux自动ftp上传与下载文件的简单脚本
- linux下 mysql自动备份脚本
- 在Linux中开机自动运行普通用户脚本程序
- linux 开机自动执行脚本或者一些指定的程序
- linux下oracle自动备份脚本
- 批处理 简单实现mysql 的 window的自动备份脚本
- Linux下mysql5.6.24(二进制)自动安装脚本
- CentOS Linux自动备份MySQL数据库到远程FTP服务器并删除指定日期前的备份Shell脚本(一)
- linux脚本实现自动发送和收取邮件的设置方法
- linux下自动部署Teamcenter Enterprise 的服务端脚本
- Linux常用命令及组件:iptables简单应用
- linux下简单的磁盘报警脚本/crontab无法获取变量