千家信息网

一个ssh的脚本

发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,第一次写 许多都不会,而且有许多都弄错了。下面是我写的代码供大家参考:#!/bin/bashdate_b=`date "+%m%d%H"`date_c=`date -d "1 day ago" +%m
千家信息网最后更新 2025年12月02日一个ssh的脚本

第一次写 许多都不会,而且有许多都弄错了。下面是我写的代码供大家参考:

#!/bin/bash

date_b=`date "+%m%d%H"`

date_c=`date -d "1 day ago" +%m%d%H`


#ip=`cat /etc/network/interfaces |grep address|awk '{print $2}'|grep -v -E "^192|^127"`

########################################################################################

for c in `cat /etc/network/interfaces |grep address|awk '{print $2}'|grep -v -E "^192|^127"`

do


/bin/netstat -na|grep "$c:22"|awk '{print $5}'|awk -F ":" '{print $1}'|sort |uniq -c |sort -n -r >> iptabsh.txt


for i in `awk '$1>5 {print $2}' iptabsh.txt`

do

a=`grep "^$i$" ipallow.txt | wc -l`

if [ $a -eq 0 ]

then


echo "$i" >> sh$date_b.txt

iptables -I INPUT -s "$i" -p tcp --dport 22 -j DROP

fi


done

done

rm iptabsh.txt


#####################################################

if [ -f sh$date_c.txt ]

then

for i in `cat sh$date_c.txt`

do

iptables -D INPUT -s "$i" -p tcp --dport 22 -j DROP


done

fi


里面很多都不是设置绝对路径,大家可以根据自己存放位置设置绝对路径。


0