服務器更換證書後jira無法訪問Confluence處理

服務器更換證書後jira無法訪問Confluence處理

問題

jira 和 Confluence是用docker搭在一臺服務器上的,更換證書後jira無法訪問Confluence, 如果所示(jira的忘截圖了,這個是Confluence的一樣的報錯)

原因:因爲Java環境(Jira運行在Java上)不信任你的證書,尤其是如果它是自簽名的或由不在Java默認信任的CA列表中的CA簽發的。

解決辦法

當你在Docker部署的Jira中配置連接到Confluence的鏈接時遇到SSL證書問題,即使瀏覽器認爲證書是有效的,仍可能會出現證書錯誤。這通常是因爲Java環境(Jira運行在Java上)不信任你的證書,尤其是如果它是自簽名的或由不在Java默認信任的CA列表中的CA簽發的。解決這種問題,你可以通過以下步驟來手動將Confluence的證書添加到Jira Docker容器的Java信任存儲中:

1. 從Confluence服務器導出證書

首先,你需要從Confluence服務器上導出SSL證書。這可以通過使用openssl命令從命令行完成:

openssl s_client -connect your-confluence-domain.com:443 -showcerts </dev/null 2>/dev/null | openssl x509 -outform PEM > confluence_cert.pem

your-confluence-domain.com替換爲你的Confluence實際的域名。

2. 將證書添加到Jira Docker容器的Java信任存儲

然後,你需要將導出的證書添加到運行Jira的Docker容器中Java的信任存儲庫。首先,你需要找到Jira容器的ID或名稱:

docker ps

接着,將證書複製到Docker容器中:

docker cp confluence_cert.pem <container_id>:/tmp

使用容器的ID或名稱替換<container_id>

接下來,進入容器:

docker exec -it <container_id> /bin/bash

一旦進入容器,使用keytool命令將證書導入到Java的信任存儲:

keytool -import -alias confluenceCert -keystore $JAVA_HOME/lib/security/cacerts -file /tmp/confluence_cert.pem -storepass changeit

這裏changeit是默認的密鑰庫密碼,如果你更改了,需要使用你的密碼。

3. 重啓Jira容器

完成後,退出容器並重啓Jira容器以使更改生效:

docker restart <container_id>

4. 測試連接

重新啓動後,再次嘗試配置Jira和Confluence的集成,以檢查證書問題是否已解決。

這些步驟應該幫助你解決Jira連接到Confluence時遇到的SSL證書錯誤。如果問題仍然存在,確保你導出的是正確的證書,並且正確地添加到了Java的信任存儲庫中。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章