haoel / haoel.github.io

12.71k stars 2.03k forks source link

manjaro客户端配置问题(手机已经成功) #89

Closed ongiant closed 1 year ago

ongiant commented 1 year ago

按照耗子叔的教程配置,手机端已经成功了,但是电脑端就是无法成功,请教大家帮忙看一下(VPS上只按照教程3.1、3.2、3.3弄好了gost,下面的是本地PC配置):

  1. 笔记本是manjaro系统,

  2. gost安装的版本与VPS上一致:gost 2.11.5 (go1.19.5 linux/amd64) ;

  3. ss版本:shadowsocks-libev 3.3.5 (VPS上没安装配置ss) ss配置:

    {
    "server":"barren.xyz",
    "server_port":443,
    "local_address": "127.0.0.1",
    "local_port":1984,
    "password":"ShadowSocks0123",
    "timeout":300,
    "method":"aes-256-gcm",
    "fast_open": false,
    "workers": 1,
    "prefer_ipv6": false
    }
  4. 系统代理

    port=1984
    export http_proxy="http://127.0.0.1:${port}/"                                                                                                                                                                                           
    export ftp_proxy="ftp://127.0.0.1:${port}/"                                                                                                                                                                                             
    export rsync_proxy="rsync://127.0.0.1:${port}/"                                                                                                                                                                                         
    export no_proxy="localhost,127.0.0.1,192.168.1.1,::1,*.local"                                                                                                                                                                           
    export HTTP_PROXY="http://127.0.0.1:${port}/"                                                                                                                                                                                           
    export FTP_PROXY="ftp://127.0.0.1:${port}/"                                                                                                                                                                                             
    export RSYNC_PROXY="rsync://127.0.0.1:${port}/"                                                                                                                                                                                         
    export NO_PROXY="localhost,127.0.0.1,192.168.1.1,::1,*.local"                                                                                                                                                                           
    export https_proxy="http://127.0.0.1:${port}/"                                                                                                                                                                                          
    export HTTPS_PROXY="http://127.0.0.1:${port}/"
  5. 启动命令 gost -L ss://aes-256-gcm:ShadowSocks0123@:1984 -F 'https://wharf:abcdef@barren.xyz:443'

但是就是无法成功,结果如下:

2023/02/13 02:59:25 route.go:695: ss://:1984 on [::]:1984                                                                                                                                                                                   
2023/02/13 02:59:25 ss.go:134: [ss] 127.0.0.1:53042 -> 127.0.0.1:1984 : cipher: message authentication failed                                                                                                                               
2023/02/13 02:59:25 ss.go:134: [ss] 127.0.0.1:53048 -> 127.0.0.1:1984 : cipher: message authentication failed                                                                                                                               
2023/02/13 02:59:25 ss.go:134: [ss] 127.0.0.1:53056 -> 127.0.0.1:1984 : cipher: message authentication failed                                                                                                                                                                                                                                                                                                                                                                                        
2023/02/13 02:59:26 ss.go:134: [ss] 127.0.0.1:48004 -> 127.0.0.1:1984 : cipher: message authentication failed                                                                                                                               
2023/02/13 02:59:26 ss.go:134: [ss] 127.0.0.1:48012 -> 127.0.0.1:1984 : cipher: message authentication failed                                                                                                                               
2023/02/13 02:59:26 ss.go:134: [ss] 127.0.0.1:48016 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:15 ss.go:134: [ss] 127.0.0.1:47766 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:16 ss.go:134: [ss] 127.0.0.1:58760 -> 127.0.0.1:1984 : read tcp 127.0.0.1:1984->127.0.0.1:58760: i/o timeout
2023/02/13 03:00:17 ss.go:134: [ss] 127.0.0.1:47788 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:19 ss.go:134: [ss] 127.0.0.1:47800 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:19 ss.go:134: [ss] 127.0.0.1:47814 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:20 ss.go:134: [ss] 127.0.0.1:47824 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:21 ss.go:134: [ss] 127.0.0.1:59162 -> 127.0.0.1:1984 : read tcp 127.0.0.1:1984->127.0.0.1:59162: i/o timeout
2023/02/13 03:00:21 ss.go:134: [ss] 127.0.0.1:47836 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:24 ss.go:134: [ss] 127.0.0.1:40966 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:26 ss.go:134: [ss] 127.0.0.1:40988 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:26 ss.go:134: [ss] 127.0.0.1:41002 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:27 ss.go:134: [ss] 127.0.0.1:47772 -> 127.0.0.1:1984 : read tcp 127.0.0.1:1984->127.0.0.1:47772: i/o timeout
2023/02/13 03:00:27 ss.go:134: [ss] 127.0.0.1:41010 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:27 ss.go:134: [ss] 127.0.0.1:41020 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:28 ss.go:134: [ss] 127.0.0.1:41032 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:30 ss.go:134: [ss] 127.0.0.1:41036 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:31 ss.go:134: [ss] 127.0.0.1:41050 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:32 ss.go:134: [ss] 127.0.0.1:45604 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:33 ss.go:134: [ss] 127.0.0.1:45606 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:34 ss.go:134: [ss] 127.0.0.1:45614 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:34 ss.go:134: [ss] 127.0.0.1:45620 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:35 ss.go:134: [ss] 127.0.0.1:40980 -> 127.0.0.1:1984 : read tcp 127.0.0.1:1984->127.0.0.1:40980: i/o timeout
2023/02/13 03:00:36 ss.go:134: [ss] 127.0.0.1:45636 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:37 ss.go:134: [ss] 127.0.0.1:45644 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:38 ss.go:134: [ss] 127.0.0.1:45652 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:39 ss.go:134: [ss] 127.0.0.1:45654 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:40 ss.go:134: [ss] 127.0.0.1:45672 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:42 ss.go:134: [ss] 127.0.0.1:45680 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:43 ss.go:134: [ss] 127.0.0.1:39106 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:44 ss.go:134: [ss] 127.0.0.1:39112 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:45 ss.go:134: [ss] 127.0.0.1:39124 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:46 ss.go:134: [ss] 127.0.0.1:39138 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:47 ss.go:134: [ss] 127.0.0.1:45648 -> 127.0.0.1:1984 : read tcp 127.0.0.1:1984->127.0.0.1:45648: i/o timeout
2023/02/13 03:00:48 ss.go:134: [ss] 127.0.0.1:39140 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:50 ss.go:134: [ss] 127.0.0.1:39144 -> 127.0.0.1:1984 : cipher: message authentication failed
2023/02/13 03:00:52 ss.go:134: [ss] 127.0.0.1:39152 -> 127.0.0.1:1984 : cipher: message authentication failed
pyronn commented 1 year ago

这个错误应该是ss客户端的加密方法和服务端不一致,可以检查下ss的加密算法是否一致。 另外gost只是开启了一个ss服务端把ss转发到了https服务,系统http代理这些应该是不能直接代理到gost开启的SS服务端口的,所以你应该还需要一个ss客户端,系统的代理地址应该是这个ss客户端的代理地址,具体可以参考4.1 gost 客户端的那个图示。

ongiant commented 1 year ago

这个错误应该是ss客户端的加密方法和服务端不一致,可以检查下ss的加密算法是否一致。 另外gost只是开启了一个ss服务端把ss转发到了https服务,系统http代理这些应该是不能直接代理到gost开启的SS服务端口的,所以你应该还需要一个ss客户端,系统的代理地址应该是这个ss客户端的代理地址,具体可以参考4.1 gost 客户端的那个图示。

我没太明白ss与gost的关系,按照4.1 gost客户端的那个图示,在VPS端是只需要配置好gost就够了,因为在VPS端只画了gost server, 没画ss server。按照您的意思,我是需要在VPS上也弄个ss吗?

pyronn commented 1 year ago

这个错误应该是ss客户端的加密方法和服务端不一致,可以检查下ss的加密算法是否一致。 另外gost只是开启了一个ss服务端把ss转发到了https服务,系统http代理这些应该是不能直接代理到gost开启的SS服务端口的,所以你应该还需要一个ss客户端,系统的代理地址应该是这个ss客户端的代理地址,具体可以参考4.1 gost 客户端的那个图示。

我没太明白ss与gost的关系,按照4.1 gost客户端的那个图示,在VPS端是只需要配置好gost就够了,因为在VPS端只画了gost server, 没画ss server。按照您的意思,我是需要在VPS上也弄个ss吗?

