如何解决LetsEncrypt 生成 fullchain.pem 和 privkey.pem 文件我需要 .crt 和 .key 文件我怎样才能得到它们?
运行sudo certbot --nginx -d mydomain.io -d www.mydomain.io
后
我得到:
Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/mydomain.io/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/mydomain.io/privkey.pem
要使我的应用正常运行,我需要 private.key
和 certificate.crt
文件。
我试过像这样转换 .pem
文件:
openssl x509 -outform der -in /etc/letsencrypt/live/mydomain.io/fullchain.pem -out certificate.crt
openssl rsa -outform der -in /etc/letsencrypt/live/mydomain.io/privkey.pem -out private.key
尝试运行我的应用程序时,我在浏览器开发工具中收到此错误:
WebSocket connection to 'wss://<my-ip>:<my-port>/' failed:
Error in connection establishment: net::ERR_CERT_COMMON_NAME_INVALID
在服务器上,我收到此错误(显然这意味着我的应用无法解析密钥文件):
mbedtls error: returned -0x7780
所以看起来证书有问题。你能帮我弄清楚我做错了什么吗?什么可能导致这个问题?是否有其他方法可以生成 .crt
和 .key
文件,以便我可以仔细检查我没有弄错?
解决方法
事实证明我的问题与生成密钥无关,我做对了。
但是我的应用程序的客户端版本试图连接到 wss://<my-ip>:<my-port>/
,而我应该连接到 wss://<my-domain-name>:<my-port>/
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。