我在我的Teamcity BuildServer中添加了一个自签名证书,以引入https支持,以便现在可以访问
https://ServerUrl:8443
(有关here)
的详细信息结果是我可以通过https访问服务器,但我的构建代理现在已断开连接。如何解决这个问题?
答案 0 :(得分:22)
构建代理充当构建服务器的客户端并使用http / https与之通信,结果是当您添加自签名证书时,构建代理不接受它。
我需要
要更改路径,我执行了以下操作(有关详细信息,请参阅this post)
找到文件:
$ TEAMCITY_HOME / buildAgent / conf / buildAgent.properties
更改财产
serverUrl = http:\:// localhost \:8080 到您的新网址
为了让构建代理知道它可以信任新证书,我必须将其导入构建代理的密钥存储区。这是使用keytool完成的:
keytool -importcert -file <cert file>
-keystore <agent installation path>/jre/lib/security/cacerts
(除非你更改了它,密钥库受密码保护:更改)
TeamCity小组详细介绍了此过程here
注意强>
如果您需要从TeamCity构建服务器密钥库中检索证书,还可以使用keytool执行此操作:
keytool -export -alias <alias name>
-file <certificate file name>
-keystore <Teamcity keystore path>
答案 1 :(得分:4)
以下是关于keytool的TeamCity v8文档的link。
我在Windows Build Agent上执行此操作,并在我的Amazon Linux Build Server上拥有自签名SSL证书。以下是我采取的步骤:
完全按照文档
中的指定使用了keytool> keytool -importcert -file <cert file where it was exported to>
-keystore <path to JRE installation>/lib/security/cacerts
password: changeit
重新启动构建代理和中提琴!