Ubuntu Install Trojan Gfw
脚本仅适用于vultr ubuntu 19.10或者以上系统,谢谢!
root执行以下命令即可 ym就是域名,mm就是密码
1bash <(curl -sL https://scaleya.com/trojan.sh)
脚本具体内容如下:
1#!/bin/bash
2apt-get update
3apt install socat -y
4apt install trojan -y
5apt install nginx -y
6service nginx stop
7curl https://raw.githubusercontent.com/Neilpang/acme.sh/master/acme.sh > acme.sh&&bash acme.sh --install \--home /etc
8
9read -p "pls ur domain:" ym
10echo "ur domain is $ym"
11read -p "pls ur mm:" mm
12echo "ur mm is $mm"
13ecc="ecc"
14
15/etc/acme.sh --issue --standalone -d $ym --keylength ec-256
16mkdir -p /etc/letsencrypt/$ym\_ecc
17/etc/acme.sh --install-cert -d $ym --ecc \
18 --cert-file /etc/letsencrypt/$ym\_ecc/cert.pem \
19 --key-file /etc/letsencrypt/$ym\_ecc/private.key \
20 --fullchain-file /etc/letsencrypt/$ym\_ecc/fullchain.pem \
21 --reloadcmd "sudo systemctl restart nginx.service"
22
23
24sudo chmod +rx /etc/letsencrypt/$ym\_ecc/*
25
26cat > /etc/trojan/config.json << EOF
27{
28 "run_type": "server",
29 "local_addr": "::",
30 "local_port": 443,
31 "remote_addr": "127.0.0.1",
32 "remote_port": 80,
33 "password": [
34 "$mm",
35 "password2"
36 ],
37 "log_level": 1,
38 "ssl": {
39 "cert": "/etc/letsencrypt/${ym}_${ecc}/cert.pem",
40 "key": "/etc/letsencrypt/${ym}_${ecc}/private.key",
41 "key_password": "",
42 "cipher": "ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256",
43 "prefer_server_cipher": true,
44 "alpn": [
45 "http/1.1"
46 ],
47 "reuse_session": true,
48 "session_ticket": false,
49 "session_timeout": 600,
50 "plain_http_response": "",
51 "curves": "",
52 "dhparam": ""
53 },
54 "tcp": {
55 "prefer_ipv4": false,
56 "no_delay": true,
57 "keep_alive": true,
58 "fast_open": false,
59 "fast_open_qlen": 20
60 },
61 "mysql": {
62 "enabled": false,
63 "server_addr": "127.0.0.1",
64 "server_port": 3306,
65 "database": "trojan",
66 "username": "trojan",
67 "password": ""
68 }
69}
70EOF
71
72systemctl enable trojan
73systemctl start trojan
74systemctl status trojan
75
76
77
78apt-get install cron -y
79systemctl status cron
80
81echo "0 0 * * * root service trojan restart" >> /etc/crontab
82systemctl restart cron