Giter Site home page Giter Site logo

ssr-command-client's Introduction

rm

ssr-command-client's People

Contributors

tyrantlucifer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ssr-command-client's Issues

设置开机启动后 sudo systemctl start ssr 报错

  • 环境:Ubuntu18.04.4, ssr-command-client基本设置完毕,可以通过项目目录下执行python3命令开启、连接代理

  • 问题:设置开机自启动后,执行sudo systemctl start ssr 或者 sudo systemctl restart ssr 都会产生如下错误
    image
    image
    执行 python3 main.py -s 会告知代理已开启
    image
    此时执行 curl http://ip-api.com/json/?lang=zh-CN 会告知拒绝链接
    image
    但是订阅可正常更新 sudo python3 main.py -u

开机后只有使用 python3 main.py -S再执行 python3 main.py -s才能连接代理
image

为什么提示这个,我库都导好了。。有ping3这个的

venv) [master][~/ssr-commend-client]$ pip list
Package Version


certifi 2020.4.5.1
chardet 3.0.4
colorama 0.4.3
genpac 2.1.0
idna 2.9
ping3 2.6.5
pip 20.1.1
prettytable 0.7.2
requests 2.23.0
setuptools 46.4.0
shadowsocks 2.8.2
urllib3 1.25.9
wheel 0.34.2
(venv) [master][/ssr-commend-client]$ sudo python main.py -l
Traceback (most recent call last):
File "main.py", line 5, in
from funtions import *
File "/home/leemamas/ssr-commend-client/funtions.py", line 4, in
from utils import *
File "/home/leemamas/ssr-commend-client/utils.py", line 10, in
import ping3
ModuleNotFoundError: No module named 'ping3'
(venv) [master][
/ssr-commend-client]$
(venv) [master][~/ssr-commend-client]$

shadowsocksr_cli/main.py中调用UpdateSystemProxy.open_global_proxy报错

Ubuntu20.04,
$shadowsocksr-cli --setting-global-proxy

Traceback (most recent call last): File "/usr/local/bin/shadowsocksr-cli", line 11, in <module> load_entry_point('shadowsocksr-cli==2.1.5', 'console_scripts', 'shadowsocksr-cli')() File "/usr/local/lib/python3.8/dist-packages/shadowsocksr_cli-2.1.5-py3.8.egg/shadowsocksr_cli/main.py", line 88, in main UpdateSystemProxy.open_global_proxy(args.port, args.http_port) File "/usr/local/lib/python3.8/dist-packages/shadowsocksr_cli-2.1.5-py3.8.egg/shadowsocksr_cli/logger.py", line 65, in judge func(*args, **kwargs) TypeError: open_global_proxy() takes 1 positional argument but 2 were given

shadowsocksr_cli/functions.py中

214 @is_ubuntu
215 def open_global_proxy(local_port):
少了个变量,更改为def open_global_proxy(local_port, http_port=80): 运行成功
shadowsocksr-cli --setting-global-proxy
2021-12-15 10:43:54,872 - functions.py[line:222] - [open_global_proxy] - INFO: open global socks5 proxy - 127.0.0.1:1080

但设置系统代理后,firefox使用系统代理选项依旧无法扶墙,但手动设置通过sock5代理却可以,请问是什么原因呢?

ERROR: create encryptor fail at port 1080 的解决方案

问题描述

发现手上有很多的服务器无法成功连接使用,在查看 ~/.ssr-command-client/shadowsocksr.logtcprelay.py 进行 debug 后得到如下有效错误信息:

{'method': 'chacha20-ietf'............} libsodium not found

原因一目了然,因为系统没有自带 chacha20 加密库。

解决方案

手动安装 chacha20 加密库,以 ubuntu18.04 为例:

sudo apt-get install -y libsodium-dev

也可以参考通过源码手动编译,参考官网

建议

似乎 ubuntu16 以上都不自带 libsodium ,其他发行版情况尚未考证,因为该问题无明显报错,较难察觉,如果作者认为有必要,我可以将以上信息添加到 README 以提醒使用者。

binascii.Error: Invalid base64-encoded string

linux Fedora
python main.py

Traceback (most recent call last):
File "main.py", line 77, in
main()
File "main.py", line 37, in main
update_ssr_list_info()
File "/usr/local/share/ssr-commend-client/funtions.py", line 70, in update_ssr_list_info
ssr_info_dict_list = generate_ssr_info_dict_list(ssr_url_list)
File "/usr/local/share/ssr-commend-client/utils.py", line 140, in generate_ssr_info_dict_list
ssr_info_dict = analysis_ssr_url(ssr_url)
File "/usr/local/share/ssr-commend-client/utils.py", line 121, in analysis_ssr_url
ssr_dict[key] = base64decode(value)
File "/usr/local/share/ssr-commend-client/utils.py", line 73, in base64decode
return base64.urlsafe_b64decode(text).decode()
File "/usr/lib64/python3.8/base64.py", line 133, in urlsafe_b64decode
return b64decode(s)
File "/usr/lib64/python3.8/base64.py", line 87, in b64decode
return binascii.a2b_base64(s)
binascii.Error: Invalid base64-encoded string: number of data characters (1) cannot be 1 more than a multiple of 4

无法添加订阅链接

终端输出如下:
2020-12-27 17:56:41,046 - ParseUtils.py[line:111] - [requestUrl] - INFO: start parse ssr subcribe: https://pptp.cloud/sub/0lQ3Uw4IAn949200.html
2020-12-27 17:56:46,956 - ParseUtils.py[line:117] - [requestUrl] - ERROR: string argument should contain only ASCII characters
2020-12-27 17:56:46,956 - ParseUtils.py[line:118] - [requestUrl] - ERROR: Parse subscribe url error

系统:Archlinux
python版本:Python 3.9.1

扶墙的正确姿势是什么

作者你好,我觉得这个项目很不错,我很想通过它来富强上网,但是在使用过程中遇到了问题,希望你能帮我看看。
我首先设置了订阅链接,并更新了ssr节点,然后开启了ssr代理服务,并设置了本地代理,接下来生成了最快节点的json文件,在查看ip归属地时显示的ip确实也是订阅ssr后的线路。当我觉得已经成功时,满怀信心地访问google,然而依旧不能访问,不知是什么原因,希望能得到你的解答。
pic1
(setproxy和ip命令都已经加入了环境变量中)

能够正常检测连接状态,但启动的 SOCKS5 服务不能正常访问

可以正常更新订阅,测速连接都没问题,但是启动服务后,使用 cURL 访问报错:

$ curl -x 'socks5h://127.0.0.1:1080' google.com

报错信息:

curl: (7) Unable to receive initial SOCKS5 response.

使用其它工具测试相同的节点是可以访问的,所以应该不是节点问题。

测试环境:
CentOS 7.6,Python 3.9.2

安装方式:pip

此项目支持多开吗

试了下发现最多只能连一个ssr链接,多开会显示ssr已启动操作无效,更改成不同的映射端口也不行

ping过程改成并发吧

这个问题比较急迫,ssr比较多的情况下,逐个ping异常缓慢

选取最快的id,我写了个shell,你可以参考下

python3 main.py -l | grep -v ∞| grep -v + | sort -g -k 6 | tr -d | | awk '{print $1}' |head -n 2 | tail -n 1

Dependency problem when upgrade python

Part of error is shown above:
File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/shadowsocks/lru_cache.py", line 45, in <module> class LRUCache(collections.MutableMapping): AttributeError: module 'collections' has no attribute 'MutableMapping'

The whole error log follow:
Traceback (most recent call last): File "/home/pg/.local/bin/shadowsocksr-cli", line 33, in <module> sys.exit(load_entry_point('shadowsocksr-cli==2.1.6', 'console_scripts', 'shadowsocksr-cli')()) File "/home/pg/.local/bin/shadowsocksr-cli", line 25, in importlib_load_entry_point return next(matches).load() File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 162, in load module = import_module(match.group('module')) File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "<frozen importlib._bootstrap>", line 1050, in _gcd_import File "<frozen importlib._bootstrap>", line 1027, in _find_and_load File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 688, in _load_unlocked File "<frozen importlib._bootstrap_external>", line 883, in exec_module File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/main.py", line 11, in <module> from shadowsocksr_cli.functions import * File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/functions.py", line 11, in <module> from shadowsocksr_cli.common import * File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/common.py", line 11, in <module> from shadowsocksr_cli.update_utils import * File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/update_utils.py", line 12, in <module> from shadowsocksr_cli.network_test_utils import * File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/network_test_utils.py", line 14, in <module> from shadowsocksr_cli.handle_utils import * File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/handle_utils.py", line 11, in <module> from shadowsocksr_cli.shadowsocks import daemon, eventloop, tcprelay, udprelay, asyncdns File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/shadowsocks/daemon.py", line 25, in <module> from shadowsocksr_cli.shadowsocks import common, shell File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/shadowsocks/common.py", line 26, in <module> from shadowsocksr_cli.shadowsocks import lru_cache File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/shadowsocks/lru_cache.py", line 45, in <module> class LRUCache(collections.MutableMapping): AttributeError: module 'collections' has no attribute 'MutableMapping' Traceback (most recent call last): File "/home/pg/.local/bin/shadowsocksr-cli", line 33, in <module> sys.exit(load_entry_point('shadowsocksr-cli==2.1.6', 'console_scripts', 'shadowsocksr-cli')()) File "/home/pg/.local/bin/shadowsocksr-cli", line 25, in importlib_load_entry_point return next(matches).load() File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 162, in load module = import_module(match.group('module')) File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "<frozen importlib._bootstrap>", line 1050, in _gcd_import File "<frozen importlib._bootstrap>", line 1027, in _find_and_load File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 688, in _load_unlocked File "<frozen importlib._bootstrap_external>", line 883, in exec_module File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/main.py", line 11, in <module> from shadowsocksr_cli.functions import * File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/functions.py", line 11, in <module> from shadowsocksr_cli.common import * File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/common.py", line 11, in <module> from shadowsocksr_cli.update_utils import * File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/update_utils.py", line 12, in <module> from shadowsocksr_cli.network_test_utils import * File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/network_test_utils.py", line 14, in <module> from shadowsocksr_cli.handle_utils import * File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/handle_utils.py", line 11, in <module> from shadowsocksr_cli.shadowsocks import daemon, eventloop, tcprelay, udprelay, asyncdns File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/shadowsocks/daemon.py", line 25, in <module> from shadowsocksr_cli.shadowsocks import common, shell File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/shadowsocks/common.py", line 26, in <module> from shadowsocksr_cli.shadowsocks import lru_cache File "/home/pg/.local/lib/python3.10/site-packages/shadowsocksr_cli/shadowsocks/lru_cache.py", line 45, in <module> class LRUCache(collections.MutableMapping): AttributeError: module 'collections' has no attribute 'MutableMapping'

