ginuerzh / gost

GO Simple Tunnel - a simple tunnel written in golang
MIT License
15.57k stars 2.44k forks source link

增加vless/vmess/trojan抗墙协议支持 #769

Open RelicOfTesla opened 2 years ago

RelicOfTesla commented 2 years ago

gost本地监听的大部分是私有协议,对于部分客户端如手机app来说,不好接入。 gost提供给第三方的开放协议,只有已被墙很严重的ss协议、明文的socks/http,建议增加对抗墙的vmess/vless/trojan等协议支持。

f4nff commented 2 years ago

垃圾协议,没必要支持,

RelicOfTesla commented 2 years ago

垃不垃圾不清楚,但世面上常见的一些安卓、苹果app,还是有去支持这几个的。。反而没有支持gost的私有协议。

2378 commented 2 years ago

gost又不是专为墙裂开发的,有需求为什么不直接用墙裂的

RelicOfTesla commented 2 years ago

举个例子,现在得 手机app => gost.Node1 => gost.Node2 => gost.Node3 => internet 问题在于app => gost.Node1 就被截断掉了。。。所以需要一层抗墙的第一个入口位置,后面隧道层反而问题不大。

kingwilliam commented 2 years ago

只要外层是TLS, 内层是什麽已没关系, 不用太过整合

f4nff commented 2 years ago

你抗q直接用v2不就得了

aa51513 commented 2 years ago

vless非常多的客户端支持 gost有非常好的易用性 如果结合起来,就非常好用 非要做两难选择,就只能搭建vless,然后用gost转发了

layou233 commented 2 years ago

我们这边是直接在最远处,也就是国外落地机部署ssr或者xray,然后中转机使用端口转发功能,在本地使用支持ssr,vless的客户端连接。
这样的好处是解决了你所提到的问题,在gost.Node1和客户端之间也是加密的,缺点是对于vless这种需要基于TLS验证的服务器很难做,需要在Node1上申请SSL证书然后再放到最远处落地机上,否则无法验证通过,或存在中间人攻击风险。

Herbert8 commented 2 years ago

如果用ss的话,开启AEAD加密算法,安全性还是可以的。app => gost.Node1 之间用用HTTP或者SOCKS5就可以,gost.Node1 => gost.Node2可以用ss。ssr就不要用了。

alexallen1 commented 2 years ago

楼主可能不知道,gost提供的socks5配合自己tls隧道,效果比trojan ray更好