【问题标题】:Set up Ubuntu Apache2 SSL using .pem and .key from Cloudflare使用来自 Cloudflare 的 .pem 和 .key 设置 Ubuntu Apache2 SSL
【发布时间】:2021-02-27 23:34:50
【问题描述】:

我正在使用 Cloudflare 在 Ubuntu 20 上使用 Apache2 建立安全连接。我使用他们的 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

它只是说“语法正常”

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

【问题讨论】:

  • 您能否确认您的 SSL 配置包含在 /etc/apache2/sites-enabled 中?
  • 就是这样!!我将 80 和 443 保存在单独的文件中,并且需要像处理非 ssl 文件一样运行“sudo a2ensite example.com-ssl.conf”。

标签: ubuntu ssl apache2 cloudflare


【解决方案1】:

有了 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 文件,则需要将它们添加到可用的站点中,您可以这样做:

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

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

你还需要运行

sudo a2enmod ssl
sudo systemctl restart apache2

将 Cloudflare 设置为严格

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

【讨论】:

    猜你喜欢
    • 2018-12-10
    • 2018-01-17
    • 1970-01-01
    • 1970-01-01
    • 2022-08-11
    • 1970-01-01
    • 2011-05-22
    • 2013-11-19
    • 2015-11-20
    相关资源
    最近更新 更多