SSL 无法与 Apache 配合使用,mod 已启用,端口已打开

SSL 无法与 Apache 配合使用,mod 已启用,端口已打开

我在 google 云平台中的生产服务器 debian 10 中遇到了问题。SSL 无法在 Apache 上运行,但以下条件已满足:

  • mod ssl 已经启用
  • 防火墙 GCP 已经打开。
  • 已经在 ports.conf 中监听 443
  • 端口 443 已打开,可以从内部(本地主机)或外部(另一台服务器/电脑)进行 telnet
  • certbot 已经发布
  • apache 配置 vhost 已经正确(我认为)

奇怪的是,我基于之前 VPS 的镜像创建了这个 VPS,https apache 已经可以正常工作。假设问题出在服务器 C 上。第一次我有服务器 A 并且 https 可以正常工作,我复制镜像并使服务器 B 也可以使用 https。然后我从服务器 B 复制镜像成为服务器 C,但 https 不起作用。

规格如下:

  • GCP 云计算
  • 阿帕奇 2.4
  • cloudflare 免费计划(也适用于服务器 A 和 B)
  • Debian 10

我是否遗漏了任何步骤?谢谢

编辑:

这是来自 Chrome 的错误:ERR_SSL_PROTOCOL_ERROR

这是来自 Firefox 的信息:SSL_ERROR_RX_RECORD_TOO_LONG

curl myserverIP -sv 的结果:

* Rebuilt URL to: MyServerIp/
*   Trying MyServerIp...
* TCP_NODELAY set
* Connected to MyServerIp (MyServerIp) port 80 (#0)
> GET / HTTP/1.1
> Host: MyServerIp
> User-Agent: curl/7.55.1
> Accept: */*
>
< HTTP/1.1 200 OK
< Date: Wed, 11 Nov 2020 03:09:31 GMT
< Server: Apache/2.4.38 (Debian)
< Last-Modified: Sun, 20 Sep 2020 11:53:07 GMT
< ETag: "3ee-5afbd609741c1"
< Accept-Ranges: bytes
< Content-Length: 1006
< Vary: Accept-Encoding
< Content-Type: text/html
<
<!DOCTYPE html>
<html>
        <head>
                <title>MISTAR on Google Cloud</title>
                <link rel="icon" href="favicon_exi.png" type="image/gif" sizes="16x16">
        </head>
        <style>
        html, body {
        height: 100%;
        }
        body {
        margin: 0;
        }
        .flex-container {
        height: 100%;
        padding: 0;
        margin: 0;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        align-items: center;
        justify-content: center;
        }
        .row {
        width: auto;
        /*border: 1px solid blue;*/
        }
        .flex-item {
        /*background-color: tomato;*/
        padding: 5px;
        width: 300px;
        height: 50px;
        margin: 10px;
        line-height: 20px;
        color: white;
        font-weight: bold;
        font-size: 2em;
        text-align: center;
        }
        </style>
        <body>
                <div class="flex-container">
                        <div class="row">
                                <div class="flex-item"><img src="mistar-main.493699d8.png" height="60px" /></div>
                                <div class="flex-item"><img src="cloud-logo.svg" width="280px" /></div>
                        </div>
                </div>
        </body>
</html>* Connection #0 to host MyServerIp left intact

openssl的结果:

CONNECTED(00000003)
140205097211008:error:1408F10B:SSL routines:ssl3_get_record:wrong version number:../ssl/record/ssl3_record.c:332:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 5 bytes and written 313 bytes
Verification: OK
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
Early data was not sent
Verify return code: 0 (ok)

答案1

感谢所有帮助我调试的评论,在我将证书从蛇油证书更改为 sites-available 中的默认 ssl 文件中新生成的证书后,ssl 现在可以正常工作。

相关内容