This repository has been archived by the owner on Mar 17, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 105
【BUG】服务器 v2ray_simple grpc 时,部分终端无法通过代理连上 ssh #240
Labels
bug
Something isn't working
Comments
应该是 v2ray_simple 读取 first payload 的机制导致了以上 nc/telnet 的现象? |
有可能,需详查 |
应该还是grpc服务器端的bug没有完全修复 |
在vs的 grpc server 收到grpc握手后,确实,如果客户端没发任何信息,就会陷入等待中. 我看了一下代码,忘 Flush了。 |
e1732a364fed
changed the title
【可能不是 BUG】服务器 v2ray_simple 协议为 trojan+grpc+tls 时,部分终端无法通过代理连上 ssh
【BUG】服务器 v2ray_simple grpc 时,部分终端无法通过代理连上 ssh
Feb 12, 2023
我在最新代码里加了 flush, 请你用最新代码编译并再试一次,然后看看如何 |
已按组 5 条件测试,依旧不打印 ssh 服务器版本信息。 执行的编译命令:
|
虽然没有经过严格的测试,但是在我的配置(从gRPC回落到TCP)下也会有类似的行为。 |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
环境
描述
使用 v2ray_simple 作为代理服务器且协议为
trojan+grpc+tls
时,部分终端(如 mobaxterm)通过代理连接 ssh 会卡在终端画面(光标原地闪烁),无法登录。作为实验,部署 v2ray/hysteria/naiveproxy 等不同应用、为 v2ray_simple 增加
vmess+ws+tls+cdn
的协议组合,接着使用 clash 的 tunnel 功能通过前述代理将服务器 ssh 端口映射到本地不同端口,最后使用 nc/telnet 连接这些本地端口。现象如下。组 1(对照):无代理直连服务器 ssh 端口
使用 nc/telnet 直连服务器 ssh 端口,会打印版本信息。如:
组 2:使用 hysteria/naiveproxy 作为代理服务器
使用 nc/telnet 连接映射后的本地端口,会打印版本信息。
组 3:使用 v2ray 作为代理服务器,协议为
trojan+grpc+tls
使用 nc/telnet 连接映射后的本地端口,会打印版本信息。
组 4:使用 v2ray_simple 作为代理服务器,协议为
vmess+ws+tls+cdn
使用 nc/telnet 连接映射后的本地端口,会打印版本信息。
组 5:使用 v2ray_simple 作为代理服务器,协议为
trojan+grpc+tls
使用 nc/telnet 连接映射后的本地端口,卡在终端画面(光标原地闪烁),不打印任何字符。
经测试发现,若在卡住时键入任何按键,则又会打印版本信息。
如何复现
搭建 web 服务器作为反向代理。
搭建 v2ray_simple,协议为
trojan+grpc
。cat vs_config.toml
安装 clash 客户端。
cat clash.yaml
安装 mobaxterm,新建 ssh 连接,配置使用代理。
登录 ssh。
日志
v2ray_simple debug 级日志
cat error.log
解决
经研究发现,若将 mobaxterm 等终端的
协议版本
由auto
变更为SSHv2
可解决 v2ray_simple 使用 trojan+grpc+tls 时无法通过代理连上 ssh 的问题。此时可正常登录。但是,此方案不能解决使用 nc/telnet 连接 ssh 映射后的本地端口,不打印版本信息的问题。
The text was updated successfully, but these errors were encountered: