trojan-go icon indicating copy to clipboard operation
trojan-go copied to clipboard

[建议]网页重定向问题及开机自启动相关

Open tianmulan opened this issue 1 year ago • 1 comments

首先先谢谢大佬分享这么好的工具。

今天刚刚从零开始了一次部署,遇到了一些问题跟大佬反馈一下:

配置错误导致伪装失效

由于在常见的nginx的配置中经常会将80端口的http的请求转发至某https端口上。如果采用文档中的默认配置则又会将非法的443访问转发至80并再加以https认证。

这会导致请求被https认证两次,使得浏览器报最大重定向次数的错且网页无法访问。在此种情况下,trojan-go的启动检测中仅会观察到http是好的,所以会允许正常启动,且可以翻墙成功。但实际上GFW之类的嗅探只会发现网页报错,进而导致伪装失效。

例如,当我的配置为:**http port - 80 https port - 1234 "local_port": 443 "remote_port": 80 "fallback_port": 1234 ** 会出现该问题。

建议添加相应的启动设置检测,或者在文档中加以醒目提醒不要开https转发。(也许可以添一个:常见错误:超出最大重定向次数”的说明?)

开机自启动配置

当前文档中未写明开机自启动的设置方式,但实际上已经当前版本已经包含了开机自启动相关代码,建议更新下相关文档。

此外,目前开机自启动的trojan-go.service的配置中有如下几个问题:

  • 用户名与用户组非当前用户而是nobody,建议抓取当前用户自动生成 (或者干脆默认配成root?)
  • 仅写了start指令,并未写restart/stop
  • 默认指向配置为config.json,而非文档中所写的server.json
  • 如果在server.json中配置了“log_file”,会导致systemctl start trojan-go启动失败,报错为no access to log file。json与log文件均已验证了无问题,直接执行无报错。仅在使用systemctl执行会报该错误,且user/user group配成root依然会报no access。

tianmulan avatar Nov 05 '22 21:11 tianmulan

由于在常见的nginx的配置中经常会将80端口的http的请求转发至某https端口上

我就是那个冤大头。的确很有必要提醒这一点,最主要是安装完成后要验证正常访问原网站会返回正常的页面,而不是无法访问(重定向过多

imliuruiqi avatar Apr 15 '23 20:04 imliuruiqi