跳到主要內容

發表文章

精選

[CentOS/Ubuntu] 執行 Docker login 時,出現 certificate signed by unknown authority 的錯誤訊息?

 News from: EPH 程式設計日記 今天想把做好的 Docker 映象檔 (image), 上傳到公司的 Docker 儲存庫 (repository) 裡面。 結果一執行  docker login  , 就出現 x509: certificate signed by unknown authority 的錯誤訊息: 這個訊息最近才看過,應該是因為那台 CentOS / Ubuntu機器上,沒有安裝網站的 HTTPS 憑證的 Root CA…要怎樣才能讓 Docker 認得那個 Root CA 呢? 1. 下載網站的 Root CA 憑證 我們可以使用 openssl 指令, 來列出某個 HTTPS 網站用到的憑證,以及其相關的簽發憑證鍊。 像下面是列出 www.google.com 的憑證鍊: $ openssl s_client -connect www.google.com: 443 -showcerts openssl 列出的憑證順序,是由網站的憑證,一路往上層的 CA,一直到 Root CA 為止。 因此簽發的順序是 GlobalSign Root CA -> GTS Root R1 -> GTS CA 1C3 -> www.google.com。 這個 GlobalSign Root CA,就是本次的最上層 Root CA。 把它對應的   -----BEGIN CERTIFICATE-----  到   ----- END CERTIFICATE-----  間的內容, 儲存成一個文字檔,就是 Root CA 的憑證了: 上面是拿 www.google.com 舉例, 公司的儲存庫的 Root CA 事實上是另外一家喔。 2. 將 Root CA 憑證更新至 Linux 信任的 Root CA 庫 將剛剛的 Root CA 憑證,儲存到 /etc/pki/ca-trust/source/anchors 目錄下。 檔案名稱可以自己取,不過為了方便對照, 可以取成 <Root CA name>.pem 比較容易看。   接著,執行   sudo update-ca-trust  指令, 這會將 /etc/pki/ca-trust/source/anchors 下所有的憑證, 都加到 /etc/pki/tls/c

最新文章

【完整指南】如何在不受支援的 Mac 上成功安裝 macOS Sonoma