当前位置:网站首页 / FRP教程 / 正文

检测远程frps上的端口是否在线杀掉本地进程脚本

时间:2020年04月07日 | 作者 : liuhui | 分类 : FRP教程 | 浏览: 2459次 | 评论 0

博士的frps服务端最近频繁出现frpc连接后端口却不在线,中断运行再重新运行frps又会在线一会,很快又会掉线,但是ps -ef|grep frps|grep -v grep查看进程却还在,针对这个情况修改了之前那个检测远程frps上的端口是否在线自动发送邮件脚本,来实现检测远程frps端口是否在线来杀死frps脚本。

运行该脚本需要安装nmap命令,安装方法:https://diannaobos.com/post/933.html 

如果想改成检测本地端口可以将nmap命令换成下面的netstat命令即可

netstat -nl |grep 202|grep ":::202"|wc -l

kill.sh脚本代码

#!/bin/bash
export LD_LIBRARY_PATH=./
host="frpzj.kskxs.com"
port="2333"

let status=2
while true; do
pos_num=`nmap -Pn $host -p $port|grep "/tcp open"|wc -l`

echo status=$status, pos_num=$pos_num

if [ $status -ne $pos_num ] && [ $pos_num -eq 0 ]
then    
{

	ps -ef | grep frps | grep -v grep| grep -v SCREEN | awk '{print $2}'| xargs kill -9
	echo [`date`]kill > /root/killfrps.log
	let status=$pos_num
	
} else {

let status=$pos_num

}

fi
sleep 10
done

使用方法

screen -S kill
bash ./kill.sh

配合frps守护进程脚本可以实现杀死进程后自动重启frps。注释:加grep -v SCREEN是为了防止杀掉SCREEN进程

推荐您阅读更多有关于“”的文章

猜你喜欢

网站分类
关注电脑博士
友情链接

分享:

支付宝

微信