已安装 Bitnami Let's Encrypt SSL - 站点不安全

Bitnami Let's Encrypt SSL installed - site is insecure

提问人:Mor Sagmon 提问时间:10/3/2023 最后编辑:Mor Sagmon 更新时间:10/5/2023 访问量:60

问:

在我的 AWS LightSail NodeJS 服务器上,我使用 bncert-tool 安装了 Bitnami Let's Encrypt SSL 证书。

按照这里的说明,我还配置了vhosts文件:

/opt/bitnami/apache/conf/vhosts/myapp-http-vhost.conf
/opt/bitnami/apache/conf/vhosts/myapp-https-vhost.conf

在这两个文件中,我将 /opt/bitnami/projects/myapp/public 更改为我的应用程序文件夹:例如:/opt/bitnami/projects/whiteboard

<VirtualHost _default_:80>
    ServerAlias *
    DocumentRoot "/opt/bitnami/apache/htdocs/whiteboard"
    <Directory "/opt/bitnami/apache/htdocs/whiteboard">
      Require all granted
    </Directory>
    ProxyPass / http://localhost:3000/
    ProxyPassReverse / http://localhost:3000/
  </VirtualHost>

尝试在 Chrome 上请求测试 html 文件时:我收到“您的连接不是私有的”页面。在浏览器中打开证书,它显示一个过期的 example.com 证书 - 绝对不是我们需要看到的SSL证书。https://simplifylearning.org/test-wb.html

这两个命令返回完全相同的哈希值:

openssl pkey -in /opt/bitnami/apache/conf/simplifylearning.org.crt -pubout -outform pem | sha256sum
openssl pkey -in /opt/bitnami/apache/conf/simplifylearning.org.key -pubout -outform pem | sha256sum

在文件中,有以下部分显示我的证书:bitnami-ssl.conf

<VirtualHost _default_:443>
  DocumentRoot "/opt/bitnami/apache/htdocs"
  SSLEngine on
  SSLCertificateFile "/opt/bitnami/apache/conf/simplifylearning.org.crt"
  SSLCertificateKeyFile "/opt/bitnami/apache/conf/simplifylearning.org.key"

查看 bncrypt-tool 生成的文件,它显示了有效的条目:simplifylearning.org.json

{
    "domain": "simplifylearning.org",
    "certUrl": "https://acme-v02.api.letsencrypt.org/acme/cert/0419...d658",
    "certStableUrl": "https://acme-v02.api.letsencrypt.org/acme/cert/0419...d658"
}

证书文件似乎具有正确的权限:

ls -la /opt/bitnami/letsencrypt/certificates/simplifylearning.org.crt
-rw-r--r-- 1 bitnami root 5292 Oct  3 14:27 /opt/bitnami/letsencrypt/certificates/simplifylearning.org.crt

ls -la /opt/bitnami/letsencrypt/certificates/simplifylearning.org.key
-rw-r--r-- 1 bitnami root 227 Oct  3 14:27 /opt/bitnami/letsencrypt/certificates/simplifylearning.org.key

我重新启动了apache服务器:

sudo /opt/bitnami/ctlscript.sh restart apache

仍然 - 浏览器找不到我的证书。

尝试在其他浏览器上避免缓存问题:Brave 和 FireFox - 同样的问题。

编辑:这是我继续以不安全的HTTP方式访问网站时在浏览器上收到的内容:

Proxy Error
The proxy server received an invalid response from an upstream server.
The proxy server could not handle the request

Reason: Error reading from remote server

我错过了什么?

谢谢!

Apache SSL 证书 Bitnami

评论

0赞 Dean Van Greunen 10/3/2023
您还需要从 CA 本身设置完整证书
1赞 Mor Sagmon 10/4/2023
什么完整证书?这里没有 CA。此证书由 Bitnami 颁发并由其授权。
0赞 Dean Van Greunen 10/4/2023
你需要在你的 apache2 配置中包含你的ssl certificate ca bundle

答:

0赞 Mor Sagmon 10/5/2023 #1

这是缺少的内容:

在此配置文件中:

/opt/bitnami/apache/conf/vhosts/myapp-https-vhost.conf

指向的 SSL 证书文件是默认的 server.crtserver.key 文件,由 apache 作为示例提供(example.com 作为所有者)。就我而言,这就是他们所指向的地方:

/opt/bitnami/apache/conf/bitnami/certs/server.crt
/opt/bitnami/apache/conf/bitnami/certs/server.key

因此,在上面的配置文件中,更改指向为您的网站生成的 Let's Encrypt SSL 文件的指针。就我而言:

/opt/bitnami/letsencrypt/certificates/simplifylearning.org.crt
/opt/bitnami/letsencrypt/certificates/simplifylearning.org.key

不幸的是,这个小细节在我遵循的文档和教程中没有提到,否则非常好,尤其是这个:https://github.com/joswayski/Lightsail-Setup-Custom-Domain-SSL