前言
为了利用现有Nginx服务,本文采用手动搭建安装Trojan-go
申请tls证书
安装acme.sh脚本
(请在root用户下安装)
1、【可选】安装依赖
yum -y install socat
2、安装acme.sh脚本
curl https://get.acme.sh | sh
出现:Install success!表示安装成功
3、让环境变量生效
source ~/.bashrc
用acme.sh脚本申请证书
申请证书时会占用80端口,申请时可先临时停止nginx等占用80端口的服务。
1、使用邮箱注册账号
acme.sh --register-account -m xxx@qq.com
2、签发证书,your_domain.com替换成你的域名
acme.sh --issue -d your_domain.com --standalone -k ec-256 --force
出现:Cert success. 以及 证书路径表示成功
3、创建证书存储目录
mkdir /root/your_domain.com
4、复制/安装证书,your_domain.com替换成你的域名
acme.sh --installcert -d your_domain.com --fullchainpath /root/your_domain.com/fullchain.crt --keypath /root/your_domain.com/privkey.key --ecc --force
安装配置Nginx
创建网站
mkdir /home/www/your_domain.com
vi /home/www/your_domain.com/index.html
#index.html文件放任意内容,例如
hello world!
安装Nginx
网站配置文件
注意:
1、your_domain.com替换为你的域名(共3处)
2、1239为网站对外端口号,可自行设定
vi /etc/nginx/conf.d/trojan.conf
server{
listen 1239;
server_name your_domain.com;
root /home/www/trojan;
index index.html;
ssl on;
ssl_certificate /root/your_domain.com/fullchain.crt;
ssl_certificate_key /root/your_domain.com/privkey.key;
ssl_ciphers TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+ECDSA+AES128:EECDH+aRSA+AES128:RSA+AES128:EECDH+ECDSA+AES256:EECDH+aRSA+AES256:RSA+AES256:EECDH+ECDSA+3DES:EECDH+aRSA+3DES:RSA+3DES:!MD5;
ssl_prefer_server_ciphers on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
ssl_session_cache shared:SSL:50m;
ssl_session_timeout 1d;
ssl_session_tickets on;
}
server{
listen 1234;
return 404;
}
安装配置trojan-go
安装trojan-go
/usr/local/trojan-go
wget https://github.com/p4gefau1t/trojan-go/releases/download/v0.10.6/trojan-go-linux-amd64.zip
配置trojan-go
/usr/local/trojan-go
{
"run_type": "server",
"local_addr": "0.0.0.0",
"local_port": 1240,
"remote_addr": "127.0.0.1",
"remote_port": 1239,
"password": [
"xxxxxxxxxxx"
],
"ssl": {
"cert": "/root/your_domain.com/fullchain.crt",
"key": "/root/your_domain.com/privkey.key",
"sni": "s.phpdota.com",
"fallback_port": 1234
},
"router": {
"enabled": true,
"block": [
"geoip:private"
],
"geoip": "/usr/local/trojan-go/geoip.dat",
"geosite": "/usr/local/trojan-go/geosite.dat"
}
}
创建sytemctl启动文件
1、复制启动文件至系统服务目录
cp /usr/local/trojan-go/example/trojan-go.service /usr/lib/systemd/system/
2、修改启动文件,将其中启动路径调整为如下:
ExecStart=/usr/local/trojan-go/trojan-go -config /usr/local/trojan-go/server.json
3、启动服务&设置开机启动
systemctl daemon-reload
systemctl start trojan-go
systemctl enable trojan-go