Centos5
將根證書添加到 CentOS 5
最近我的一台機器被放在代理後面,這意味著我曾經工作的一些程序不再執行。
當我嘗試執行“openssl s_client -showcerts -connect remoteserver:remoteport”時,它向我展示了一個可愛的“驗證返回碼:20(無法獲取本地頒發者證書)”,我認為這是因為中間(代理)證書不被辨識。
如果我的假設是正確的,我相信我必須安裝代理的根證書才能讓我的程序再次執行。
我得到了一個 .cer 文件,我將其轉換為 pem 文件,如下所示:
openssl x509 -inform der -in certificate.cer -out certificate.pem
然後我繼續獲取 pem 的雜湊值(如此處建議https://stackoverflow.com/questions/12041512/openssl-unable-to-get-local-issuer-certificate-unless-cafile-is-explicitly-speci ):
openssl x509 -issuer_hash -noout -in certificate.pem
這給了我一個字元串(例如:a8a87a6a)。
然後我去複制 pem 文件,將其重命名為 a8a87a6a 到 /etc/pki/tls/certs 但是即使使用“-CApath /等/pki/tls/certs/”。
我還嘗試將文件重命名為具有副檔名 .pem .crt .cer 無濟於事。
對此感到非常沮喪,我怎樣才能讓這個證書被認為是合法的並讓我的東西再次工作?
在 CentOS 5 中,受信任的證書位於 /etc/pki/tls/certs/ca-bundle.crt。只需將新的受信任證書附加到此文件即可。
這是對如何添加新證書的問題的回答。但這可能不會解決您的問題。您的代理證書(CN 名稱)很可能與您的服務 CN 不匹配。