如何用Shell脚本来解决DOS安全Linux服务器生产
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,今天就跟大家聊聊有关如何用Shell脚本来解决DOS安全Linux服务器生产,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。导读在计算机科学中,
千家信息网最后更新 2026年11月01日如何用Shell脚本来解决DOS安全Linux服务器生产
今天就跟大家聊聊有关如何用Shell脚本来解决DOS安全Linux服务器生产,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
| 导读 | 在计算机科学中, Shell俗称壳(用来区别于核),是指"为使用者提供操作界面"的软件( 命令解析器);它类似于DOS下的command.com和后来的cmd.exe;它接收用户 命令,然后调用相应的应用程序。 |
根据web日志或者或者网络连接数,监控当某个IP并发连接数或者短时内PV达到100,即调用防火墙命令封掉对应的IP,监控频率每隔3分钟。
防火墙命令为:
iptables -I INPUT -s 10.0.0.10 -j DROP
先来Web日志
开发思路分析:
1、分析出IP地址,然后去重,搞定各个IP的访问次数,可以放到文件里。
[root@oldboy scripts]# awk '{print $1}' access_2010-12-8.log|sort|uniq -c|sort -rn|head 35 59.33.26.105 23 123.122.65.226 8 124.115.4.18[root@oldboy scripts]# awk '{S[$1]++}END{for(k in S) print S[k],k}' access_2010-12-8.log|sort -rn|head35 59.33.26.10523 123.122.65.2268 124.115.4.18IP的访问次数到100,就封掉
需要if条件句
读1的去重结果文件,可用while
最终答案
[root@oldboy scripts]# cat exam05.sh#!/bin/bashwhile truedo awk '{S[$1]++}END{for(k in S) print S[k],k}' access_2010-12-8.log|sort -rn|head >/tmp/ip.log while read line do ip=`echo $line|awk '{print $2}'` count=`echo $line|awk '{print $1}'` if [ $count -ge 36 -a `grep -w "$ip" /tmp/drop_$(date +%F).ip|wc -l` -lt 1 ] then iptables -I INPUT -s $ip -j DROP && echo -e "$ipt `date +%F`" >>/tmp/drop_$(date +%F).ip fi done /tmp/ip.log sleep 5done如果是网络日志
从生产环境拉取netstat.log测试
[root@oldboy scripts]# awk -F "[ :]+" '/EST.*$/{print $(NF-3)}' netstat.log |awk '{S[$1]++}END{for(k in S)print S[k],k}'|sort -rn|head4 118.242.18.1773 123.6.8.2233 114.250.252.1272 123.244.104.422 121.204.108.1601 59.53.166.1651 58.45.107.1891 42.95.73.1521 42.196.246.1801 36.46.160.100如果是工作中可以netstat -an|awk -F "[ :]+" '/EST.*$/{print $(NF-3)}'分析
最终答案
[root@oldboy scripts]# cat exam05.sh#!/bin/bashwhile truedo awk -F "[ :]+" '/EST.*$/{print $(NF-3)}' netstat.log |awk '{S[$1]++}END{for(k in S)print S[k],k}'|sort -rn|head >/tmp/ip.log while read line do ip=`echo $line|awk '{print $2}'` count=`echo $line|awk '{print $1}'` if [ $count -ge 36 -a `grep -w "$ip" /tmp/drop_$(date +%F).ip|wc -l` -lt 1 ] then iptables -I INPUT -s $ip -j DROP && echo -e "$ipt `date +%F`" >>/tmp/drop_$(date +%F).ip fi done /tmp/ip.log sleep 5done看完上述内容,你们对如何用Shell脚本来解决DOS安全Linux服务器生产有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。
命令
生产
内容
日志
分析
安全
服务器
脚本
服务
文件
次数
答案
网络
防火墙
监控
防火
使用者
句读
地址
应用程序
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网佳科技有限公司
北京路客互联网科技有限公司
互联网科技工作委员会副主任毛军
互联网科技公司华为
互联网扶贫科技
科技服务与互联网
嘟嘟瓜互联网科技
世界互联网领先科技成果
智慧科技互联网
互联网科技公司做什么
剑昆互联网络科技有限公司临桂
福州新华互联网科技学校 知乎
互联网企业和科技型企业
互联网科技革命什么开始
上海科技产业互联网平台
互联网科技实习生岗位
九思连强互联网电子科技有限公司
互联网科技收购价值
亚光科技低轨卫星互联网
长沙易易互联网科技有限公司
互联网与科技
金融科技还是互联网
互联网科技的英文
凡科互联网科技
承德科技产业互联网发展
世界互联网科技公司市值排名
洛阳昕诺飞互联网科技有限公司
中天科技中国工业互联网
福建互联网展示科技馆设计
互联网科技大佬云集