TeamCity的生成代理变为添加自签名HTTPS证书到TeamCity的后断开(TeamCity

2019-08-17 02:28发布

我添加了一个自签名证书到我的TeamCity BuildServer介绍HTTPS支持,以便它现在可以在访问

https://ServerUrl:8443

(关于如何更多细节在这里 )

其结果是,我能够获得通过HTTPS的服务器,但我的生成代理现在已断开。 如何解决这一问题?

Answer 1:

生成代理工作作为客户端来构建服务器,并使用其HTTP / HTTPS通信,而且事实证明,当你添加一个自签名证书生成代理不接受它。

我需要

  1. 让生成代理知道的新路径与服务器通信
  2. 让生成代理知道它可以信任的自签名证书

要更改路径,我做了以下(参见这篇文章有详细介绍)

找到文件:
$ TEAMCITY_HOME / buildAgent / conf目录/ buildAgent.properties

更改属性
的serverUrl = HTTP:\://本地主机\:8080到新网址

为了让生成代理知道它可以信任的新证书,我不得不将其导入到使用密钥工具已完成生成代理的主要store.This:

keytool -importcert -file <cert file>  
        -keystore <agent installation path>/jre/lib/security/cacerts

除非你已经改变了它的密钥库是由密码保护:的changeit)

在TeamCity的团队描述了稍微细节这个过程在这里

注意
如果您需要检索从TeamCity的buildserver密钥库您的证书,您还可以使用密钥工具来做到这一点

keytool -export -alias <alias name>  
        -file <certificate file name> 
        -keystore <Teamcity keystore path>


Answer 2:

这里是一个链接到该密钥工具的TeamCity的V8文档。

我是在Windows这样生成代理和有我的亚马逊Linux构建服务器上的自签名的SSL证书。 这里是我采取的步骤:

  1. 进去后浏览器来构建服务器上生成代理即https://teamcity.example.com
  2. 点击的URL证书错误并下载证书到本地机器
  3. 出口从证书浏览器中的证书窗口到一个CER文件。
  4. 使用密钥工具完全一样的文档中指定

     > keytool -importcert -file <cert file where it was exported to> -keystore <path to JRE installation>/lib/security/cacerts password: changeit 
  5. 重新生成代理和中提琴!



文章来源: TeamCity build agent becomes disconnected after adding self-signed https certificate to teamcity