If you don't have time, I might have some time to fix it.

This is a great project, thanks for your attribution : )

开启本地http代理失败

$ shadowsocksr-cli --http start
2021-12-23 10:04:41,749 - http_utils.py[line:292] - [__download_pac_template] - INFO: Start download pac template...
Traceback (most recent call last):
  File "/home/cloud/.local/lib/python3.6/site-packages/urllib3/connectionpool.py", line 696, in urlopen
    self._prepare_proxy(conn)
  File "/home/cloud/.local/lib/python3.6/site-packages/urllib3/connectionpool.py", line 964, in _prepare_proxy
    conn.connect()
  File "/home/cloud/.local/lib/python3.6/site-packages/urllib3/connection.py", line 371, in connect
    self._tunnel()
  File "/usr/lib/python3.6/http/client.py", line 934, in _tunnel
    (version, code, message) = response._read_status()
  File "/usr/lib/python3.6/http/client.py", line 302, in _read_status
    raise BadStatusLine(line)
http.client.BadStatusLine: �

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/cloud/.local/lib/python3.6/site-packages/requests/adapters.py", line 449, in send
    timeout=timeout
  File "/home/cloud/.local/lib/python3.6/site-packages/urllib3/connectionpool.py", line 756, in urlopen
    method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2]
  File "/home/cloud/.local/lib/python3.6/site-packages/urllib3/util/retry.py", line 532, in increment
    raise six.reraise(type(error), error, _stacktrace)
  File "/home/cloud/.local/lib/python3.6/site-packages/urllib3/packages/six.py", line 769, in reraise
    raise value.with_traceback(tb)
  File "/home/cloud/.local/lib/python3.6/site-packages/urllib3/connectionpool.py", line 696, in urlopen
    self._prepare_proxy(conn)
  File "/home/cloud/.local/lib/python3.6/site-packages/urllib3/connectionpool.py", line 964, in _prepare_proxy
    conn.connect()
  File "/home/cloud/.local/lib/python3.6/site-packages/urllib3/connection.py", line 371, in connect
    self._tunnel()
  File "/usr/lib/python3.6/http/client.py", line 934, in _tunnel
    (version, code, message) = response._read_status()
  File "/usr/lib/python3.6/http/client.py", line 302, in _read_status
    raise BadStatusLine(line)
urllib3.exceptions.ProtocolError: ('Connection aborted.', BadStatusLine('\x05\x00',))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/cloud/.local/bin/shadowsocksr-cli", line 11, in <module>
    sys.exit(main())
  File "/home/cloud/.local/lib/python3.6/site-packages/shadowsocksr_cli/main.py", line 100, in main
    HandleHttpServer.handle_http_server(args.http, args.port, args.http_port)
  File "/home/cloud/.local/lib/python3.6/site-packages/shadowsocksr_cli/functions.py", line 412, in handle_http_server
    HandleHttpServer.start(local_port, http_port=http_port)
  File "/home/cloud/.local/lib/python3.6/site-packages/shadowsocksr_cli/functions.py", line 397, in start
    GeneratePac.generate_pac(Setting.get_value("local_address"), local_port)
  File "/home/cloud/.local/lib/python3.6/site-packages/shadowsocksr_cli/http_utils.py", line 301, in generate_pac
    GeneratePac.__download_pac_template()
  File "/home/cloud/.local/lib/python3.6/site-packages/shadowsocksr_cli/http_utils.py", line 293, in __download_pac_template
    result = requests.get('https://tyrantlucifer.com/ssr/autoproxy.pac')
  File "/home/cloud/.local/lib/python3.6/site-packages/requests/api.py", line 75, in get
    return request('get', url, params=params, **kwargs)
  File "/home/cloud/.local/lib/python3.6/site-packages/requests/api.py", line 61, in request
    return session.request(method=method, url=url, **kwargs)
  File "/home/cloud/.local/lib/python3.6/site-packages/requests/sessions.py", line 542, in request
    resp = self.send(prep, **send_kwargs)
  File "/home/cloud/.local/lib/python3.6/site-packages/requests/sessions.py", line 655, in send
    r = adapter.send(request, **kwargs)
  File "/home/cloud/.local/lib/python3.6/site-packages/requests/adapters.py", line 498, in send
    raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', BadStatusLine('\x05\x00',))

