HAProxy SNI 中转 TLS 获取用户真实 IP
后端最低版本要求:
  • Trojanp >= 0.0.8
  • V2Ray-Poseidon >= 1.6.1

V2Ray 配置

修改 config.json 将 poseidon 配置下面的 acceptProxyProtocol 选项值改为 true

安装 HAProxy

1
yum -y install haproxy
Copied!

修改 HAProxy 配置文件

清空默认配置
1
echo '' > /etc/haproxy/haproxy.cfg
Copied!
举例,现在我有个中转分配的端口为 20001,需要转发 sg1-test-trojanp.poseidon-gfw.cc
1
frontend sg1_frontend
2
bind *:20001
3
default_backend sg1_server
4
5
backend sg1_server
6
server s1 sg1-test-trojanp.poseidon-gfw.cc:443 send-proxy
Copied!
如果需要中转多个落地机,可以复制上面的内容,比如
1
# 这是第一个
2
frontend sg1_frontend
3
bind *:20001
4
default_backend sg1_server
5
6
backend sg1_server
7
server s1 sg1-test-trojanp.poseidon-gfw.cc:443 send-proxy
8
9
# 这里是第二个
10
frontend jp1_frontend(这个是可以随便改的,每个中转端口一个名字,别重就行)
11
bind *:20002
12
default_backend jp1_server(这里必须为落地的名字, backend 后面的内容)
13
14
backend jp1_server(此处为落地的名字,可以随便改,每个落地一个名字,别重就行)
15
server s1 jp1-test-trojanp.poseidon-gfw.cc:443 send-proxy
16
17
# ... ... 还可以有更多
Copied!
重启 HAProxy
1
systemctl restart haproxy
Copied!

使用小火箭测试

服务器
中转服务器域名或IP
端口
20001
Peer 名称
sg1-test-trojanp.poseidon-gfw.cc

Trojanp SSPanel-Uim 节点地址

1
中转机域名或IP;port=中转端口|host=落地机对应的域名
Copied!