几个星期前,我安装了一个新的ssl证书来替换即将到期的证书。 .crt和.key的文件名保持不变。只有内容发生了变化。
现在,当我访问我的网站时,它说证书已过期,我发现它正在使用旧的证书链。我可以确认crt和key的内容是更新的内容。
gitlab-ctl status
run: gitlab-workhorse: (pid 30354) 18091s; run: log: (pid 15271) 21131317s
run: logrotate: (pid 7332) 91s; run: log: (pid 30308) 21128931s
run: mailroom: (pid 30436) 18060s; run: log: (pid 15266) 21131317s
run: nginx: (pid 3586) 1761s; down: log: 0s, normally up, want up
run: postgresql: (pid 30446) 18059s; run: log: (pid 10566) 13738330s
run: redis: (pid 30448) 18059s; run: log: (pid 10696) 13738292s
run: sidekiq: (pid 30463) 18057s; run: log: (pid 15264) 21131317s
run: unicorn: (pid 30487) 18053s; run: log: (pid 15267) 21131317s
gitlab-ctl tail nginx
2016/11/28 21:26:20 [crit] 6852#0: *13180076 SSL_shutdown() failed (SSL: error:140E0197:SSL routines:SSL_shutdown:shutdown while in init) while SSL handshaking, client: 55.108.238.72, server: 0.0.0.0:443
2016/11/28 21:26:23 [crit] 6852#0: *13180077 SSL_shutdown() failed (SSL: error:140E0197:SSL routines:SSL_shutdown:shutdown while in init) while SSL handshaking, client: 55.108.238.72, server: 0.0.0.0:443
这些关键信息每3秒发生一次。
我已经重新启动了nginx进程,但它没有做任何事情。我也运行了gitlab-ctl重新配置,但无济于事。我的/etc/gitlab/gitlab.rb
文件没有更改。它仍然具有nginx ssl路径
nginx['ssl_certificate'] = "/etc/pki/tls/certs/sitename.com.crt"
nginx['ssl_certificate_key'] = "/etc/pki/tls/private/sitename.com.key"
它还有external_url
external_url 'https://sitename.com/'
答案 0 :(得分:0)
证书在Web服务器启动时加载,因此您需要在更新时重新加载/重新启动。
答案 1 :(得分:0)
Nginx将在/etc/nginx/conf.d目录中检查以.conf结尾的文件以进行其他配置。因此,请检查您是否创建了一个名为ssl.conf的文件,并在其中配置了新的SSL证书。
请运行以下命令检查证书验证:
{{1}}