在GitLab 11.0.2中创建Webhook并进行测试时,我收到了以下错误:
Webhook URI使用的是带有公共证书(非自签名)的HTTPS协议。
此Webhook的SSL验证已被禁用。
更新:我已经将openssl1.0.2g升级到openssl1.0.2o,但错误仍然存在。
然后我尝试运行:
Hook execution failed: SSL_connect returned=1 errno=0 state=SSLv2/v3 read server hello A: tlsv1 alert internal error
Webhook URI使用的是带有公共证书(非自签名)的HTTPS协议。
此Webhook的SSL验证已被禁用。
更新:我已经将openssl1.0.2g升级到openssl1.0.2o,但错误仍然存在。
然后我尝试运行:
openssl s_client -connect mywebhookhost:443
这导致了:
depth=1 C = BE, O = GlobalSign nv-sa, CN = GlobalSign Organization Validation CA - SHA256 - G2
verify error:num=20:unable to get local issuer certificate
更新2
/opt/gitlab/embedded/bin/ruby -ropenssl -e 'puts OpenSSL::OPENSSL_VERSION'
返回结果:
OpenSSL 1.0.2o 27 Mar 2018
更新3
已安装GlobalSign CA证书。
awk -v cmd='openssl x509 -noout -subject' '
> /BEGIN/{close(cmd)};{print | cmd}' < /etc/ssl/certs/ca-certificates.crt | grep GlobalSign
结果是
subject=OU = GlobalSign ECC Root CA - R4, O = GlobalSign, CN = GlobalSign
subject=OU = GlobalSign ECC Root CA - R5, O = GlobalSign, CN = GlobalSign
subject=C = BE, O = GlobalSign nv-sa, OU = Root CA, CN = GlobalSign Root CA
subject=OU = GlobalSign Root CA - R2, O = GlobalSign, CN = GlobalSign
subject=OU = GlobalSign Root CA - R3, O = GlobalSign, CN = GlobalSign
ps -eaf|grep gitlab
命令会显示一个运行该服务器的Ruby进程。 - VonC2.4.4p296
。 - Alexander Zeitler