让我们加密 OpenVPN AS

Ben*_*ers 8 ssl openvpn lets-encrypt

我有一个 OpenVPN AS 正在运行,我正在尝试从 letencrypt 设置 SSL 证书(运行 ubuntu)。

我已经设法从letsencrypt(使用letsencrypt独立)获取我的证书,我希望在OpenVPN ssl配置中创建一个指向证书的符号链接。但是,当我查看/usr/local/openvpn_as/etc/web-ssl它时,它与我的/live/domain/cert.pem等...

有谁知道我如何将我的 openvpn 作为实例提供 Letencrypt 证书?

编辑:ls -l 目录

openvpnas@openvpnas2:/usr/local/openvpn_as/etc/web-ssl$ ls -l
total 16
-rw-r--r-- 1 root root 1111 Mar 10 13:30 ca.crt
-rw------- 1 root root 1708 Mar 10 13:30 ca.key
-rw-r--r-- 1 root root 1078 Mar 10 13:30 server.crt
-rw------- 1 root root 1704 Mar 10 13:30 server.key



root@openvpnas2:/etc/letsencrypt/live/my.domain# ls -l
total 0
lrwxrwxrwx 1 root root 37 Mar 10 19:03 cert.pem -> ../../archive    /my.domain/cert1.pem
lrwxrwxrwx 1 root root 38 Mar 10 19:03 chain.pem -> ../../archive/my.domain/chain1.pem
lrwxrwxrwx 1 root root 42 Mar 10 19:03 fullchain.pem -> ../../archive/my.domain/fullchain1.pem
lrwxrwxrwx 1 root root 40 Mar 10 19:03 privkey.pem -> ../../archive/domain/privkey1.pem
Run Code Online (Sandbox Code Playgroud)

Ben*_*ers 12

为了在 openvpnas 上使用 letencrypt 证书,您需要具有以下符号链接:

/usr/local/openvpn_as/etc/web-ssl/ca.crt -> /etc/letsencrypt/live/my.domain/fullchain.pem
/usr/local/openvpn_as/etc/web-ssl/server.crt -> /etc/letsencrypt/live/my.domain/cert.pem
/usr/local/openvpn_as/etc/web-ssl/server.key -> /etc/letsencrypt/live/my.domain/privkey.pem
Run Code Online (Sandbox Code Playgroud)


小智 5

请不要为 OpenVPN 使用公共 CA。无需信任外部方与您的 VPN 网络流量。

只需创建您自己的 CA,例如easy-rsa

  • 使用公共 CA 如何构成“信任外部方与您的 VPN 网络流量”?他们只是签署了证书。 (6认同)
  • 此外,VPN 网络流量和 OpenVPN 访问服务器之间似乎存在混淆。我们不想拥有一个公共 CA 签名证书来保护 OpenVPN 访问服务器吗?这是标准的网络流量,应该加密。 (5认同)

小智 5

尝试使用 Ben Flowers 的答案(将 OpenVPN 配置文件夹中的 PEM 文件符号链接到 Let's Encrypt 证书)但没有成功,直到我在OpenVPN 文档中看到这一点:

. . . 如果您有自签名证书或任何证书存储在配置数据库中,则 web-ssl 目录中的文件将被忽略。

如果您从 Web UI 手动上传证书,就会发生这种情况。我使用以下步骤(在同一文档页面上找到)删除了手动上传的证书,并且 Let's Encrypt 证书变为活动状态。

cd /usr/local/openvpn_as/scripts/
./sacli --key "cs.priv_key" ConfigDel
./sacli --key "cs.ca_bundle" ConfigDel
./sacli --key "cs.cert" ConfigDel
./sacli start
Run Code Online (Sandbox Code Playgroud)