Linux

將自簽名證書安裝到 Alpine Linux

  • August 23, 2018

如何將自簽名證書鏈安裝到 Alpine Linux 中?

我有一個在 Ubuntu 中使用的自簽名證書,例如:

培根.crt

-----BEGIN CERTIFICATE-----
328FjQIFJNVBLAHBLAH
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
7CJAMIDDLEBLAH80A
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
328FjOTHERVBLAHBLAH
-----END CERTIFICATE-----

在 Ubuntu 中,我執行以下命令來安裝此證書鏈

cp /tmp/certs/bacon.crt /usr/local/share/ca-certificates/bacon.crt
update-ca-certificates

簡單的!


但是,在 Alpine Linux 上:

# cp /tmp/certs/bacon.crt /usr/local/share/ca-certificates/bacon.crt
/usr/local/share/ca-certificates # update-ca-certificates
WARNING: ca-cert-bacon.crt.pem does not contain exactly one certificate or CRL: skipping

如果我嘗試將我的證書分成 3 塊來餵這個發行版:

/tmp/certs/1.crt

-----BEGIN CERTIFICATE-----
328FjQIFJNVBLAHBLAH
-----END CERTIFICATE-----

/tmp/certs/2.crt

-----BEGIN CERTIFICATE-----
328FjOTHERVBLAHBLAH
-----END CERTIFICATE-----

/tmp/certs/3.crt

-----BEGIN CERTIFICATE-----
328FjQIFJNVBLAHBLAH
-----END CERTIFICATE-----

現在它在證書安裝期間不會拋出錯誤,但仍然無法針對其他自簽名端點進行身份驗證。

弄清楚了。天哪。

/etc/ssl/certs/ca-certificates.crt實際上是從/usr/local/share/ca-certificates.

  1. 獲得一個乾淨的環境(這是我的第一個主要問題)

  2. 對於您擁有的每個 BEGIN/END 對,將您的證書鏈分成單獨的部分。

  3. 公司-Root.crt

  4. 公司-X.crt

  5. 公司-Y.crt

  6. 公司-Z.crt

  7. 公司-Issuing.crt

  8. 如果您格外小心,請一次載入一個,從company-Root.crt證書開始,然後執行update-ca-certificates.

  9. 重複直到處理完所有證書。

  10. 驗證/etc/ssl/certs/ca-certificates.crt包含文件底部的更新。

引用自:https://unix.stackexchange.com/questions/464484