我正在尝试弄清楚如何设置一个 OpenVPN 服务器,以便能够将流量从特定端口转发到不同位置的另一个 OpenVPN 服务器。
我想这最好被描述为一种 OpenVPN 代理。
举个例子,假设我想要一个 OpenVPN 服务器,我不想让它处理 HTTP 请求,但其他一切都没问题。我在另一个位置有另一台服务器,我想让它处理 HTTP 请求。客户端只允许连接到第一台服务器,那么我该如何告诉第一台服务器将端口 80 上的所有请求转发到不同位置的服务器?
答案1
确保客户端和“代理”之间的隧道以路由模式运行。
确保“代理”能够(通过隧道)访问其他服务器上的服务。
设置DNAT。假设另一台服务端口80的服务器的IP是172.16.76.1:
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to 172.16.76.1
或者,运行某些类型的代理:balance、haproxy、nginx等等,取决于协议和用例。
- 确保客户端通过隧道(安全)IP 访问服务。