- 精华
- 阅读权限
- 110
- 好友
- 相册
- 分享
- 听众
- 收听
- 注册时间
- 2022-7-23
- 在线时间
- 小时
- 最后登录
- 1970-1-1
|
本帖最后由 i85201314 于 2024-1-9 17:37 编辑
用于监控服务器的脚本,记录IP访问,
我是写来监控梦幻诛仙的,你们修改一下 Nginx_BtPython3_Java.sh 就可以
Nginx_BtPython3_Java.sh 代码如下
主要监控 python3宝塔 nginx站点 java
启动 ./Nginx_BtPython3_Java.sh &
- #!/bin/bash
- #-----------------------------
- # 2024.01.09 第二版
- # 主要用来检查异常访问
- # 端口自己改就可以
- # 定期删除 rm -rf /root/i8520_bt_logs/nginx_bt-python3_java.log.X
- #-----------------------------
- Nginx_BtPython3_Java(){
- MY_LOGS_DIR='/root/i8520_bt_logs'
- if [[ ! -f ${MY_LOGS_DIR}/lock ]]
- then
- mkdir -p ${MY_LOGS_DIR}
- echo "" > ${MY_LOGS_DIR}/lock
- fi
- # 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'
- #输出到 /root/i8520_bt_logs/nginx_bt-python3_java.log
- MY_LOG="${MY_LOGS_DIR}/nginx_bt-python3_java.log"
- 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}
- #过滤重复行 输出到 /root/i8520_bt_logs/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
- #删除旧的日至文件 /root/i8520_bt_logs/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
- # 在网站 开启 防盗链接 限流 在宝塔面板设置
- #-----------------------------
- MY_LOGS_DIR='/tmp/i8520_bt_logs'
- MY_LOGS_DIR_2='/root/i8520_bt_logs'
- if [[ ! -f ${MY_LOGS_DIR}/lock ]]
- then
- mkdir -p ${MY_LOGS_DIR}
- echo "" > ${MY_LOGS_DIR}/lock
- fi
- #-----------------------------
- # 处理
- # /www/wwwlogs/192.168.5.30.error.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} > ${MY_LOGS_DIR}/ip-1.log
- DATA_X=`date +"%Y年 %m月 %d日 %H:%M:%S"`
- echo -e "==============================\n${DATA_X}" >> ${MY_LOGS_DIR}/ipx-1.log
- echo "NGINX 主要是下载的IP" >> ${MY_LOGS_DIR}/ipx-1.log
- sort -k2n ${MY_LOGS_DIR}/ip-1.log | awk '{if ($0!=line) print;line=$0}' >> ${MY_LOGS_DIR}/ipx-1.log
- sleep 0.5s
- #-----------------------------
- # 处理
- # /root/i8520_bt_logs/nginx_bt-python3_java.log.X
- #-----------------------------
- cat ${MY_LOGS_DIR_2}/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'> ${MY_LOGS_DIR}/ip-2.log
- echo -e "==============================\n主要是访问IP的\n读取时间${DATA_X}" >> ${MY_LOGS_DIR}/ipx-2.log
- sort -k2n ${MY_LOGS_DIR}/ip-2.log | awk '{if ($0!=line) print;line=$0}' >> ${MY_LOGS_DIR}/ipx-2.log
- #-----------------------------
- # 合并文件
- #-----------------------------
- cat ${MY_LOGS_DIR}/ipx-1.log >> ${MY_LOGS_DIR}/MY_IP_LOGS_I8520.LOG
- cat ${MY_LOGS_DIR}/ipx-2.log >> ${MY_LOGS_DIR}/MY_IP_LOGS_I8520.LOG
- #-----------------------------
- # 读取文件
- #-----------------------------
- cat ${MY_LOGS_DIR}/MY_IP_LOGS_I8520.LOG
- #-----------------------------
- # 删除文件
- #-----------------------------
- rm -rf ${MY_LOGS_DIR}/ip-1.log
- rm -rf ${MY_LOGS_DIR}/ipx-1.log
- rm -rf ${MY_LOGS_DIR}/ip-2.log
- rm -rf ${MY_LOGS_DIR}/ipx-2.log
- rm -rf ${MY_LOGS_DIR}/MY_IP_LOGS_I8520.LOG
复制代码 #-------------------------------------------------------------------
使用流程
./Nginx_BtPython3_Java.sh & 这个是要在关闭服务器后需要在执行一次,这个会在后台循环执行
./iplog.sh 每次启动时使用
或者 ./iplog-1.sh 这个显示归属地
#------------------------------------------------------------------
记得定期清理
rm -rf /root/i8520_bt_logs/nginx_bt-python3_java.log.X
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
x
|