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

建议提供一个像trojan-quickstart那样的一键安装脚本

Open xiebruce opened this issue 4 years ago • 53 comments

这是trojan-quickstart,虽然trojan-go有docker方式,但有些人可能还是想直接部署,其实我看你的example里也有trojan-go.service文件,一键脚本只需要把trojan-go压缩包下载下来,解压并放到合适位置,并把trojan-go.service文件放到systemd里即可。

xiebruce avatar May 31 '20 16:05 xiebruce

我寫了一個 trojan-go 的部署腳本,供你參考。 https://github.com/phlinhng/v2ray-tcp-tls-web/blob/master/tj.sh

phlinhng avatar May 31 '20 16:05 phlinhng

@phlinhng 感谢!不过这并不是我想要的哈哈,我的意思是,一键脚本只需要做安装的事情,像trojan-quickstart那样,把可执行文件,配置文件以及systemd的.service文件放到合适位置即可,这样,使用者只要修改一下配置文件就可以用systemctl start trojan来启动了,更新也直接执行一下一键脚本(其实更新一般只会更新可执行文件,配置文件和.service文件都不会更新)。至于配置文件参数如何修改,那就要看文档了,tls证书我平时都是直接用acme.sh直接申请,就不用trojan来申请了。

xiebruce avatar May 31 '20 17:05 xiebruce

你可以看一下我那個腳本內的 get_trojan() 函數,應該就是你要的核心功能了。寫成腳本如下。https://gist.github.com/phlinhng/2a5e3993dee736c7264594528d3acce2

#!/bin/sh

echo "Getting the latest version of trojan-go"
latest_version="$(wget --no-check-certificate -qO- https://api.github.com/repos/p4gefau1t/trojan-go/tags | grep 'name' | cut -d\" -f4 | head -1)"
echo "${latest_version}"
trojango_link="https://github.com/p4gefau1t/trojan-go/releases/download/${latest_version}/trojan-go-linux-amd64.zip"

mkdir -p "/usr/bin/trojan-go"
mkdir -p "/etc/trojan-go"

cd `mktemp -d`
wget -nv "${trojango_link}" -O trojan-go.zip
unzip -q trojan-go.zip && rm -rf trojan-go.zip

mv trojan-go /usr/bin/trojan-go/trojan-go && chmod +x /usr/bin/trojan-go/trojan-go
mv geoip.dat /etc/trojan-go/geoip.dat
mv geosite.dat /etc/trojan-go/geosite.dat
mv example/trojan-go.service /etc/systemd/system/trojan-go.service

# if config.json didn't exist, use the example server.json 
if [ ! -f "/etc/trojan-go/config.json" ]; then
  mv example/sever.json /etc/trojan-go/config.json
fi

systemctl daemon-reload
systemctl reset-failed

echo "trojan-go is installed."

要更通用的話,還能再優化一下,加個系統架構判斷來自動獲取對應架構的二進制文件。

phlinhng avatar May 31 '20 17:05 phlinhng

@phlinhng 其实这些我都可以手动操作,只不过感觉有个一键安装的会方便大家,其实你有兴趣可以改改提个pr哈哈。

另外顺便问个问题,就是关于.service文件的问题。我之前一直以为默认放到/usr/lib/systemd/system/里,当systemctl enable xxxx的时候,才创建软链到/etc/systemd/system/,但是现在我看你这里却是反过来的,不只你,还有v2ray也是,然而我看一般比较官方的软件,却是像我说的那样的,比如docker,现在我去看我VPS的/usr/lib/systemd/system//etc/systemd/system/文件夹,各自都有非软链接文件,但同时也都有软链接文件,但其实这两种方式都能正常用,都会在enable的时候创建软链到另一个目录中,但不知道比较标准的是哪种?

xiebruce avatar May 31 '20 17:05 xiebruce

另外顺便问个问题,就是关于.service文件的问题。我之前一直以为默认放到/usr/lib/systemd/system/里,当systemctl enable xxxx的时候,才创建软链到/etc/systemd/system/,但是现在我看你这里却是反过来的,不只你,还有v2ray也是,然而我看一般比较官方的软件,却是像我说的那样的,比如docker,现在我去看我VPS的/usr/lib/systemd/system//etc/systemd/system/文件夹,各自都有非软链接文件,但同时也都有软链接文件,但其实这两种方式都能正常用,都会在enable的时候创建软链到另一个目录中,但不知道比较标准的是哪种?

