首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >端口转发openvpn服务器到客户端

端口转发openvpn服务器到客户端
EN

Unix & Linux用户
提问于 2018-12-02 02:58:11
回答 1查看 2.1K关注 0票数 0

我有一个部署在Linode服务器上的OpenVPN服务器。我的计算机正在运行打开端口8089以进行客户端连接的软件。我的计算机没有公共ip,因此计算机将vpn连接到openvpn服务器,以便客户端连接vpn服务器的公共ip地址。

如何设置计算机的端口转发?我的意思是客户端如何通过openvpn服务器的公共ip连接到我的计算机上运行的端口8089的软件?

我的linode服务器: Debian 9使用ufw作为配置防火墙。我遵循这个tut https://www.cyberciti.biz/faq/how-to-install-and-configure-an-openvpn-server-on-debian-9-in-5-minutes/中的设置指南。

EN

回答 1

Unix & Linux用户

发布于 2018-12-02 09:43:05

在完成此工作之前,首先要确保您的VPN客户端具有固定的VPN IP地址。OpenVPN如何描述了如何完成此操作。确保从文档中的表中为客户机/服务器选择IP对。

现在,请确保您的Linode服务器可以访问您的客户端应用程序。也就是说。

代码语言:javascript
运行
复制
telnet <Fixed VPN IP of your client machine> 8089

为了连接外部世界,假设您的应用程序是基于HTTP的,我建议在Linode机器上安装一个反向代理。

在Linode服务器上安装反向代理,该代理将位于来自外部世界的连接之间,然后转发到应用程序。有许多可用的,如Nginx、Apache、HAProxy、TinyProxy。如果您有简单的需求,那么TinyProxy可能是一个很好的起点。安装完毕后,确保配置中有以下行:

代码语言:javascript
运行
复制
ConnectPort 8089
ReversePath "/" "http://<fixed IP of your VPN client>:8089"
ReverseOnly yes
ReverseMagic yes

您需要确保Linode服务器上的防火墙接受来自外部世界的传入连接。若要允许不受限制地访问,请使用UFW:

代码语言:javascript
运行
复制
sudo ufw allow 8089/tcp

或者,如果您只希望允许特定客户端访问您的应用程序:

代码语言:javascript
运行
复制
sudo ufw delete allow 8089/tcp

然后,对于每个应该能够访问的客户端:

代码语言:javascript
运行
复制
sudo ufw allow from <external client IP> to 8089/tcp

如果您还在VPN客户端计算机上运行防火墙,则还需要确保有允许Linode服务器连接到端口8089的规则。您将需要服务器的VPN IP。对于固定的IP,根据我引用的Open文档,您可以选择一对IP以供VPN服务器和客户端使用:

代码语言:javascript
运行
复制
sudo ufw allow from <Linode VPN Server IP> to 8089/tcp

您还可以调整配置,以便您的Linode服务器通过改变反向代理中的“Connect”参数来侦听完全不同的端口(例如80) &更新Linode服务器防火墙规则以匹配,而您的应用程序则停留在8089上。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/485427

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档