gpt4 book ai didi

ssl - Nginx : SSL_CTX_use_PrivateKey_file (. .) 失败

转载 作者:太空宇宙 更新时间:2023-11-03 12:42:26 24 4
gpt4 key购买 nike

为了测试目的,我使用 openssl 自行生成了 2 个自签名证书:

    $ sudo openssl req -new -newkey rsa:4096 -days 365 -nodes -x509 -subj "/C=FR/ST=Charente/L=Mornac/O=Office/CN=api.cockpit.yves" -keyout /usr/local/etc/nginx/ssl/api.cockpit.yves.key -out /usr/local/etc/nginx/ssl/api.cockpit.yves.crt
Generating a 4096 bit RSA private key
..........................................................................++
...................++
writing new private key to '/usr/local/etc/nginx/ssl/api.cockpit.yves.key'
-----
$ sudo openssl req -new -newkey rsa:4096 -days 365 -nodes -x509 -subj "/C=FR/ST=Charente/L=Mornac/O=Office/CN=admin.cockpit.yves" -keyout /usr/local/etc/nginx/ssl/admin.cockpit.yves.key -out /usr/local/etc/nginx/ssl/admin.cockpit.yves.crt
Generating a 4096 bit RSA private key
..................................................................................................................................................++
..............................++
writing new private key to '/usr/local/etc/nginx/ssl/admin.cockpit.yves.key'
-----

在我的 nginx.conf 文件中,我设置了 Https 服务器:

server {
listen 8444 ssl;

server_name admin.cockpit.yves;

ssl_certificate ssl/admin.cockpit.yves.crt;
ssl_certificate_key ssl/admin.cockpit.yves.crt;
...
}

server {
listen 8445 ssl;

server_name api.cockpit.yves;

ssl_certificate ssl/api.cockpit.yves.crt;
ssl_certificate_key ssl/api.cockpit.yves.crt;
...
}

但是测试 nginx 配置,我得到以下错误:

    sudo nginx -t
nginx: [emerg] SSL_CTX_use_PrivateKey_file("/usr/local/etc/nginx/ssl/admin.cockpit.yves.crt") failed (SSL: error:0906D06C:PEM routines:PEM_read_bio:no start line:Expecting: ANY PRIVATE KEY error:140B0009:SSL routines:SSL_CTX_use_PrivateKey_file:PEM lib)
nginx: configuration file /usr/local/etc/nginx/nginx.conf test failed

有什么问题吗?是因为我尝试为同一域 cockpit.yves 的 2 个不同子域(admin. 和 api.)设置 2 个证书吗?

感谢您的反馈

最佳答案

您的 key 文件可能不包含您的 key

我也遇到过这个问题。在我的例子中,我将我的 crt 粘贴到我的 key 文件中(我的实际 crt 文件是正确的)。

我的 key 文件以字符串开头:-----BEGIN RSA PRIVATE KEY-----

然后以字符串结束:-----END RSA PRIVATE KEY-----

在问题下的评论中,Richard Smith 实际上建议将此作为解决方案。我将其发布为以后帮助其他人的答案。支持理查德。


更新

我还通过在我提供给我的 nginx 服务器的 crt 文件中的证书之前粘贴组合证书来体验此消息。

关于ssl - Nginx : SSL_CTX_use_PrivateKey_file (. .) 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35540159/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com