@xiebruce 這是個好問題,我之前也沒想過。我猜 systemctl enable [something] 的邏輯是,只要其中一個目錄沒有對應檔案,就創建一個軟鏈接到另一個目錄裡。

找到一個解釋說,系統包管理器安裝的服務會優先放到 /usr/lib/systemd/system/ 裡,用戶自己創建的服務通常放到 /etc/systemd/system/ 裡來和包管理器安裝的服務區隔。

Basically, files that ships in packages downloaded from distribution repository go into /usr/lib/systemd/. Modifications done by system administrator (user) go into /etc/systemd/system/.

phlinhng avatar May 31 '20 18:05 phlinhng

@phlinhng 哈哈,感觉这么定义有点乱,不过确实两种方式都可以用。

xiebruce avatar May 31 '20 18:05 xiebruce

分享一下 自己的一键脚本 v2ray trojan trojan-go全支持 https://github.com/jinwyp/one_click_script

jinwyp avatar Jun 01 '20 15:06 jinwyp

分享一下 自己的一键脚本 v2ray trojan trojan-go全支持 https://github.com/jinwyp/one_click_script

脚本很方便,很好用。不过好像小火箭不支持trojan-go以及cdn配置?trojan-qt5倒是没问题

rapperx755 avatar Jun 03 '20 04:06 rapperx755

分享一下 自己的一键脚本 v2ray trojan trojan-go全支持 https://github.com/jinwyp/one_click_script

脚本很方便,很好用。不过好像小火箭不支持trojan-go以及cdn配置?trojan-qt5倒是没问题

trojan-go 如果不开启websocket 和 多路复用 小火箭应该可以支持, 开启了websocket 就不支持了

jinwyp avatar Jun 03 '20 07:06 jinwyp

既然各路大神都写了,那我就不再造一次轮子了,这个Issue可以专门用来交流脚本部署的方式。

p4gefau1t avatar Jun 04 '20 09:06 p4gefau1t

既然作者說了,我就響應作者號召,也分享下我的 trojan-go 腳本。

  1. Trojan-go quickstart 就是上面分享過的,仿造 trojan-quickstart 的 Trojan-go 最小化安裝腳本
  2. Trojan-go 自動部署 自動獲取 Trojan-go + 自動獲取證書 + 自動設置證書更新排程。相當於可以自動申請證書的 Trojan-go quickstart。不含任何 Web 服務器,為 Trojan-go 最小化部署腳本 ( 因最近空閒時間較少緣故未測試過此腳本,歡迎各路大佬協助完善 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/tj.sh)
  1. V2Ray TCP+TLS+Web , V2Ray WSS+CDN , Trojan-Go 三合一脚本 一鍵安裝 V2Ray 與 Trojan 並設置好 web 服務器與偽裝站的完整部署腳本。( V2Ray 與 Trojan 可共存,也可以只安裝一個 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/install.sh) && v2script

為什麼想做三合一腳本呢?

  1. 因為一開始寫的是 V2Ray 腳本,後來發現可以和 Trojan-go 共存才一起加進來
  2. 方便想在服務器上設置 VMess over WSS + CDN 作為 IP 被牆的備案的用戶
  3. 方便想自用 Trojan-go,又因為某些兼容性原因( eg. 分享節點給只有 V2Ray 客戶端的朋友 ) 需要保留 V2Ray 入站方式的用戶
  4. ~~有些人覺得一個服務器上好幾種協議看起來很爽~~

腳本 1、2 支持 Trojan-go 的其他特性 ( 需要自己改配置文件 ),腳本 3 由於共存的關係目前只支持以 Trojan-gfw 相容的模式運作。

phlinhng avatar Jun 04 '20 10:06 phlinhng

@phlinhng 感谢!不过这并不是我想要的哈哈,我的意思是,一键脚本只需要做安装的事情,像trojan-quickstart那样,把可执行文件,配置文件以及systemd的.service文件放到合适位置即可,这样,使用者只要修改一下配置文件就可以用systemctl start trojan来启动了,更新也直接执行一下一键脚本(其实更新一般只会更新可执行文件,配置文件和.service文件都不会更新)。至于配置文件参数如何修改,那就要看文档了,tls证书我平时都是直接用acme.sh直接申请,就不用trojan来申请了。

