在为nginx添加SSL认证的时候,出现了如下错误
nginx: [emerg] SSL_CTX_use_certificate("/ssl/server.crt") failed (SSL:
error:140AB18F:SSL routines:SSL_CTX_use_certificate:ee key too small)
如下是我使用docker 启动nginx容器服务时候的日志输出
docker 查询日志
$ docker logs [OPTIONS] CONTAINEROptions:--details 显示更多的信息-f, --follow 跟踪实时日志--since string 显示自某个timestamp之后的日志,或相对时间,如42m(即42分钟)--tail string 从日志末尾显示多少行日志, 默认是all-t, --timestamps 显示时间戳--until string 显示自某个timestamp之前的日志,或相对时间,如42m(即42分钟)
他的意思就是说私钥长度太短了,我开始通过openssl 设置的是1024位的,然后我改成2048位的,如下
openssl genrsa -des3 -out server.key 2048
然后重新生成ssl server证书文件,问题就解决了。(好像是和Linux系统的内核有关,我的服务器版本是CentOS 7.9)
References:
- https://www.cnblogs.com/stronger-xsw/p/12760904.html