本文及资源最后更新时间 2021-08-15 by sky995
再使用Nginx,iptable,Socat一系列转发程序后,我决定使用HAProxy。原因很简单,纯粹,效率高,支持udp,简单。
介绍一下HAProxy:
简单的来说 HAProxy 就是一个负载均衡,TCP 和 HTTP 的代理程序,开源,高可用,C 写成。他原本的作用是将前端的大量流量分发到后端的服务器中,用于负载特别大的 WEB 网站的,这里被大材小用了。
使用 HAProxy 中转 SS 流量至少需要两台 VPS,国内一台,国外一台,SS 客户端直接连国内的 VPS,而通过国内的 VPS 转发流量到国外的 VPS 上。
安装
Debian/Ubuntu
sudo apt install -y haproxy
Centos
sudo yum install -y haproxy
配置
nano /etc/haproxy/haproxy.cfg
内容:
global ulimit-n 51200 defaults log global mode tcp option dontlognull timeout connect 5000 timeout client 50000 timeout server 50000 frontend v2-in bind *:20080 default_backend v2-out backend v2-out balance roundrobin server server1 test1.com:80 maxconn 20480 server server2 test2.com:80 maxconn 20480 server server3 test3.com:80 maxconn 20480 server server4 test4.com:52959 maxconn 20480 server server5 test5.com:52959 maxconn 20480
主要的配置就是 frontend
和 backend
,也很好理解,将入站的 80/52959 端口中的流量转发到 VPS 的 20080 端口。
如果多端口转发,复制这个配置多粘贴几个,按照需要的修改即可。
然后重启 HAProxy 即可。
<code><span class="pln">sudo </span><span class="pun">/</span><span class="pln">etc</span><span class="pun">/</span><span class="pln">init</span><span class="pun">.</span><span class="pln">d</span><span class="pun">/</span><span class="pln">haproxy restart</span></code>
启动之后,直接连HAProxy配置的这台机器的IP即可,需要注意的是配置用的是原来的配置的配置,改变的只有IP和端口。