![](/img/trans.png)
[英]Unable to establish SSL connection while setting up SSL on Ubuntu/Apache2
[英]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.