这年头该用啥代理?
富强、民主、文明、和谐
自由、平等、公正、法治
爱国、敬业、诚信、友善
更新
19.4.8更新权限配置
Server
Trojan
这里还是说在Debian上的搭建方式
首先建议你升级到Debian 10(buster):
apt update
apt dist-upgrade
cp /etc/apt/sources.list /etc/apt/sources.list.bak
sed -i 's/stretch/buster/g' /etc/apt/sources.list #将stretch更换为你的codename
apt update
apt dist-upgrade
apt --purge autoremove然后安装Trojan:
apt install trojanTrojan的配置位于/etc/trojan.json
编辑它将"password":内的值改为你自己的密码"cert":和"key":改为你网站的ssl证书和私钥
通过acme申请证书:
# 安装acme
curl https://get.acme.sh | sh
echo 'alias acme.sh=~/.acme.sh/acme.sh' >> ~/.bashrc
source ~/.bashrc
# 声明Cloudflare帐号与API KEY并申请证书(在这个[页面](https://www.cloudflare.com/a/profile)点击Global API Key--->View API Key即可看到):
export CF_Key="你的API KEY"
export CF_Email="你的邮箱"
acme.sh --issue --dns dns_cf -d google.com -d *.google.com #这里的google.com换成你的域名
# 安装证书:
mkdir -p /etc/letsencrypt/live/google.com/
acme.sh --installcert -d google.com \ # 记得更改域名
--key-file /etc/letsencrypt/live/google.com/privkey.pem \ # 记得更改域名
--fullchain-file /etc/letsencrypt/live/google.com/fullchain.pem \ # 记得更改域名
--reloadcmd "chown -R nginx:nginx /etc/letsencrypt/ && systemctl restart trojan" # 这里的nginx注意修改为nginx使用的用户名(完整内容可以阅读这篇文章)
其他可保持默认
如果你使用Nginx,则建议将trojan服务(/lib/systemd/system/trojan.service)的运行用户修改为nginx或www-data(其它web server用对应的用户也可以):
...
User=nginx # 或www-data
...否则将证书的权限开放出来(不建议):
chmod 755 -R /etc/letsencrypt/ # 记得修改acme.sh的--reloadcmd参数启用服务:
systemctl enable trojan
systemctl start trojanNginx
Trojan对于非Trojan客户端的请求都会转向服务端本地80端口(仍是443端口),这里选用nginx作为web服务器
apt install nginx
nano /etc/nginx/sites-enabled/default所以nginx的配置不能写有监听443,监听在本地的80端口即可
至于其它配置照常写就行了(关于ssl证书等配置将无效)
如果你还希望运行v2ray则加上(因为trojan还没有像样的手机客户端,所以只能先跑个v2ray):
...
location /download {
proxy_redirect off;
proxy_pass http://localhost:1234;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
}
...启动Nginx:
systemctl enable nginx
systemctl start nginxV2ray
V2ray的TLS+websocket+Nginx应该是最稳的方案之一了
但是延迟却比较感人,且因为GO未支持tls1.3还只能用tls1.2
wget https://install.direct/go.sh -O v2ray.sh
bash v2ray.sh更改配置:
rm /etc/v2ray/config.json
nano /etc/v2ray/config.json写入(请注意并删除中文注释):
{
"outbound": {
"streamSettings": null,
"tag": null,
"protocol": "freedom",
"mux": null,
"settings": null
},
"log": {
"access": "/var/log/v2ray/access.log",
"loglevel": "info",
"error": "/var/log/v2ray/error.log"
},
"outboundDetour": [{
"tag": "direct",
"protocol": "freedom",
"settings": null
},
{
"tag": "blocked",
"protocol": "blackhole",
"settings": null
}
],
"inbound": {
"streamSettings": {
"network": "ws",
"kcpSettings": null,
"wsSettings": {
"path": "/download" #这里必须和Nginx配置中"/download"的路径一样
},
"tcpSettings": null,
"tlsSettings": {},
"security": ""
},
"settings": {
"ip": null,
"udp": true,
"clients": [{
"alterId": 100,
"security": "none",
"id": "xxxx-xxxx-xxxx-xxxx" #请访问 https://www.uuidgenerator.net/ 获取UUID并改入
}],
"auth": null
},
"protocol": "vmess",
"port": 1234, #这里的端口也必须和Nginx配置中"/download"的端口一样
"listen": null
},
"inboundDetour": null,
"routing": {
"settings": {
"rules": [{
"ip": [
"0.0.0.0/8",
"10.0.0.0/8",
"100.64.0.0/10",
"127.0.0.0/8",
"169.254.0.0/16",
"172.16.0.0/12",
"192.0.0.0/24",
"192.0.2.0/24",
"192.168.0.0/16",
"198.18.0.0/15",
"198.51.100.0/24",
"203.0.113.0/24",
"::1/128",
"fc00::/7",
"fe80::/10"
],
"domain": null,
"type": "field",
"port": null,
"outboundTag": "blocked"
}],
"domainStrategy": null
},
"strategy": "rules"
},
"dns": null
}
# 你可真鸡儿长启动V2ray服务:
systemctl enable v2ray
systemctl start v2rayClient
Trojan
Cient配置文件示例(注意并删除中文注释):
{
"run_type": "client",
"local_addr": "127.0.0.1",
"local_port": 这里为你本地的socks5代理端口,例如1080,
"remote_addr": "这里改为你网站的地址,例如google.com",
"remote_port": 这里改为你的端口,例如443,
"password": ["这里改为你的密码"],
"append_payload": true,
"log_level": 1,
"ssl": {
"verify": true,
"verify_hostname": true,
"cert": "",
"cipher": "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:AES128-SHA:AES256-SHA:DES-CBC3-SHA",
"sni": "这里改为你网站的地址,例如google.com",
"alpn": [
"h2",
"http/1.1"
],
"reuse_session": true,
"curves": "",
"sigalgs": ""
},
"tcp": {
"keep_alive": true,
"no_delay": true,
"fast_open": true,
"fast_open_qlen": 5
}
}当然,你可以使用这个生成配置:https://trojan-gfw.github.io/trojan-config-gen/
记得启用服务:
Gentoo:
rc-update add trojan default
rc-service trojan startsystemd:
systemctl enable trojan
systemctl start trojanKnown issues
如果你的Server有ipv6 IP
修改/etc/gai.conf
加入或去掉注释以下内容然后重启网络(简单重启也行):
precedence ::ffff:0:0/96 100Community
Telegram Group
Telegram Channel
V2ray
这货配置文件太鸡儿长了
对于json配置我还是直接丢链接吧:https://github.com/KiriKira/vTemplate
这里说下V2ray手动配置(Android客户端为例,不建议直接导入使用json配置):
###服务器###
主机:域名(无路径)
端口: 443
用户ID:填server的UUID
Alterid: 100
加密方式:none
用户等级: 0
网络: WebSocket 或 ws
加密方式: tls
服务器证书域名: 不填
允许不安全连接: 关闭
WebSocket或ws路径: /download
HTTP头: 不填