是在你自己的电脑上要有ss客户端,VPS上不需要ss。

gost -L ss://aes-256-gcm:ShadowSocks0123@:1984 -F 'https://wharf:abcdef@barren.xyz:443' 你在自己电脑执行这个命令,gost会把本机的SS请求转成https协议发给VPS,但是系统代理发出的请求并不是SS协议的,所以不行。 下面简单图示你看能不能理解,以http代理为例,我自己在win电脑上就是这么搭的可以用。你现在Gost ClientGost Server 已经通了,但是没有配ShadowSocks Client, 或者没配对,系统代理的请求没有经过SS直接发到Gost Client了,而且协议也不对,所以应该在本机再启动一个SS客户端,SS服务器地址为本机gost监听的SS端口如1984,系统代理配置的应该是SS的监听端口,比如 1080。Linux系统你要自己看下怎么启动配置这个SS客户端。

                                                                        PC         |         VPS
System Proxy---------------->ShadowSocks Client--------------> Gost Client-------------> Gost Server
http://127.0.0.1:1080->       ->http://127.0.0.1:1080        ->ss://127.0.0.1:1984       ->https://vps.host
                               ss://127.0.0.1:1984->          https://vps.host->
ongiant commented 1 year ago

这个错误应该是ss客户端的加密方法和服务端不一致,可以检查下ss的加密算法是否一致。 另外gost只是开启了一个ss服务端把ss转发到了https服务,系统http代理这些应该是不能直接代理到gost开启的SS服务端口的,所以你应该还需要一个ss客户端,系统的代理地址应该是这个ss客户端的代理地址,具体可以参考4.1 gost 客户端的那个图示。

我没太明白ss与gost的关系,按照4.1 gost客户端的那个图示,在VPS端是只需要配置好gost就够了,因为在VPS端只画了gost server, 没画ss server。按照您的意思,我是需要在VPS上也弄个ss吗?

是在你自己的电脑上要有ss客户端,VPS上不需要ss。

gost -L ss://aes-256-gcm:ShadowSocks0123@:1984 -F 'https://wharf:abcdef@barren.xyz:443' 你在自己电脑执行这个命令,gost会把本机的SS请求转成https协议发给VPS,但是系统代理发出的请求并不是SS协议的,所以不行。 下面简单图示你看能不能理解,以http代理为例,我自己在win电脑上就是这么搭的可以用。你现在Gost ClientGost Server 已经通了,但是没有配ShadowSocks Client, 或者没配对,系统代理的请求没有经过SS直接发到Gost Client了,而且协议也不对,所以应该在本机再启动一个SS客户端,SS服务器地址为本机gost监听的SS端口如1984,系统代理配置的应该是SS的监听端口,比如 1080。Linux系统你要自己看下怎么启动配置这个SS客户端。

                                                                        PC         |         VPS
System Proxy---------------->ShadowSocks Client--------------> Gost Client-------------> Gost Server
http://127.0.0.1:1080->       ->http://127.0.0.1:1080        ->ss://127.0.0.1:1984       ->https://vps.host
                               ss://127.0.0.1:1984->          https://vps.host->

按照您的意思终于弄好了,不过chrome浏览器上还得再安装个SwitchyOmega插件,然后把插件里的proxy配置成SOCKS5协议、127.0.0.1代理服务器、1080端口。只不过这样子的话,应该不是耗子叔教程里说的那样:只需要gost + ss就可以实现pac。

pyronn commented 1 year ago

按照您的意思终于弄好了,不过chrome浏览器上还得再安装个SwitchyOmega插件,然后把插件里的proxy配置成SOCKS5协议、127.0.0.1代理服务器、1080端口。只不过这样子的话,应该不是耗子叔教程里说的那样:只需要gost + ss就可以实现pac。

SS客户端在mac和win系统上都有pac模式,可以实现PAC。SS客户端的端口应该是同时兼容SOCKS代理和HTTP代理的,浏览器不需要另外安装SwitchyOmega插件,会自动使用系统代理,这是我自己在mac和win系统上配置的经验,你可以参考下适不适用linux系统。SS客户端也可以替换为v2ray的GUI客户端,可以支持SS协议。

ongiant commented 1 year ago

