利用shell和iptables实现自动拒绝恶意试探连接SSH服务,并发邮件通知管理员。
[root@server ~]# cat ssh.sh
#!/bin/bash
TIME=`date +"%Y-%m-%d %H:%M:%S"`
BADIP=/root/ssh_badip
BKIP=/root/back_ssh_badip
AR=`wc -l $BKIP |awk '{print $1}'`
lastb | awk '{print $3" "$6" "$7}' | awk -F: '{print $1}' |sort |uniq -c|awk '$1 > 5
{print $1" " $2" "$3" "$4}'| awk -vtime="$TIME" '{print time" "$1 " "$2" "$3" "$4}' >$BADIP
cat $BADIP >> $BKIP
for bip in `awk '{print $4}' "$BADIP"`
do
iptables -I INPUT -p tcp --dport 22 -s $bip -j DROP
done
AR2=`wc -l $BKIP |awk '{print $1}'`
VALUE=`echo "$AR2-$AR"|bc`
LAST=`tail -n $VALUE $BKIP`
if [ $VALUE -gt 0 ] ; then
sendmail -t <<EOF
from: cjjwzs@gmail.com
to:38043881@qq.com
subject: 严重警告
$TIME 当前有人正在试探性连接SSH服务,系统已经帮你拦截,查看详情请登录系统。
$LAST
EOF
fi
~
在任务计划中添加
*/15 * * * * /root/ssh.sh
*/20 * * * * cat /var/log/btmp >> /var/log/btmp.bak ; >/var/log/btmp
* */2 * * * service iptables restart
分享到:
相关推荐
利用Iptables实现LVS负载均衡集群研究
通过iptables实现端口转发和内网共享上网
最小的 IPTABLES 防火墙 ...在eth0接口上的端口 80/443(http/https web 服务器)和 22(ssh 服务器)上允许新的 tcp 连接 允许已经建立的 tcp 和 udp 连接 在eth0接口上的端口 53(DNS 服务器)上允许新的
Linux下怎样利用Iptables实现网络防火墙的监控功能.pdf
主要介绍了Shell脚本实现监控iptables运行状态,本文直接给出实现代码,需要的朋友可以参考下
利用linux的iptables限速,讲解了怎么样利用iptables实现限制某一台客户机的上网速度的方法
iptables实现转发ftp的访问请求
最近在调试服务器的iptables,自己做了个定时关iptables,但晚上回家很少开电脑,所以就没法去启动iptables,当然你可能会说,为什么不取消定时关闭iptables,我只能说个人的环境不一样,需求也就不一样. 脚本内容: 代码...
linux下设置iptables实现NAT功能
主要介绍了Shell实现的iptables管理脚本分享,本文脚本实现了添加、删除、查看、停止、启动等,需要的朋友可以参考下
关于iptables防火墙的Shell脚本。一个是其中学习的重点代码,有三个是企业级的应用。有需要的可以看一下啊!
在linux平台上用iptables实现数据转发.pdf
在linux 下不着用TC+IPTables实现下载和上传带宽限制脚本
linux服务器配置之iptables.exe
iptables及firewalld加固服务器安全思维导图
Linux下基于iptables的防火墙设计与实现.pdf
附件为Debian的iptables服务脚本,脚本有详细描述脚本的用法,主要作用时讲iptables像CentOS一样,注册成Linux服务,方便iptables管理
在Linux内核上,netfilter是负责数据包过滤、网络地址转换(NAT)和基于协议类型的连接跟踪等功能的一个子系统,这个子系统包含一些信息包过滤表组成,这些表包含内核用来控制信息包过滤处理的规则集。iptables是一个...
基于Iptables和Linux策略路由的防火墙实现.pdf