上一周我写了个 使用ShadowsocksR Python客户端 快速验证SSR账号是否可用 教程,然后受启发又写了个 『原创』ShadowsocksR 批量 快速验证账号可用性 一键脚本 的脚本,然后又受启发,觉得在服务器上面看测试结果太麻烦,那么干脆就在网页上看好了,于是我拿着我以前写过的 『原创』多服务器 云探针、云监控 —— ServerStatus 一键管理脚本 改了改,就实现了本文章介绍的脚本。
Github项目:https://github.com/ToyoDAdoubiBackup/SSRStatus
示例网站:sstz.toyoo.pw
本脚本支持 IPv6账号测试,前提是你的服务器也支持 IPv6,因为我的演示网站的服务器不支持所以IPv6的账号会显示不可用。
系统要求
CentOS 6+ / Debian 6+ / Ubuntu 14.04 +
推荐 Debian 8 x64,这个是我一直使用的系统,我的脚本在这个系统上面出错率最低。
本脚本需要使用到ShadowsocksR Python服务端(即客户端,两者同时运行不影响)!
注意,SSRStatus 不同于 ServerStatus 它没有客户端,脚本作为服务端(也可以说是客户端),通过 crontab 定时执行脚本检测账号,并输出结果到JSON文件,然后JS会读取JSON并显示到HTML(网页)上面。
脚本版本
Ver: 1.0.5
安装步骤
执行下面的代码下载并运行脚本。
wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/ssrstatus.sh && chmod +x ssrstatus.sh && bash ssrstatus.sh
下载并运行脚本后会出现脚本操作菜单,选择并输入 1
就会开始安装。
简单步骤
首先安装服务端,安装过程中会提示:
是否由脚本自动配置HTTP服务(服务端的在线监控网站)[Y/n] # 如果你不懂,那就直接回车,如果你想用其他的HTTP服务自己配置,那么请输入 n 并回车。 # 注意,当你曾经安装过 服务端,同时没有卸载Caddy(HTTP服务),那么重新安装服务端的时候,请输入 n 并回车。
然后会提示你输入网站服务器的域名和端口,如果没有域名可以直接回车代表使用 本机IP:8888。
然后部署完 HTTP服务,就会让你设置 检测间隔时间。
请选择你要设置的ShadowsocksR账号检测时间间隔(如账号很多,请不要设置时间间隔过小) 1. 5分钟 2. 10分钟 3. 20分钟 4. 30分钟 5. 40分钟 6. 50分钟 7. 1小时 8. 2小时 9. 自定义输入 (默认: 2. 10分钟):
我们还需要设置一下ShadowsocksR子目录变量,打开脚本文件
vi ssrstatus.sh # 按 I键 进入编辑模式,然后修改后按 ESC键 退出编辑模式,并输入 :wq 保存并退出
然后我们找到第 16行的 SSR_folder="/root/shadowsocksr/shadowsocks"
参数,修改引号内的ShadowsocksR目录名,必须设置为 ShadowsocksR子目录的绝对路径,并且最后一位不能加上 "/"。
注意:如果你用的是我的ShadowsocksR一键脚本,那么位置即是:/usr/local/shadowsocksr/shadowsocks
最后 添加账号配置即可。
使用说明
进入下载脚本的目录并运行脚本:
# 管理菜单 ./ssrstatus.sh # 检测所有账号配置(快捷参数) ./ssrstatus.sh t # 检测单独账号配置(快捷参数) ./ssrstatus.sh o # 检测自定义账号配置(快捷参数) ./ssrstatus.sh a # 查看日志输出(快捷参数) ./ssrstatus.sh log
运行脚本后选择你要执行的选项即可。
SSRStatus 一键安装管理脚本 [vx.x.x] -- Toyo | doub.io/shell-jc4 -- 0. 升级脚本 ———————————— 1. 安装 依赖及Web网页 2. 卸载 依赖及Web网页 ———————————— 3. 测试 所有账号 4. 测试 单独账号 5. 测试 自定义账号 ———————————— 6. 设置 配置信息 7. 查看 配置信息 8. 查看 运行日志 9. 设置 定时间隔 ———————————— 当前状态: Web网页 已安装 请输入数字 [0-9]:
其他操作
Caddy(HTTP服务):
网页文件:/usr/local/SSRStatus
配置文件:ssr_status.conf(和脚本在同一个目录中)
查看日志:cat ssr_status.log(和脚本在同一个目录中)
其他说明
修改网页标题或公告
如果要修改网页标题或者网页顶部公告内容,打开 /usr/local/SSRStatus/index.html
文件修改即可,很显眼。
批量添加账号配置
提示wget: unknown host “raw.githubusercontent.com” 之类的错误
提示 wget: command not found 的错误
Caddy启动失败,打开 http://ip 显示的是 It works !
升级脚本
升级脚本只需要运行脚本,然后选择并输入 0 回车即可,会自动检测最新版本并下载,当然重新下载脚本文件也可以,会自动覆盖原文件。
更新日志
2017年08月04日,版本 v1.0.5
1.更新 脚本内 逗比云地址(旧域名被墙,更换新域名)。
2017年05月20日,版本 v1.0.4
1.新增 参数 o 可快捷测试单独账号。
2.新增 账号测试失败后,会再尝试一次,提高测试准确性。
2017年05月20日,版本 v1.0.3
1.新增 本地端口随机,避免当脚本在定时测试账号时,手动运行脚本测试导致端口冲突。
2.修复 小概率ShadowsocksR客户端无法停止问题(如 第1条 说的端口冲突)。
3.更换 启动方式为 nohup方式启动,可多开ShadowsocksR客户端(如 第1条)
2017年05月19日,版本 v1.0.2
1.新增 ipv6账号测试支持。
2017年05月19日,版本 v1.0.1
1.修复 一开始安装后,配置定时任务,脚本目录识别错误的BUG
2017年05月19日,版本 v1.0.0
1. 推出 正式版。
转载请超链接注明:逗比根据地 » 『原创』ShadowsocksR/SS账号 在线云监控 — SSRStatus 一键脚本
责任声明:本站一切资源仅用作交流学习,请勿用作商业或违法行为!如造成任何后果,本站概不负责!
你说的端口被封并不准确,实际上是最近墙改变了封禁方式,改成了回程TCP封锁,也就是TCP(和UDP)封锁,Ping 是 ICMP 所以正常。
你的监控服务器在国外,那么肯定不会被国内的墙封锁啊。
SSRStatus 只能监控 SS/SSR账号可用性,而不能监控 SS/SSR账号是否被墙(除非监控放国内服务器)
不过评论里不适合交流复杂的问题,你去 Telegram群组(TG使用教程) 联系我。
rm -rf ssrstatus.sh
删除脚本即可。/root/shadowsocksr/shadowsocks
改成你的ShadowsocksR服务端子目录即可。例如:你的SSR子目录为:/root/shadowsocksr/shadowsocks,那么就写 /root/shadowsocksr/shadowsocks
你的SSR子目录为:/usr/local/shadowsocksr/shadowsocks,那么就写 /usr/loacl/shadowsocksr/shadowsocks
你的SSR子目录为:/etc/shadowsocksr/shadowsocks,那么就写 /etc/shadowsocksr/shadowsocks
这有什么难的?