https://raw.githubusercontent.com/proxysu/shellscript/master/trojan-go.sh

这个或许是你想要的,这个脚本就是从V2Ray的官方安装脚本改编过来的,除了把安装v2ray改成了Trojan-Go,其他没有做任何改动。使用方法也一样。由于Trojan-Go与V2Ray还是不一样的,这个脚本安装好后,需要自己申请证书,设置伪装的80端口网站,才能启动Trojan-Go。更新也是运行一下脚本。配置不会变。

proxysu avatar Jun 05 '20 08:06 proxysu

@proxysu 好的,谢谢,要的就是这种只自动安装的而不是傻瓜化自动配置的,害,我竟然没想到直接拿trojan的改哈哈

xiebruce avatar Jun 05 '20 15:06 xiebruce

其实v2ray之前的那种安装位置是不符合Linux规则的,/usr/bin/下都是直接放可执行文件的,它却用来放文件夹,而且v2ray那边已经准备在2020.7.1开始废弃原安装脚本,转而使用新安装脚本,具体见issue 2328,新的安装方式在这里,trojan-go是不是也得早点考虑这方面的问题,免得大家习惯了再改?

xiebruce avatar Jun 08 '20 07:06 xiebruce

分享一下 自己的一键脚本 v2ray trojan trojan-go全支持 https://github.com/jinwyp/one_click_script

用了这个脚本到是能连上,但是客户端ping延时的话,死活都是超时,这是为什么呢...

sk-huang avatar Jun 23 '20 10:06 sk-huang

既然作者說了,我就響應作者號召,也分享下我的 trojan-go 腳本。

  1. Trojan-go quickstart 就是上面分享過的,仿造 trojan-quickstart 的 Trojan-go 最小化安裝腳本
  2. Trojan-go 自動部署 自動獲取 Trojan-go + 自動獲取證書 + 自動設置證書更新排程。相當於可以自動申請證書的 Trojan-go quickstart。不含任何 Web 服務器,為 Trojan-go 最小化部署腳本 ( 因最近空閒時間較少緣故未測試過此腳本,歡迎各路大佬協助完善 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/tj.sh)
  1. V2Ray TCP+TLS+Web , V2Ray WSS+CDN , Trojan-Go 三合一脚本 一鍵安裝 V2Ray 與 Trojan 並設置好 web 服務器與偽裝站的完整部署腳本。( V2Ray 與 Trojan 可共存,也可以只安裝一個 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/install.sh) && v2script

為什麼想做三合一腳本呢?

  1. 因為一開始寫的是 V2Ray 腳本,後來發現可以和 Trojan-go 共存才一起加進來
  2. 方便想在服務器上設置 VMess over WSS + CDN 作為 IP 被牆的備案的用戶
  3. 方便想自用 Trojan-go,又因為某些兼容性原因( eg. 分享節點給只有 V2Ray 客戶端的朋友 ) 需要保留 V2Ray 入站方式的用戶
  4. ~有些人覺得一個服務器上好幾種協議看起來很爽~

腳本 1、2 支持 Trojan-go 的其他特性 ( 需要自己改配置文件 ),腳本 3 由於共存的關係目前只支持以 Trojan-gfw 相容的模式運作。

脚本3一起安装三个的话,我这里trojan-go没启动起来,手动启动后才可用,不过ssh断开后就又断了,怎么守护进程?

wangfeng35 avatar Jun 25 '20 14:06 wangfeng35

既然作者說了,我就響應作者號召,也分享下我的 trojan-go 腳本。

  1. Trojan-go quickstart 就是上面分享過的,仿造 trojan-quickstart 的 Trojan-go 最小化安裝腳本
  2. Trojan-go 自動部署 自動獲取 Trojan-go + 自動獲取證書 + 自動設置證書更新排程。相當於可以自動申請證書的 Trojan-go quickstart。不含任何 Web 服務器,為 Trojan-go 最小化部署腳本 ( 因最近空閒時間較少緣故未測試過此腳本,歡迎各路大佬協助完善 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/tj.sh)
  1. V2Ray TCP+TLS+Web , V2Ray WSS+CDN , Trojan-Go 三合一脚本 一鍵安裝 V2Ray 與 Trojan 並設置好 web 服務器與偽裝站的完整部署腳本。( V2Ray 與 Trojan 可共存,也可以只安裝一個 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/install.sh) && v2script

為什麼想做三合一腳本呢?

  1. 因為一開始寫的是 V2Ray 腳本,後來發現可以和 Trojan-go 共存才一起加進來
  2. 方便想在服務器上設置 VMess over WSS + CDN 作為 IP 被牆的備案的用戶
  3. 方便想自用 Trojan-go,又因為某些兼容性原因( eg. 分享節點給只有 V2Ray 客戶端的朋友 ) 需要保留 V2Ray 入站方式的用戶
  4. ~有些人覺得一個服務器上好幾種協議看起來很爽~

腳本 1、2 支持 Trojan-go 的其他特性 ( 需要自己改配置文件 ),腳本 3 由於共存的關係目前只支持以 Trojan-gfw 相容的模式運作。

脚本3一起安装三个的话,我这里trojan-go没启动起来,手动启动后才可用,不过ssh断开后就又断了,怎么守护进程?

这个简单,利用screen独立运行trojan-go。之后断了ssh也无问题。

jetchanxxx avatar Jun 25 '20 22:06 jetchanxxx

@wangfeng35 trojan-go 理论上应该要随着 systemd 开机自启的。启动失败的原因是脚本用的 0.6.0 格式配置文件和 0.7.x 不合,还在修复中。感谢您的支持!

phlinhng avatar Jun 26 '20 19:06 phlinhng

@wangfeng35 trojan-go 理论上应该要随着 systemd 开机自启的。启动失败的原因是脚本用的 0.6.0 格式配置文件和 0.7.x 不合,还在修复中。感谢您的支持!

非常感谢,脚本很好用,等待修复~

wangfeng35 avatar Jun 27 '20 02:06 wangfeng35

https://github.com/DongfeiSay/trojan-go-quickstart/tree/maintenance 脚本比较简单,应该是能满足最基本需求的

DongfeiSay avatar Jun 30 '20 07:06 DongfeiSay

分享一下 自己的一键脚本 v2ray trojan trojan-go全支持 https://github.com/jinwyp/one_click_script

用了这个脚本到是能连上,但是客户端ping延时的话,死活都是超时,这是为什么呢...

你可以不安装该脚本或其他任何软件之前 就ping 一下看看延迟,一般是你的服务器线路问题, 谷歌云最好选香港或台湾机房,其他的最好是CN2线路 否则ping一般都是300ms以上非常慢。

jinwyp avatar Jul 01 '20 16:07 jinwyp

@wangfeng35 trojan-go 理论上应该要随着 systemd 开机自启的。启动失败的原因是脚本用的 0.6.0 格式配置文件和 0.7.x 不合,还在修复中。感谢您的支持!

既然作者說了,我就響應作者號召,也分享下我的 trojan-go 腳本。

  1. Trojan-go quickstart 就是上面分享過的,仿造 trojan-quickstart 的 Trojan-go 最小化安裝腳本
  2. Trojan-go 自動部署 自動獲取 Trojan-go + 自動獲取證書 + 自動設置證書更新排程。相當於可以自動申請證書的 Trojan-go quickstart。不含任何 Web 服務器,為 Trojan-go 最小化部署腳本 ( 因最近空閒時間較少緣故未測試過此腳本,歡迎各路大佬協助完善 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/tj.sh)
  1. V2Ray TCP+TLS+Web , V2Ray WSS+CDN , Trojan-Go 三合一脚本 一鍵安裝 V2Ray 與 Trojan 並設置好 web 服務器與偽裝站的完整部署腳本。( V2Ray 與 Trojan 可共存,也可以只安裝一個 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/install.sh) && v2script

為什麼想做三合一腳本呢?

  1. 因為一開始寫的是 V2Ray 腳本,後來發現可以和 Trojan-go 共存才一起加進來
  2. 方便想在服務器上設置 VMess over WSS + CDN 作為 IP 被牆的備案的用戶
  3. 方便想自用 Trojan-go,又因為某些兼容性原因( eg. 分享節點給只有 V2Ray 客戶端的朋友 ) 需要保留 V2Ray 入站方式的用戶
  4. ~有些人覺得一個服務器上好幾種協議看起來很爽~

腳本 1、2 支持 Trojan-go 的其他特性 ( 需要自己改配置文件 ),腳本 3 由於共存的關係目前只支持以 Trojan-gfw 相容的模式運作。

脚本3一起安装三个的话,我这里trojan-go没启动起来,手动启动后才可用,不过ssh断开后就又断了,怎么守护进程?

我也遇到相似的问题。用 0.81 版自带的 trojan-go.service 经常无法启动。输入systemctl status trojan-go后,看见红字报错(code=exited, status=1/FAILURE) 。只能用 cd 命令转到 trojan-go 的安装目录里手动启动

pic2debug avatar Aug 09 '20 11:08 pic2debug

为啥不做官方的Debian/Ubuntu package(或者PPA)?trojan Ubuntu 19就有了。比脚本方便多了。可以参考trojan的package。

xiruizhao avatar Aug 09 '20 13:08 xiruizhao

@wangfeng35 trojan-go 理论上应该要随着 systemd 开机自启的。启动失败的原因是脚本用的 0.6.0 格式配置文件和 0.7.x 不合,还在修复中。感谢您的支持!

既然作者說了,我就響應作者號召,也分享下我的 trojan-go 腳本。

  1. Trojan-go quickstart 就是上面分享過的,仿造 trojan-quickstart 的 Trojan-go 最小化安裝腳本
  2. Trojan-go 自動部署 自動獲取 Trojan-go + 自動獲取證書 + 自動設置證書更新排程。相當於可以自動申請證書的 Trojan-go quickstart。不含任何 Web 服務器,為 Trojan-go 最小化部署腳本 ( 因最近空閒時間較少緣故未測試過此腳本,歡迎各路大佬協助完善 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/tj.sh)
  1. V2Ray TCP+TLS+Web , V2Ray WSS+CDN , Trojan-Go 三合一脚本 一鍵安裝 V2Ray 與 Trojan 並設置好 web 服務器與偽裝站的完整部署腳本。( V2Ray 與 Trojan 可共存,也可以只安裝一個 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/install.sh) && v2script

為什麼想做三合一腳本呢?

  1. 因為一開始寫的是 V2Ray 腳本,後來發現可以和 Trojan-go 共存才一起加進來
  2. 方便想在服務器上設置 VMess over WSS + CDN 作為 IP 被牆的備案的用戶
  3. 方便想自用 Trojan-go,又因為某些兼容性原因( eg. 分享節點給只有 V2Ray 客戶端的朋友 ) 需要保留 V2Ray 入站方式的用戶
  4. ~有些人覺得一個服務器上好幾種協議看起來很爽~

腳本 1、2 支持 Trojan-go 的其他特性 ( 需要自己改配置文件 ),腳本 3 由於共存的關係目前只支持以 Trojan-gfw 相容的模式運作。

脚本3一起安装三个的话,我这里trojan-go没启动起来,手动启动后才可用,不过ssh断开后就又断了,怎么守护进程?

我也遇到相似的问题。用 0.81 版自带的 trojan-go.service 经常无法启动。输入systemctl status trojan-go后,看见红字报错(code=exited, status=1/FAILURE) 。只能用 cd 命令转到 trojan-go 的安装目录里手动启动

配置文件变了 用我的脚本 没问题 https://github.com/jinwyp/one_click_script

jinwyp avatar Aug 10 '20 13:08 jinwyp

为啥不做官方的Debian/Ubuntu package(或者PPA)?trojan Ubuntu 19就有了。比脚本方便多了。可以参考trojan的package。

可能要多做很多事情。不知道GFW会不会派人来捣乱。多做一样东西,多一分出错的可能。所以官方没做包

pic2debug avatar Aug 11 '20 00:08 pic2debug

@wangfeng35 trojan-go 理论上应该要随着 systemd 开机自启的。启动失败的原因是脚本用的 0.6.0 格式配置文件和 0.7.x 不合,还在修复中。感谢您的支持!