SS客户端在mac和win系统上都有pac模式,可以实现PAC。SS客户端的端口应该是同时兼容SOCKS代理和HTTP代理的,浏览器不需要另外安装SwitchyOmega插件,会自动使用系统代理,这是我自己在mac和win系统上配置的经验,你可以参考下适不适用linux系统。SS客户端也可以替换为v2ray的GUI客户端,可以支持SS协议。

确实不用搞SwitchyOmega。

ss client监听的是socks5协议,所以只需要将chrome浏览器的SOCKS代理配置成ss client监听的IP(127.0.0.1)和port(1080)就可以了,Firefox浏览器还需要勾选上Proxy DNS when using SOCKS v5选项就OK了!

另外,多谢大佬的耐心回复!!!

ymichaelson commented 10 months ago

这个错误应该是ss客户端的加密方法和服务端不一致,可以检查下ss的加密算法是否一致。 另外gost只是开启了一个ss服务端把ss转发到了https服务,系统http代理这些应该是不能直接代理到gost开启的SS服务端口的,所以你应该还需要一个ss客户端,系统的代理地址应该是这个ss客户端的代理地址,具体可以参考4.1 gost 客户端的那个图示。

我没太明白ss与gost的关系,按照4.1 gost客户端的那个图示,在VPS端是只需要配置好gost就够了,因为在VPS端只画了gost server, 没画ss server。按照您的意思,我是需要在VPS上也弄个ss吗?

是在你自己的电脑上要有ss客户端,VPS上不需要ss。 gost -L ss://aes-256-gcm:ShadowSocks0123@:1984 -F 'https://wharf:abcdef@barren.xyz:443' 你在自己电脑执行这个命令,gost会把本机的SS请求转成https协议发给VPS,但是系统代理发出的请求并不是SS协议的,所以不行。 下面简单图示你看能不能理解,以http代理为例,我自己在win电脑上就是这么搭的可以用。你现在Gost ClientGost Server 已经通了,但是没有配ShadowSocks Client, 或者没配对,系统代理的请求没有经过SS直接发到Gost Client了,而且协议也不对,所以应该在本机再启动一个SS客户端,SS服务器地址为本机gost监听的SS端口如1984,系统代理配置的应该是SS的监听端口,比如 1080。Linux系统你要自己看下怎么启动配置这个SS客户端。

                                                                        PC         |         VPS
System Proxy---------------->ShadowSocks Client--------------> Gost Client-------------> Gost Server
http://127.0.0.1:1080->       ->http://127.0.0.1:1080        ->ss://127.0.0.1:1984       ->https://vps.host
                               ss://127.0.0.1:1984->          https://vps.host->

按照您的意思终于弄好了,不过chrome浏览器上还得再安装个SwitchyOmega插件,然后把插件里的proxy配置成SOCKS5协议、127.0.0.1代理服务器、1080端口。只不过这样子的话,应该不是耗子叔教程里说的那样:只需要gost + ss就可以实现pac。

你好想问一下,最终你的配置和命令是怎么设置的,我安装完之后也是一直没办法联网,能提供一下 shadowsocks 的配置,shadowsocks启动命令,还有 gost 的命令吗,谢谢了

ongiant commented 10 months ago

你好想问一下,最终你的配置和命令是怎么设置的,我安装完之后也是一直没办法联网,能提供一下 shadowsocks 的配置,shadowsocks启动命令,还有 gost 的命令吗,谢谢了

启动命令:(trap 'kill 0' SIGINT; gost -L ss://aes-256-gcm:ShadowSocks0123@:1984 -F 'mwss://gost的用户名:gost的密码@你的域名网址:443' & sslocal -c /etc/shadowsocks/shadowsocks.json start)。我用了cloudflare套了一层,所以用的mwss协议。

ss配置:

{
    "server":"127.0.0.1",
    "server_port":"1984",
    "local_address": "127.0.0.1",
    "local_port":"1080",
    "password":"ShadowSocks0123",
    "timeout":300,
    "method":"aes-256-gcm",
    "fast_open": false,
    "workers": 1,
    "prefer_ipv6": false
}

最后,如果是命令行还要设置.zshrc或者.bashrc,比如:

port=1080
export socks5_proxy="socks5://127.0.0.1:"$((port + 0))