繁体   English   中英

使用来自 Cloudflare 的 .pem 和 .key 设置 Ubuntu Apache2 SSL

[英]Set up Ubuntu Apache2 SSL using .pem and .key from Cloudflare

我正在使用 Cloudflare 在使用 Apache2 的 Ubuntu 20 上设置安全连接。 我使用他们的 Origin Server 向导生成以下文件:

example.com.pem (原产地证书)

example.com.key文件(私钥)

我给了他们 Cloudflare 建议的扩展。

我跑了这个:

 sudo a2enmod ssl
 sudo systemctl restart apache2

这是我的设置:

<VirtualHost *:443>
    ....
    SSLEngine on
    SSLCertificateFile /path/example.com.pem
    SSLCertificateKeyFile /path/example.com.key

非安全站点工作正常(我还没有将其指向安全站点),但是当我尝试访问安全站点时仍然收到错误 525(SSL 握手失败)。 (我在运行 sudo a2enmod ssl 命令之前遇到网站关闭错误)

我试着看看它是否设置好:

apachectl configtest

它只是说“语法OK”

(编辑:我删除了我尝试过的错误内容 - 我现在知道这是错误的 - 以简化问题。)

使用 Max Ivanov 的评论答案,这有效:

生成文件

使用 Cloudflare 的 Origin Server 向导生成以下文件:

example.com.pem(原产地证书)

example.com.key 文件(私钥)

我给了他们 Cloudflare 建议的扩展。

复制到 Ubuntu

将文件复制到 Ubuntu。 一个好地方是 /etc/ssl

添加 .conf 文件的路径

这些文件位于 /etc/apache2/sites-available

您可以使用默认文件或为您的站点创建自己的特定文件。 我有 example.com.conf 和 example.com-ssl.conf

将复制的两个文件的路径添加到安全版本(example.com-ssl.conf)

<VirtualHost *:443>
   ....
   SSLEngine on
   SSLCertificateFile /path/example.com.pem
   SSLCertificateKeyFile /path/example.com.key

告诉 Ubuntu 使用它

如果您创建了自己的 conf 文件,那么您需要将它们添加到 sites-available 中,您可以这样做:

sudo a2ensite example.com.conf
sudo a2ensite example.com-ssl.conf

您可能还需要删除默认设置,具体取决于您的用例。 某处有一个命令......

你还需要运行

sudo a2enmod ssl
sudo systemctl restart apache2

将 Cloudflare 设置为严格

在仪表板中,将 ssl 设置为严格。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM