之前安裝JIRA和Confluence,配置了SSL證書之后遇到應用程序鏈接的問題:
SSL證書不被信任,導致JIRA和Confluence無法關聯。
嘗試過很多辦法無果之后打算放棄。
最終還是放棄了......
你以為這篇博客已經結束了?
其實它並沒有,我只是想湊個字數,讓文章看起來飽滿一些。
因為解決的辦法我已經找到了,而且很簡單。
———————————下面開始敲黑板,划重點—————————————
1.登錄服務器,將InstallCert.java下載到本地,並通過java進行編譯:
# git clone https://github.com/escline/InstallCert.git # javac InstallCert.git
2.訪問服務器,並檢索證書,格式為:
java InstallCert [域名]:[端口]
# java InstallCert www.test.abcd.com:443 Loading KeyStore /usr/local/jdk1.8.0_161/jre/lib/security/cacerts... Opening connection to www.test.abcd.com:443... Starting SSL handshake... ....... Added certificate to keystore 'jssecacerts' using alias 'www.test.abcd.com-1'
3. 從創建的jssecacerts密鑰庫中提取證書,格式為:
keytool -exportcert -alias [域名]-1 -keystore jssecacerts -storepass changeit -file [域名].cer
# keytool -exportcert -alias www.test.abcd.com-1 -keystore jssecacerts -storepass changeit -file www.test.abcd.com. Certificate stored in file <www.test.abcd.com.cer>
4. 將證書導入到系統密鑰庫中,格式為:
keytool -importcert -alias [域名] -keystore [系統密鑰庫路徑] -storepass changeit -file [域名] .cer
# keytool -importcert -alias www.test.abcd.com -keystore /usr/local/jdk1.8.0_161/jre/lib/security/cacerts -storepass changeit -file www.test.abcd.com.cer ...... Owner ...... 輸入yes Trust this certificate? [no]: yes Certificate was added to keystore
注意:如果在導入證書時遇到類似如下的報錯,
keytool 錯誤: java.lang.Exception: 證書未導入, 別名 <www.test.abcd.com> 已經存在
怕是玩不下去了......
因為第一次遇到這個問題,所以我也不知道怎么辦。
不妨試試“keytool --help”,結果讓我看到了-delete 參數,仿佛看到了一絲希望。
於是我又試了一下 “keytool -delete --help”,找到了-alias,這時我會心的一笑,似乎明白了什么,既然可以導入,那就一定可以刪除。
# keytool -delete -alias www.test.abcd.com -keystore /usr/local/jdk1.8.0_161/jre/lib/security/cacerts -storepass changeit
沒有輸出?沒有輸出就是最好的輸出,再次嘗試導入命令:
# keytool -importcert -alias www.test.abcd.com -keystore /usr/local/jdk1.8.0_161/jre/lib/security/cacerts -storepass changeit -file www.test.abcd.com.cer
成功了!JIRA和Confluence操作一樣。
5.最后,不要忘記重啟連個服務。登錄頁面再次查看:
可以說是很完美了~