胆囊息肉

首页 » 常识 » 问答 » 运行OpenConnectVPN服务器
TUhjnbcbe - 2025/2/9 18:25:00
北京治疗白癜风的最好的医院 https://jbk.39.net/yiyuanzaixian/bjzkbdfyy/etbdf/

本教程将向您展示如何使用HAProxy在同一个设备上运行OpenConnectVPN服务器(ocserv)和Apache/Nginx。OpenConnect(ocserv)是CiscoAnyConnectVPN协议的开源实现。

先决条件

为了学习本教程,假设您已经使用LetsEncryptTLSserver证书设置了OpenConnectVPN服务器。如果没有,请遵循以下教程之一。

在Ubuntu0.04上用LetsEncrypt设置OpenConnectVPN服务器(ocserv)使用LetsEncrypt在Ubuntu16.04/18.04上设置OpenConnectVPN服务器(ocserv)使用LetsEncrypt在Debian10Buster上设置OpenConnectVPN服务器(ocserv)使用LetsEncrypt在CentOS8/RHEL8上设置OpenConnectVPN服务器(ocserv)

使OpenConnectVPN服务器和web服务器同时使用端口44

默认情况下,OpenConnectVPN服务器监听端口44。如果您已经让Apache/Nginx监听端口44,那么ocserv无法绑定到端口44。您可以将ocserv配置为在另一个端口上侦听,但这将要求最终用户在客户端软件中指定端口,如果您关心用户体验,应该避免使用该端口。此外,TCP端口44上的TLS流量通常在QoS(服务质量)方面享有更高的优先级,因此您将有更好的速度。

通常一个端口只能由一个进程使用。但是,我们可以使用HAproxy(高可用性代理)和SNI(服务器名称指示)使ocserv和Apache/Nginx同时使用端口44。

Ocserv配置

首先,编辑ocserv配置文件。

sudonano/etc/ocserv/ocserv.conf

取消对以下行的注释。这将允许ocserv获取客户端IP地址,而不是HAproxyIP地址。

listen-proxy-proto=true

然后找到下面一行。

#listen-host=[IP

HOSTNAME]

换成

listen-host=17.0.0.1

这将使ocserv监听17.0.0.1,因为稍后HAproxy将需要监听公共IP地址。保存并关闭文件。然后重启ocserv。

sudosystemctlstartocserv

接下来,我们还需要让web服务器只监听本地主机,而不是监听公共IP地址。

Nginx配置

如果使用Nginx,请编辑服务器块文件。

sudonano/etc/nginx/conf.d/example.

1
查看完整版本: 运行OpenConnectVPN服务器