shell 脚本应用《三》监控当某个IP并发连接数
admin
2023-03-11 21:02:35
0次

根据web日志或者网络连接数,监控当某个IP并发连接数或者段时间内PV连接到达100及使用防火墙命令封堵对应的IP,监控频率每隔3分钟;防火墙命令为:iptables -A INPUT -s 192.168.0.7 -j DROP
查看防火墙iptables -L -n

第一种:监控日志

#!/bin/sh
while true
do
cat access_log.dms|awk '{print $1}'|sort|uniq -c|sort -nr > a.log
exec< a.log
while read line
do
pv=$(echo $line|awk '{print $1}')
ip=$(echo $line|awk '{print $2}')
if [ $pv -gt 1000 ]&& [ iptables -L -n|grep "$ip"|wc -l -eq 0 ];then
iptables -A INPUT -s $ip -j DROP
fi
done
sleep 180
done

说明:

while读文件的写法
1)cat al.log|while read line
do
done

2)execwhile read line
do
done

3)while read line
do
done

sort sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。
-n 按数字进行排序
-r 反向排序
-f会将小写字母都转换为大写字母来进行比较,亦即忽略大小写
uniq 命令 去重
-c 在每一行加上重复的次数
sort -t -k 参数
-t : tables 指定分隔符,默认tab为分隔符
-k: 指定安装哪一个分割区域进行排序

[rocrocket@rocrocket programming]$ cat facebook.txt
banana:30:5.5
apple:10:2.5
pear:90:2.3
orange:20:3.4
[rocrocket@rocrocket programming]$ sort -n -k 2 -t : facebook.txt
#-n 按照数字进行排序
#-t 此例中指定 : 为分隔符
#-k 此例中按照分割的第二区域进行排序
apple:10:2.5
orange:20:3.4
banana:30:5.5
pear:90:2.3
iptables 防火墙
iptables -L -n|grep "$ip"|wc -l 查看相关IP在防火墙里是否有封堵

第二种:监控ip连接数

#!/bin/sh
while true
do
netstat -an|grep EST|awk -F '[ :]+' '{print $6}'|sort|uniq -c >a.log
exec< a.log
while read line
do
pv=$(echo $line|awk '{print $1}')
ip=$(echo $line|awk '{print $2}')
if [ $pv -gt 1000 ]&& [ iptables -L -n|grep "$ip"|wc -l -eq 0 ];then
iptables -A INPUT -s $ip -j DROP
fi
done
sleep 180
done

说明:
netstat -an|grep EST|awk -F '[ :]+' '{print $6}'|sort|uniq -c >a.log

netstat命令

-a (all)显示所有选项,默认不显示LISTEN相关
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态

-p 显示建立相关链接的程序名
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计
-c 每隔一个固定时间,执行该netstat命令。

提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...