既然作者說了,我就響應作者號召,也分享下我的 trojan-go 腳本。

  1. Trojan-go quickstart 就是上面分享過的,仿造 trojan-quickstart 的 Trojan-go 最小化安裝腳本
  2. Trojan-go 自動部署 自動獲取 Trojan-go + 自動獲取證書 + 自動設置證書更新排程。相當於可以自動申請證書的 Trojan-go quickstart。不含任何 Web 服務器,為 Trojan-go 最小化部署腳本 ( 因最近空閒時間較少緣故未測試過此腳本,歡迎各路大佬協助完善 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/tj.sh)
  1. V2Ray TCP+TLS+Web , V2Ray WSS+CDN , Trojan-Go 三合一脚本 一鍵安裝 V2Ray 與 Trojan 並設置好 web 服務器與偽裝站的完整部署腳本。( V2Ray 與 Trojan 可共存,也可以只安裝一個 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/install.sh) && v2script

為什麼想做三合一腳本呢?

  1. 因為一開始寫的是 V2Ray 腳本,後來發現可以和 Trojan-go 共存才一起加進來
  2. 方便想在服務器上設置 VMess over WSS + CDN 作為 IP 被牆的備案的用戶
  3. 方便想自用 Trojan-go,又因為某些兼容性原因( eg. 分享節點給只有 V2Ray 客戶端的朋友 ) 需要保留 V2Ray 入站方式的用戶
  4. ~有些人覺得一個服務器上好幾種協議看起來很爽~

腳本 1、2 支持 Trojan-go 的其他特性 ( 需要自己改配置文件 ),腳本 3 由於共存的關係目前只支持以 Trojan-gfw 相容的模式運作。

脚本3一起安装三个的话,我这里trojan-go没启动起来,手动启动后才可用,不过ssh断开后就又断了,怎么守护进程?

我也遇到相似的问题。用 0.81 版自带的 trojan-go.service 经常无法启动。输入systemctl status trojan-go后,看见红字报错(code=exited, status=1/FAILURE) 。只能用 cd 命令转到 trojan-go 的安装目录里手动启动

如果手动可以systemd不可以,可以看看是不是权限问题,example里的service文件User是nobody,改成root即可

jas0nxu avatar Aug 17 '20 23:08 jas0nxu

@wangfeng35 trojan-go 理论上应该要随着 systemd 开机自启的。启动失败的原因是脚本用的 0.6.0 格式配置文件和 0.7.x 不合,还在修复中。感谢您的支持!

既然作者說了,我就響應作者號召,也分享下我的 trojan-go 腳本。

  1. Trojan-go quickstart 就是上面分享過的,仿造 trojan-quickstart 的 Trojan-go 最小化安裝腳本
  2. Trojan-go 自動部署 自動獲取 Trojan-go + 自動獲取證書 + 自動設置證書更新排程。相當於可以自動申請證書的 Trojan-go quickstart。不含任何 Web 服務器,為 Trojan-go 最小化部署腳本 ( 因最近空閒時間較少緣故未測試過此腳本,歡迎各路大佬協助完善 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/tj.sh)
  1. V2Ray TCP+TLS+Web , V2Ray WSS+CDN , Trojan-Go 三合一脚本 一鍵安裝 V2Ray 與 Trojan 並設置好 web 服務器與偽裝站的完整部署腳本。( V2Ray 與 Trojan 可共存,也可以只安裝一個 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/install.sh) && v2script

為什麼想做三合一腳本呢?

  1. 因為一開始寫的是 V2Ray 腳本,後來發現可以和 Trojan-go 共存才一起加進來
  2. 方便想在服務器上設置 VMess over WSS + CDN 作為 IP 被牆的備案的用戶
  3. 方便想自用 Trojan-go,又因為某些兼容性原因( eg. 分享節點給只有 V2Ray 客戶端的朋友 ) 需要保留 V2Ray 入站方式的用戶
  4. ~有些人覺得一個服務器上好幾種協議看起來很爽~

腳本 1、2 支持 Trojan-go 的其他特性 ( 需要自己改配置文件 ),腳本 3 由於共存的關係目前只支持以 Trojan-gfw 相容的模式運作。

