很多人可能还不知道ShadowsocksR Python服务端,实际上也包含了客户端,所以一些Linux用户可以用这个来当客户端,不过今天说的不是ShadowsocksR Python客户端的详细使用教程,而是利用 ShadowsocksR Python客户端来快速验证你的ShadowsocksR账号是否正常可用。
如果你想要批量测试或者简化测试步骤,可以使用我写的脚本:『原创』ShadowsocksR 批量 快速验证账号可用性 一键脚本
适用情况
当你的ShadowsocksR账号无法连接,你又没有其他网络/设备或者不想把账号给别人测试,那么如何快速判断是你的ShadowsocksR账号(服务端)问题还是你本地设置或者网络问题呢?
我们只需要用和ShadowsocksR Python服务端 配套的客户端来快速连接你的ShadowsocksR账号,然后使用 curl 通过代理访问谷歌来确定是否是账号问题。
其他的适用情况不一一说明了(比如,有时候ShadowsocksR服务端正常运行,但是却无法连接)
使用方法
前置准备
首先你要有一个ShadowsocksR Python服务端(客户端与服务端是可以同时运行不会冲突的)。
注意:你服务器A上面的ShadowsocksR服务端的账号无法连接,你不一定非要用服务器A上面的ShadowsocksR客户端来测试验证可用性,其他服务器也行。
其次你需要安装一个 curl 用来使用ShadowsocksR客户端代理测试是否可以的(本来想用wget的,但是它对socks代理支持不好)。
CentOS 系统:
yum update # 如果你以前已经执行过这个命令,那么可以跳过以节省时间 yum install curl -y
Debian/Ubuntu 系统:
apt-get update # 如果你以前已经执行过这个命令,那么可以跳过以节省时间 apt-get install curl -y
运行客户端
首先我们进入ShadowsocksR的子目录,假设你ShadowsocksR安装在 /root
目录,那么:
cd /root/shadowsocksr/shadowsocks
然后我们快速运行,请根据你的ShadowsocksR账号来替换下面的参数内容(为了避免出错,建议每个参数都加上引号)。
python local.py -b 127.0.0.1 -l 1082 -s "IP" -p "端口" -k "密码" -m "加密方式" -O "协议插件" -o "混淆插件" -G "协议参数" -g "混淆参数" -d start
示例说明:
# 例如你的账号是: I P : 1.1.1.1 端口 : 2333 密码 : doub.io 加密 : aes-128-ctr 协议 : auth_aes128_md5 混淆 : tls1.2_ticket_auth # 那么快速运行就是这样写 python local.py -b 127.0.0.1 -l 1082 -s "1.1.1.1" -p "2333" -k "doub.io" -m "aes-128-ctr" -O "auth_aes128_md5" -o "tls1.2_ticket_auth" -d start # 注意: # 如果你要测试的SSR账号就是你当前服务器上的ShadowsocksR服务端的话,同时你的配置是 单用户单端口,那么可以直接使用下面这个简化后的命令运行,因为ShadowsocksR客户端也会默认读取 user-config.json 里面的配置,快速运行代码如果没有指定参数,就会用配置文件内的替换,所以只需要写个本机的公网IP运行即可。 python local.py -b 127.0.0.1 -l 1082 -s "1.1.1.1" -d start
参数说明:
-b 127.0.0.1 #监听本地IP -l 1082 #监听本地1082端口(与1080区分开,避免冲突) -s "IP" #ShadowsocksR账号的 IP -p "port" #... 端口 -k "password" #... 密码 -m "method" #... 加密方式 -O "protocol" #... 协议插件 -o "obfs" #... 混淆插件 -G "protocol_param" #... 协议参数(可省略) -g "obfs_param" #... 混淆参数(可省略) -d start #后台启动
启动后提示下面这些内容则代表客户端启动正常。
loaded collections.OrderedDict IPv6 support 2017-05-11 xx:xx:xx INFO util.py:85 loading libcrypto from libcrypto.so.1.0.0 started
验证账号可用性
ShadowsocksR客户端启动后,我们就只需要用 curl 通过 127.0.0.1:1082 代理去访问一下谷歌网站即可验证账号可用性。
curl --socks5 127.0.0.1:1082 https://bing.com -k
正常情况应该是谷歌会根据你的IP位置来显示302重定向信息,这代表ShadowsocksR账号是正常的。
如果半天没动静,或者其他报错,即代表ShadowsocksR账号不可用(前提是你前面两个步骤没搞错)
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8"> <TITLE>302 Moved</TITLE></HEAD><BODY> <H1>302 Moved</H1> The document has moved <A HREF="https://www.google.ca/?gfe_rd=cr&ei=OAkUWf-kMuGM8Qeuka34BA">here</A>. </BODY></HTML>
停止ShadowsocksR Python客户端:
python local.py -d stop
以前我曾经打算写一个利用ShadowsocksR Python客户端来定时检测ShadowsocksR账号可用性的脚本,但是因为不清楚如何通知使用者,就搁置了。。。
ShadowsocksR Python客户端 WIKI:https://github.com/breakwa11/shadowsocks-rss/wiki/Python-client-setup-(Mult-language)
转载请超链接注明:月下博客 » 使用ShadowsocksR Python客户端 快速验证SSR账号是否可用
责任声明:本站一切资源仅用作交流学习,请勿用作商业或违法行为!如造成任何后果,本站概不负责!