您可以通过 HTTP 运行 VPN 连接吗?

您可以通过 HTTP 运行 VPN 连接吗?

是否可以通过端口 80 上的隧道连接到 VPN 服务器,从而消除防火墙的所有端口阻塞?

答案1

让我们开始吧。我更喜欢OpenVPN解决方案

OpenVPN Access Server 支持多种配置,包括对内部网络和/或私有云网络资源和应用程序进行安全远程访问,并具有细粒度的访问控制。它有一个适用于 Android 和 iOS 的移动应用程序,因此您也可以从智能手机访问 VPN 服务器。

在 Ubuntu/Debian 上安装 OpenVPN AS

与其他 VPN 服务器相比,OpenVPN AS 的安装和配置非常容易。

使用以下命令下载最新版本的 OpenVPN AS。

wget http://swupdate.openvpn.org/as/openvpn-as-1.8.5-Ubuntu12.amd_64.deb

使用以下命令安装:

xx@server1:~$ sudo dpkg -i openvpn-as-1.8.5-Ubuntu12.i386.deb
[sudo] password for xx: 
 Selecting previously unselected package openvpn-as.
 (Reading database ... 53813 files and directories currently installed.)
 Unpacking openvpn-as (from openvpn-as-1.8.5-Ubuntu12.i386.deb) ...
 Setting up openvpn-as (1.8.5-Ubuntu12) ...
 The Access Server has been successfully installed in /usr/local/openvpn_as
 Configuration log file has been written to /usr/local/openvpn_as/init.log
 Please enter "passwd openvpn" to set the initial
 administrative password, then login as "openvpn" to continue
 configuration here: https://ip-address:943/admin
 To reconfigure manually, use the /usr/local/openvpn_as/bin/ovpn-init tool.

Access Server web UIs are available here:

Admin UI: https://ip-address:943/admin

Client UI: https://ip-address:943/

现在OpenVPN AS已经安装完毕。

设置 OpenVPN 管理员用户和密码

在安装过程中,OpenVPN AS 将创建一个名为 openvpn 的默认管理员用户。使用以下命令设置用户 openvpn 的密码:

 xx@server1:~$ sudo passwd openvpn

访问管理 Web UI

您可以使用浏览器中的 URL 访问 OpenVPN Access Server 管理界面https://ip-address:943/admin/。如果您想从远程系统访问它,请允许该端口943通过路由器/防火墙。

将出现 SSL 警告消息,单击“继续”按钮忽略警告。系统将提示您输入用户名和密码。输入 openvpn 作为您的用户名,密码是您之前创建的。

登录后单击Agree接受许可协议。

现在您将能够访问OpenVPN管理控制台。在此管理控制台中,您可以执行各种 VPN 管理操作。浏览每个菜单/选项卡并根据您的喜好更改所需的值,尽管默认设置也可以正常工作。

在页面左侧面板上,转到Server Network Settings。更改TCP Port number80 更改UDP Port number80

单击保存设置并Update Running Server

就是这样,我们的服务器仅在端口上运行80但使用tcpudp协议。

客户端设置

在系统上创建新用户

 sudo useradd vpnvpn

不要使用adduser,因为您不需要/home/vpnvpn文件夹...为用户设置密码

 sudo passwd vpnvpn

从浏览器导航到并https://ip-address:943/使用 OpenVPN 登录u: vpnvpnp: vpnvpn

在新页面上,转到其上的链接Yourself (user-locked profile)。您将下载client.ovpn

openvpn在您的客户端系统中安装包:

yy@yy:~$ sudo apt-get install openvpn

现在使用以下命令连接到 VPN 服务器:

yy@yy:~$ sudo openvpn --config Downloads/client.ovpn 
 Thu Jun 27 11:36:43 2013 OpenVPN 2.2.1 x86_64-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] [eurephia] [MH] [PF_INET6] [IPv6 payload 20110424-2 (2.2RC2)] built on Feb 13 2013
Enter Auth Username:vpnvpn
Enter Auth Password:
 Thu Jun 27 11:36:50 2013 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
 Thu Jun 27 11:36:50 2013 Control Channel Authentication: tls-auth using INLINE static key file
  -- omitted the rest --

结束。您已vpn在端口上建立服务器80

admin可以更改很多参数,例如网络范围、路由等。

答案2

SoftEther VPN通过 HTTP/HTTPS 运行其 VPN 协议,具体来说,这样您就可以通过仅传递格式良好的 HTTP 流量的代理防火墙建立隧道。我认为这就是您想要的。

OpenVPN 可以配置为通过 HTTP 伪装其流量,但在实践中这可能很难做到。(我不认为 @2707974 的答案能帮到你;你需要添加 http-proxy 配置根据 OpenVPN 网站上的记录

相关内容