- 打卡等级:无名新人
- 打卡总天数:2
- 打卡月天数:0
- 打卡总奖励:32
- 最近打卡:2023-03-12 13:14:18
高级会员
- 积分
- 830
|
用于监控服务器的脚本,记录IP访问,
我是写来监控梦幻诛仙的,你们修改一下 Nginx_BtPython3_Java.sh 就可以
shell脚本.zip
(1.46 KB, 下载次数: 0)
Nginx_BtPython3_Java.sh 代码如下
主要监控 python3宝塔 nginx站点 java
启动 ./Nginx_BtPython3_Java.sh &
- #!/bin/bash
- #-----------------------------
- # 2024.01.09 第一版
- # 主要用来检查异常访问
- # 端口自己改就可以
- #-----------------------------
- Nginx_BtPython3_Java(){
- # nginx web 检查网站访问IP
- MY_NGINX='nginx'
- # 网站端口
- MY_NGINX_PORT='1314'
- # 宝塔 web
- MY_PYTHON='python3'
- # 宝塔 端口
- MY_PYTHON_PORT='1315'
- #java web 访问IP
- MY_JAVA='java'
- # java 端口
- MY_JAVA_PORT='1316'
- #输出到 /tmp/nginx_bt-python3_java.log
- MY_LOG='/tmp/nginx_bt-python3_java.log'
- FILTER_IP=``
- netstat -nap | grep "${MY_NGINX}" | grep "${MY_NGINX_PORT}" | awk '{print $5}' | \
- grep -E -o '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' >> ${MY_LOG}
- netstat -nap | grep "${MY_PYTHON}" | grep "${MY_PYTHON_PORT}" | awk '{print $5}' | \
- grep -E -o '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' >> ${MY_LOG}
- netstat -nap | grep "${MY_JAVA}" | grep "${MY_JAVA_PORT}" | awk '{print $5}' | \
- grep -E -o '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' >> ${MY_LOG}
- #过滤重复行 输出到 /tmp/nginx_bt-python3_java.log.X
- DATA_X=`date +"%Y年 %m月 %d日 %H:%M:%S"`
- echo "${DATA_X}" >> ${MY_LOG}.X
- sort -k2n ${MY_LOG} | awk '{if ($0!=line) print;line=$0}' >> ${MY_LOG}.X
- #删除旧的日至文件 /tmp/nginx_bt-python3_java.log
- rm -rf ${MY_LOG}
- }
- # 每隔10秒执行一次
- while true ; do
- sleep 10s
- Nginx_BtPython3_Java
- done
iplog.sh
启动 ./iplog.sh
- #!/bin/bash
- #-----------------------------
- # 2024.01.09 第一版
- # 配合 inx_BtPython3_Java.sh 脚本使用,
- # 需要先执行inx_BtPython3_Java.sh
- # 在网站 开启 防盗链接 限流 在宝塔面板设置
- #-----------------------------
- #删除文件
- rm -rf /ip.log
- rm -rf /ipx.log
- #你的网站IP
- WEB_IP='192.168.5.30'
- WWWlogs="/www/wwwlogs/${WEB_IP}.error.log"
- grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' ${WWWlogs} >/ip.log
- DATA_X=`date +"%Y年 %m月 %d日 %H:%M:%S"`
- echo -e "==============================\n${DATA_X}" >> /ipx.log
- echo "NGINX 主要是下载的IP" >> /ipx.log
- sort -k2n /ip.log | awk '{if ($0!=line) print;line=$0}' >>/ipx.log
- sleep 0.5s
- cat /tmp/nginx_bt-python3_java.log.X | \
- grep -E -o '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | \
- sed 's/0.0.0.0//g'> /ip.log
- echo -e "==============================\n主要是访问IP的\n读取时间${DATA_X}" >> /ipx.log
- sort -k2n /ip.log | awk '{if ($0!=line) print;line=$0}' >>/ipx.logcat /ipx.log
#-------------------------------------------------------------------
使用流程
./Nginx_BtPython3_Java.sh & 这个是要在关闭服务器后需要在执行一次,这个会在后台循环执行
./iplog.sh 每次启动时使用
#------------------------------------------------------------------
记得定期清理
rm -rf /tmp/nginx_bt-python3_java.log.X
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
|