脚本3一起安装三个的话,我这里trojan-go没启动起来,手动启动后才可用,不过ssh断开后就又断了,怎么守护进程?

我也遇到相似的问题。用 0.81 版自带的 trojan-go.service 经常无法启动。输入systemctl status trojan-go后,看见红字报错(code=exited, status=1/FAILURE) 。只能用 cd 命令转到 trojan-go 的安装目录里手动启动

如果手动可以systemd不可以,可以看看是不是权限问题,example里的service文件User是nobody,改成root即可

谢谢你的帮助。试过好多次。不是权限问题。改成root也报错。

pic2debug avatar Aug 18 '20 04:08 pic2debug

journalctl -ru trojan-go查看systemd日志。

xiruizhao avatar Aug 19 '20 09:08 xiruizhao

@wangfeng35 trojan-go 理论上应该要随着 systemd 开机自启的。启动失败的原因是脚本用的 0.6.0 格式配置文件和 0.7.x 不合,还在修复中。感谢您的支持!

既然作者說了,我就響應作者號召,也分享下我的 trojan-go 腳本。

  1. Trojan-go quickstart 就是上面分享過的,仿造 trojan-quickstart 的 Trojan-go 最小化安裝腳本
  2. Trojan-go 自動部署 自動獲取 Trojan-go + 自動獲取證書 + 自動設置證書更新排程。相當於可以自動申請證書的 Trojan-go quickstart。不含任何 Web 服務器,為 Trojan-go 最小化部署腳本 ( 因最近空閒時間較少緣故未測試過此腳本,歡迎各路大佬協助完善 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/tj.sh)
  1. V2Ray TCP+TLS+Web , V2Ray WSS+CDN , Trojan-Go 三合一脚本 一鍵安裝 V2Ray 與 Trojan 並設置好 web 服務器與偽裝站的完整部署腳本。( V2Ray 與 Trojan 可共存,也可以只安裝一個 )
bash <(curl -sL https://raw.githubusercontent.com/phlinhng/v2ray-tcp-tls-web/master/install.sh) && v2script

為什麼想做三合一腳本呢?

  1. 因為一開始寫的是 V2Ray 腳本,後來發現可以和 Trojan-go 共存才一起加進來
  2. 方便想在服務器上設置 VMess over WSS + CDN 作為 IP 被牆的備案的用戶
  3. 方便想自用 Trojan-go,又因為某些兼容性原因( eg. 分享節點給只有 V2Ray 客戶端的朋友 ) 需要保留 V2Ray 入站方式的用戶
  4. ~有些人覺得一個服務器上好幾種協議看起來很爽~

腳本 1、2 支持 Trojan-go 的其他特性 ( 需要自己改配置文件 ),腳本 3 由於共存的關係目前只支持以 Trojan-gfw 相容的模式運作。

脚本3一起安装三个的话,我这里trojan-go没启动起来,手动启动后才可用,不过ssh断开后就又断了,怎么守护进程?

我也遇到相似的问题。用 0.81 版自带的 trojan-go.service 经常无法启动。输入systemctl status trojan-go后,看见红字报错(code=exited, status=1/FAILURE) 。只能用 cd 命令转到 trojan-go 的安装目录里手动启动

如果手动可以systemd不可以,可以看看是不是权限问题,example里的service文件User是nobody,改成root即可

谢谢你的帮助。试过好多次。不是权限问题。改成root也报错。

是trojan-go配置修改了过字段了,上面我已经说过了 我的脚本没问题 https://github.com/jinwyp/one_click_script
你可以看我脚本里的配置信息,

jinwyp avatar Sep 05 '20 06:09 jinwyp

目前trojan-go还有很明显的生态问题。。windows客户端trojan-qt5已经删库了。找了一个一键安装脚本,安装完毕后用命令行客户端还是无法顺利使用。安装时caddy方式失败,nginx方式安装成功,但是下载下来的配置文件没考虑windows,手工scp了证书文件也还是无法工作。官方README里面也没提证书文件从何而来。我写项目文档Quick Start一般都是假设“对方是个有经验的程序员,但是对本项目一无所知”的前提下写文档,这样就不会有文档上的明显欠缺。

starwar6160 avatar Sep 06 '20 11:09 starwar6160