挺奇怪的,浏览器下载https://tyrantlucifer.com/ssr/autoproxy.pac可以成功

域名污染

作者大大麻烦处理下谷歌域名污染问题嘛,可以参考下electron-ssr呀

其它类型的订阅链接转换后怎么适用

我使用的地方没有直接提供ssr订阅,我转换成了短链接(长的好像直接无法添加进去),但是出现了如下错误:
2021-03-07 18:52:53,819 - parse_utils.py[line:116] - [parse_shadowsocksr_by_subscribe_url] - ERROR: 'utf-8' codec can't decode byte 0xe0 in position 1: invalid continuation byte
2021-03-07 18:52:53,820 - parse_utils.py[line:117] - [parse_shadowsocksr_by_subscribe_url] - ERROR: Parse subscribe url https://suo.yt/xxxxxxxxxx error

(xxxxxx是订阅部分,我码掉了哈)

解析ssr链接bug,在/?后面无数据的情况下出现数组越界错误

Traceback (most recent call last):
File "/usr/local/bin/shadowsocksr-cli", line 11, in
load_entry_point('shadowsocksr-cli==2.1.0', 'console_scripts', 'shadowsocksr-cli')()
File "/usr/local/lib/python3.6/site-packages/shadowsocksr_cli/main.py", line 79, in main
UpdateConfigurations.add_shadowsocksr_by_url(args.add_ssr)
File "/usr/local/lib/python3.6/site-packages/shadowsocksr_cli/functions.py", line 114, in add_shadowsocksr_by_url
update_shadowsocksr.add_shadowsocksr_by_url(ssr_url)
File "/usr/local/lib/python3.6/site-packages/shadowsocksr_cli/update_utils.py", line 53, in add_shadowsocksr_by_url
ssr_dict = ParseShadowsocksr.parse_shadowsocksr(ssr_url)
File "/usr/local/lib/python3.6/site-packages/shadowsocksr_cli/parse_utils.py", line 76, in parse_shadowsocksr
value = params.split('=')[1]
IndexError: list index out of range

可创建为一个后台服务进程吗?

我想设置为系统开机自动启动。
配置的service内容为

[Unit]
Description=shadowsocks-client
After=privoxy.service
[Service]
Type=forking
ExecStart=/usr/local/bin/shadowsocksr-cli -s '31'
ExecReload=/usr/local/bin/shadowsocksr-cli -u
ExecStop=/usr/local/bin/shadowsocksr-cli -S
[Install]
WantedBy=multi-user.target

daemon-reload之后尝试systemctl start ssr.service
失败了:

● ssr.service - shadowsocks-client
     Loaded: loaded (/lib/systemd/system/ssr.service; disabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Sun 2021-06-20 18:50:54 CST; 43s ago
    Process: 29203 ExecStart=/usr/local/bin/shadowsocksr-cli -s 31 (code=exited, status=1/FAILURE)

6月 20 18:50:54 knight systemd[1]: Starting shadowsocks-client...
6月 20 18:50:54 knight shadowsocksr-cli[29203]: 2021-06-20 18:50:54,935 - logger.py[line:74] - [judge] - ERROR: Shadowsocksr id error
6月 20 18:50:54 knight systemd[1]: ssr.service: Control process exited, code=exited, status=1/FAILURE
6月 20 18:50:54 knight systemd[1]: ssr.service: Failed with result 'exit-code'.
6月 20 18:50:54 knight systemd[1]: Failed to start shadowsocks-client.

我该怎么做?

代理失败

开启代理前

curl http://ip-api.com/json/?lang=zh-CN
{"status":"success","country":"**","countryCode":"CN","XXX}

开启代理后
curl http://ip-api.com/json/?lang=zh-CN curl: (56) Recv failure: Connection reset by peer

能请问这是什么原因吗?

树莓派armbian环境运行成功代理失败

2021-02-06 05:35:56,497 - Functions.py[line:76] - [startFastNode] - INFO: select fast node id - 11 name - [CT/CM]香港 03 delay - 43.049ms
2021-02-06 05:35:56,529 - daemon.py[line:123] - [daemon_start] - INFO: ShadowsocksR is started
root@aml:~/ssr-command-client# export ALL_PROXY=socks5://127.0.0.1:1080 root@aml:~/ssr-command-client# curl http://ip-api.com/json/?lang=zh-CN curl: (7) Unable to receive initial SOCKS5 response.

该节点在Windows和手机上都可以连接的,应该是正常的。树莓派上显示ssr进程也启动了,但是代理就失败了

节点切换后报错:Secure Connection Fails <临时解决方案>

挂个 issue,也当作一个记录

Phenomena:
看视频的时候,在未关闭连接的情况下突然切换节点,导致整个系统的代理失效:火狐提示 Secure Connection Fails,终端使用 curl 调试,提示curl:(56) Recv failure: 连接被对方重设。

Solution:

  1. 切换系统及其他设备,同样的节点,均可正常访问,排除节点问题。
  2. 使用 ssr-command-client,在替他设备挂相同的节点,可正常访问,排除客户端问题。
  3. 查看客户端日志,提示 “tcprelay.py[line:1095] - [_log_error] - ERROR: [Errno 2] No such file or directory: b'liblibcrypto.a' when handling connection from 127.0.0.1:43312”,说明是加载库的时候出现了异常,需要进一步调试。
  4. 在 cryptos/util.py 里加日志,读取的库名是正常的: libcrypto,在 ctypes 库里加日志,就报错了:
    /usr/bin/ld: cannot find -llibcrypto
    /usr/bin/ld: note to link with /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libcrypto.a use -l:libcrypto.a or rename it to liblibcrypto.a
    意思就是 gcc 在使用 ld 加载库的时候,把 libcrypto 识别成了 liblibcrypto,但其他线程都是好的,只有 socks5h 的相关应用有这个问题。
  5. 所以临时解决方案就是新增一个 liblibcrypto.a,之后可以继续正常使用。

Question TBD:
看样子像是系统里的某个文件在节点切换的一瞬间被搞坏了,但具体是哪个文件坏了,什么原因导致的还不是很清楚。看有没有大佬知道。

--test-speed测速功能不起作用

我在windows上使用,执行 --test-speed 进行测速,返回的上传下载信息都是无穷大。看日志报这样的错误。
···
2021-01-13 17:37:53,519 - SSRTestUtils.py[line:84] - [testSSRSpeed] - DEBUG: This ssr node is invalid
2021-01-13 17:37:53,563 - SSRTestUtils.py[line:83] - [testSSRSpeed] - DEBUG: <urlopen error Error connecting to SOCKS5 proxy 127.0.0.1:60043: [WinError 10061] 由于目标计算机积极拒绝,无法连接。>
2021-01-13 17:37:53,563 - SSRTestUtils.py[line:84] - [testSSRSpeed] - DEBUG: This ssr node is invalid
2021-01-13 17:37:53,685 - SSRTestUtils.py[line:83] - [testSSRSpeed] - DEBUG: <urlopen error Error connecting to SOCKS5 proxy 127.0.0.1:60045: [WinError 10061] 由于目标计算机积极拒绝,无法连接。>
2021-01-13 17:37:53,685 - SSRTestUtils.py[line:84] - [testSSRSpeed] - DEBUG: This ssr node is invalid
2021-01-13 17:37:53,685 - SSRTestUtils.py[line:83] - [testSSRSpeed] - DEBUG: <urlopen error Error connecting to SOCKS5 proxy 127.0.0.1:60047: [WinError 10061] 由于目标计算机积极拒绝,无法连接。>
···

想请个问题:运行的时候与pyppeteer冲突该如何处理

你好,想请教问一个问题,因为对底层逻辑不是很懂,不清楚是不是因为运行你的代码的时候导致本地端口被占用还是什么原因。就是我先调用了你的这个包来创建一个ssr连接以后,再创建一个pyppeteer 的网页访问时,会报错网络端口无法访问,代码结构大概是这样的:
代码:

async def getProxies_ssr_proxy_socks5():

  ssr_dict =ParseShadowsocksr.parse_shadowsocksr('ssr:【地址】')

  ssr_dict = ShadowsocksrLic._shadowsocksr_connect(ssr_dict)
  ShadowsocksrLic._shadowsocksr_lic(ssr_dict)
  print(ssr_dict['connect'], ssr_dict['ping'])

  sk5 =  'socks5://127.0.0.1:999' # 另一个文件ShadowsocksrLic中创建并规定了这个本地端口地址

  getIPox_ = '--proxy-server=socks5://' + sk5
  start_parm= {
      "executablePath": r"D:\MyPython\venv\Lib\site-packages\pyppeteer\pyppeteer\local-chromium\575458\chrome-win32\chrome.exe",
      "headless": False,

      'userDataDir': r'D:\MyPython\Pyppeer_userDataDir\temporary',

      "args": [
          '--disable-infobars',
          '--no-sandbox',
          '--start-maximized',
          '--user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36',

          getIPox_, # 这个不行
          # '--proxy-server=' + 'socks5://127.0.0.1:10808' # 用其他ssr连接软件开放的本地地址,也打不开

      ],

  }

  browser = await launch(**start_parm)
  page = await browser.newPage()
  await page.goto('https://www.google.com/')
  await asyncio.sleep(10)

if name == "main":
asyncio.get_event_loop().run_until_complete(getProxies_ssr_proxy_socks5())

结果:

True 60.0
2021-04-08 23:16:14,355 - logger.py[line:53] - [main] - INFO: Func - _shadowsocksr_lic Total time: 0.01s
2021-04-08 23:16:16,611 - handle_utils.py[line:69] - [start_on_windows] - INFO: Shadowsocksr is start on 127.0.0.1:999
2021-04-08 23:16:16,613 - handle_utils.py[line:70] - [start_on_windows] - INFO: Press Ctrl+C to stop shadowsocksr
Traceback (most recent call last):
File "D:/MyProject/MyEcProject/Mytest/test_pyppeteer.py", line 123, in
asyncio.get_event_loop().run_until_complete(getProxies_ssr_proxy_socks5())
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\asyncio\base_events.py", line 568, in run_until_complete
return future.result()
File "D:/MyProject/MyEcProject/Mytest/test_pyppeteer.py", line 115, in getProxies_ssr_proxy_socks5
browser = await launch(**start_parm)
File "D:\MyPython\venv\lib\site-packages\pyppeteer\launcher.py", line 305, in launch
return await Launcher(options, **kwargs).launch()
File "D:\MyPython\venv\lib\site-packages\pyppeteer\launcher.py", line 166, in launch
self.browserWSEndpoint = get_ws_endpoint(self.url)
File "D:\MyPython\venv\lib\site-packages\pyppeteer\launcher.py", line 227, in get_ws_endpoint
with urlopen(url) as f:
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\urllib\request.py", line 222, in urlopen
return opener.open(url, data, timeout)
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\urllib\request.py", line 525, in open
response = self._open(req, data)
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\urllib\request.py", line 543, in _open
'_open', req)
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\urllib\request.py", line 503, in _call_chain
result = func(*args)
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\urllib\request.py", line 1345, in http_open
return self.do_open(http.client.HTTPConnection, req)
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\urllib\request.py", line 1320, in do_open
r = h.getresponse()
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 1321, in getresponse
response.begin()
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 296, in begin
version, status, reason = self._read_status()
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 265, in _read_status
raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response

Process finished with exit code 1

麻烦有空的时候帮忙指点下,感谢。。

节点ping正常, curl Google return Empty reply from server

我完成订阅操作后, 多次尝试create fast-node和自定义的node, 使用提供的ALL_PROXY命令进行socks5的设置; 期间没有任何报错信息;但是最终curl Google的时候报E52 Emply reply from server错误.wget Google显示被墙; 经检测我的节点在window表现正常?请问这边如何定位问题?

empty-reply-from-server

突然不能用

97号错误
curl: (97) Unable to receive initial SOCKS5 response.
如果没开ssr报的是7号

期待日后加入负载均衡功能

辛苦大大,这个是个人相比使用起来感觉很不错的命令行客户端了,期待日后加入负载均衡功能,以自动切换到质量最优的线路。

额外的监听端口

作者您好,我尝试在主机上运行了项目,目前功能一切正常
当我在使用netstat -tunlp命令查看端口时,发现程序除了开启指定的端口外,仍开放了一个额外端口:0.0.0.0:51160
如图 红色框内部分

issue1

我使用的命令如下:shadowsocksr-cli -s 2 -p 6689
又尝试使用了shadowsocksr-cli -s 2 -p 6689 --setting-address 127.0.0.1,发现其仍会多开端口,且每次的不同

我只想在本地回环地址127.0.0.1提供端口,并不对外网提供
担心新开的端口监听0.0.0.0,会导致安全问题

我尝试使用curl -x socks5h://localhost:51160 http://www.baidu.com/以及curl -x localhost:51160 http://www.baidu.com/测试了该端口的http以及socks5连接,均提示Connection refused
但仍无法确定,该端口监听地址为0.0.0.0,是否会有安全问题?
如果可以,还希望能够知道该端口的设计目的

期待您的回复,感谢!

Parsing错误

作者你好,在更新订阅时候报了以下错误:
2021-11-25 00:18:26,203 - parse_utils.py[line:113] - [parse_shadowsocksr_by_subscribe_url] - INFO: Start parse ssr subscribe url: https://tyrantlucifer.com/ssr/ssr.txt
2021-11-25 00:18:26,567 - parse_utils.py[line:113] - [parse_shadowsocksr_by_subscribe_url] - INFO: Start parse ssr subscribe url: https://freemycloud.site/link/ia8QCPBEYM6y1P9m?sub=1
2021-11-25 00:18:27,980 - parse_utils.py[line:119] - [parse_shadowsocksr_by_subscribe_url] - ERROR: 'utf-8' codec can't decode byte 0xe0 in position 1: invalid continuation byte
2021-11-25 00:18:27,980 - parse_utils.py[line:120] - [parse_shadowsocksr_by_subscribe_url] - ERROR: Parse subscribe url https://freemycloud.site/link/ia8QCPBEYM6y1P9m?sub=1 error
2021-11-25 00:18:27,980 - parse_utils.py[line:113] - [parse_shadowsocksr_by_subscribe_url] - INFO: Start parse ssr subscribe url: https://freemycloud.site/link/ia8QCPBEYM6y1P9m?sub=1
2021-11-25 00:18:29,641 - parse_utils.py[line:119] - [parse_shadowsocksr_by_subscribe_url] - ERROR: 'utf-8' codec can't decode byte 0xe0 in position 1: invalid continuation byte
2021-11-25 00:18:29,641 - parse_utils.py[line:120] - [parse_shadowsocksr_by_subscribe_url] - ERROR: Parse subscribe url https://freemycloud.site/link/ia8QCPBEYM6y1P9m?sub=1 error
2021-11-25 00:18:29,642 - parse_utils.py[line:113] - [parse_shadowsocksr_by_subscribe_url] - INFO: Start parse ssr subscribe url: https://freemycloud.site/link/ia8QCPBEYM6y1P9m
2021-11-25 00:18:31,087 - parse_utils.py[line:119] - [parse_shadowsocksr_by_subscribe_url] - ERROR: 'utf-8' codec can't decode byte 0xe0 in position 1: invalid continuation byte
2021-11-25 00:18:31,088 - parse_utils.py[line:120] - [parse_shadowsocksr_by_subscribe_url] - ERROR: Parse subscribe url https://freemycloud.site/link/ia8QCPBEYM6y1P9m error
2021-11-25 00:18:36,159 - logger.py[line:53] - [main] - INFO: Func - update Total time: 9.96s

这个是因为什么嘞
链接地址是:https://freemycloud.site/link/ia8QCPBEYM6y1P9m?sub=1

运行测试的例子代码会报错

你好,运行测试是否连接的时候,是可以运行的,但是运行测速的时候,就会报错。
运行代码:
`from shadowsocksr_cli.parse_utils import *
from shadowsocksr_cli.network_test_utils import *
ssr_url = "ssr://【ssr链接】"

ssr_dict = ParseShadowsocksr.parse_shadowsocksr(ssr_url)
ssr_dict = ShadowsocksrTest.test_shadowsocksr_connect(ssr_dict)
ShadowsocksrTest.test_shadowsocksr_speed(ssr_dict)
`
报错内容:

D:\MyPython\venv\Scripts\python.exe D:/MyProject/MyEcProject/test/test_切换ssr.py
Traceback (most recent call last):
File "", line 1, in
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\multiprocessing\spawn.py", line 105, in spawn_main
exitcode = _main(fd)
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\multiprocessing\spawn.py", line 114, in _main
prepare(preparation_data)
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\multiprocessing\spawn.py", line 225, in prepare
_fixup_main_from_path(data['init_main_from_path'])
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\multiprocessing\spawn.py", line 277, in _fixup_main_from_path
run_name="mp_main")
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\runpy.py", line 263, in run_path
pkg_name=pkg_name, script_name=fname)
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\runpy.py", line 96, in _run_module_code
mod_name, mod_spec, pkg_name, script_name)
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "D:\MyProject\MyEcProject\test\test_切换ssr.py", line 16, in
ShadowsocksrTest.test_shadowsocksr_speed(ssr_dict)
File "D:\MyPython\venv\lib\site-packages\shadowsocksr_cli\logger.py", line 51, in main
func(*args, **kwargs)
File "D:\MyPython\venv\lib\site-packages\shadowsocksr_cli\network_test_utils.py", line 94, in test_shadowsocksr_speed
p.start()
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\multiprocessing\process.py", line 112, in start
self._popen = self._Popen(self)
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\multiprocessing\context.py", line 223, in _Popen
return _default_context.get_context().Process._Popen(process_obj)
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\multiprocessing\context.py", line 322, in _Popen
return Popen(process_obj)
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\multiprocessing\popen_spawn_win32.py", line 33, in init
prep_data = spawn.get_preparation_data(process_obj._name)
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\multiprocessing\spawn.py", line 143, in get_preparation_data
_check_not_importing_main()
File "C:\Users\ligen\AppData\Local\Programs\Python\Python37\lib\multiprocessing\spawn.py", line 136, in _check_not_importing_main
is not going to be frozen to produce an executable.''')
RuntimeError:
An attempt has been made to start a new process before the
current process has finished its bootstrapping phase.

    This probably means that you are not using fork to start your
    child processes and you have forgotten to use the proper idiom
    in the main module:

        if __name__ == '__main__':
            freeze_support()
            ...

    The "freeze_support()" line can be omitted if the program
    is not going to be frozen to produce an executable.

2021-04-06 17:21:48,831 - network_test_utils.py[line:117] - [test_shadowsocksr_speed] - INFO: Shadowsocksr - name: 入门-香港微软云03-上海中转 - 14436 单端口
2021-04-06 17:21:48,831 - network_test_utils.py[line:118] - [test_shadowsocksr_speed] - INFO: Download: ∞ MB/s
2021-04-06 17:21:48,831 - network_test_utils.py[line:119] - [test_shadowsocksr_speed] - INFO: Upload: ∞ MB/s
2021-04-06 17:21:48,831 - logger.py[line:53] - [main] - INFO: Func - test_shadowsocksr_speed Total time: 2.04s

Process finished with exit code 0

异常停止后无法重新启动SSR

描述:
我在通过main.py启动后,忘了关掉了就重启系统了。重启后重新开启ssr提示服务已经启动,关闭时又提示服务已经关闭。
8NWy1H.jpg

环境:
Ubuntu 18.04

curl: (52) Empty reply from server

博主你好,按照你的设置更新了我自己订阅的ssr链接,并且按照后面的步骤配置好服务器了,有这么几个问题:

  1. "config json file is update~~ " 这句之后是否默认设置当前节点作为代理节点了?以及这个config文件存在哪里?
  2. setproxy设置好代理后,ip命令会提示“curl: (52) Empty reply from server”,并且用git、curl等命令也实际没有挂到代理,这是什么问题?

python main.py --add-ssr 失败

python main.py --add-ssr 该参数调用是什么格式

我三种都测试了,全部返回 please input correct ssr url~~

ssr://MTkyLjE2OC4yNTUuMjE4OjExMTExOmF1dGhfYWVzMTI4X3NoYTE6Y2hhY2hhMjA6dGxzMS4yX3RpY2tldF9hdXRoOlRFOVBVREowYUdWdGIyOXUvP29iZnNwYXJhbT0mcHJvdG9wYXJhbT0mcmVtYXJrcz1aR1Z0YncmZ3JvdXA9VG1Wdg

还是再对其base64后的信息
c3NyOi8vTVRreUxqRTJPQzR5TlRVdU1qRTRPakV4TVRFeE9tRjFkR2hmWVdWek1USTRYM05vWVRFNlkyaGhZMmhoTWpBNmRHeHpNUzR5WDNScFkydGxkRjloZFhSb09sUkZPVkJWUkVvd1lVZFdkR0l5T1hVdlAyOWlabk53WVhKaGJUMG1jSEp2ZEc5d1lYSmhiVDBtY21WdFlYSnJjejFhUjFaMFluY21aM0p2ZFhBOVZHMVdkZwo=

还是 ssr://后的信息
MTkyLjE2OC4yNTUuMjE4OjExMTExOmF1dGhfYWVzMTI4X3NoYTE6Y2hhY2hhMjA6dGxzMS4yX3RpY2tldF9hdXRoOlRFOVBVREowYUdWdGIyOXUvP29iZnNwYXJhbT0mcHJvdG9wYXJhbT0mcmVtYXJrcz1aR1Z0YncmZ3JvdXA9VG1Wdg

load liblibcrypto.a error

Linux version 5.10.63-v7+ (dom@buildbot) (arm-linux-gnueabihf-gcc-8 (Ubuntu/Linaro 8.4.0-3ubuntu1) 8.4.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #1459 SMP Wed Oct 6 16:41:10 BST 2021

raspberrypi. 2W

bug: tcprelay.py[line:1096] - [_log_error] - ERROR: [Errno 2] No such file or directory: b'liblibcrypto.a' when handling connection from 127.0.0.1:43384

UPDATE SUBSCRIPTION ERROR

yuheng@yuheng-desktop:~/ssr-command-client$ python3 main.py -u
2021-01-01 19:02:30,644 - ParseUtils.py[line:111] - [requestUrl] - INFO: start parse ssr subcribe: https://tyrantlucifer.com/ssr/ssr.txt
2021-01-01 19:02:32,020 - ParseUtils.py[line:111] - [requestUrl] - INFO: start parse ssr subcribe: https://
Traceback (most recent call last):
File "main.py", line 103, in
main()
File "main.py", line 58, in main
u.updateSubscribe()
File "/home/yuheng/ssr-command-client/funcitions/Functions.py", line 116, in updateSubscribe
settings.valueDict['subscribe_url'].split('|'))
File "/home/yuheng/ssr-command-client/logger/Logging.py", line 13, in main
content = func(*args)
File "/home/yuheng/ssr-command-client/utils/ParseUtils.py", line 151, in update
ssrInfo['id'] = self.ssrInfoList.index(ssrInfo)
TypeError: 'NoneType' object does not support item assignment

Ubuntu识别的Wrap无效

platform.system() 只能获取系统类型,要获取 Linux 版本信息,可以用 distro.linux_distribution()。
另,开启代理的方法在 Debian 上可以生效。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.