ShadowSocks每日自动更新 / 获取端口

Bookmark(0)

No account yet? Register

由于ShadowSocks的端口日常被GFW封禁, 我写了个脚本使用crontab定时运行:

#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
htmlName=/xxxxxxxx/ShadowSocksPort.html
now=`cat $htmlName`
echo $now
temp=$(python -c 'import random;print random.randint(xxxx,xxxx)')
echo $temp
sed -i "s/$now/$temp/" /etc/ShadowSocks/ssConfig.json
sed -i "s/$now/$temp/" /xxxxxxxx/ShadowSocksPort.html
ssserver -c /etc/ShadowSocks/ssConfig.json -d restart

 

这段代码会每天更改ShadowSocks的配置文件, 使用随机数替代端口数字, 并将这个数字更新到一个文本文件中, 例如一个html页面.

随机函数调用了python函数, 所以服务器要先安装好python.
但是每天打开网页查看新端口并手动更新本地的ShadowSocks太过麻烦, 我又用QT写了一个程序, 可以一件从网页上获取端口字符串, 更新到配置文件里, 并重启ShadowSocks.

github链接
目前看来还是很有效的, 但程序还有一些小问题, 如开机自启动还需要测试, 获取按钮大小不一致, 还想再加一个通过域名得到ip地址的功能 (虽然我用不上包括这个的大多数功能).
如果我哪天兴致来了会加上, 加上了会更新这篇文章.
另外这个程序可以识别记录ShadowSocks的路径, 可以进行开启, 关闭, 重启等功能, 支持系统托盘操作, 所以可以套在ShadowSocks本体外边拿来当启动器用.

Posted in 个人博文, 技术.

发表评论

邮箱地址不会被公开。 必填项已用*标注