如何在尝试通过HTTPS访问时阻止Jenkins使用TEST SITE证书

时间:2015-02-26 22:40:13

标签: macos jenkins https

我正在努力让HTTPS使用我们的Jenkins盒子(Mac Pro 2014 / OSX Mavericks / Jenkins Mac Installer)。

按照Jenkins-CI底部的说明操作:

sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist

sudo defaults write /Library/Preferences/org.jenkins-ci httpsPort 8443
sudo defaults write /Library/Preferences/org.jenkins-ci httpsKeyStore /path/to/your/keystore/file
sudo defaults write /Library/Preferences/org.jenkins-ci httpsKeyStorePassword <keystore password>

sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist

访问https://myjenkins.com:8443时,我的证书仍然无效。在审核证书后,它看起来好像是一个“测试站点”。证书仍在使用中。

enter image description here

我尝试过以下方法:

  • 传递.JKS和.P12密钥库类型。
  • 使用组合的.CRT和.KEY并传递以下内容而不是httpsKeyStore和httpsKeyStorePassword:

    sudo defaults write /Library/Preferences/org.jenkins-ci httpsCertificate /path/to/certificate
    sudo defaults write /Library/Preferences/org.jenkins-ci httpsPrivateKey /path/to/key
    

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:2)

我刚遇到同样的问题,问题是jenkins-runner.sh脚本没有将plist文件中的httpsPrivateKey和httpsCertificate变量传递给用于启动Jenkins的命令行。我将这两行添加到jenkins-runner.sh来修复它。

add_to_args httpsPrivateKey
add_to_args httpsCertificate

该文件位于我机器上的/ Library / Application Support / jenkins目录中。您应该可以通过查看/Library/LaunchDaemons/org.jenkins-ci.plist文件找到您机器上的位置。