若要配置https,必須建立ssl證書,可以使用受信任的第三方ca簽名的證書,也可以使用自簽名的證書。使用openssl建立ca,以及如何使用ca對伺服器證書和客戶端證書進行簽名。
前提條件:已安裝好dokcer服務、已解壓harbor包之類的前置環境。
生成證書頒發證書
1.生成ca證書私鑰
openssl genrsa -out ca.key 4096
2.生成ca證書
openssl req -x509 -
new-nodes -sha512 -days 3650 \
-subj "/c=cn/st=beijing/l=beijing/o=example/ou=personal/cn=你的虛擬ip" \
-key ca.key \
-out ca.crt
生成伺服器證書
1.生成私鑰
openssl genrsa -out 你的虛擬ip
.key 4096
2.生成證書簽名請求(csr)
openssl req -sha512 -
new\
-subj "/c=cn/st=beijing/l=beijing/o=example/ou=personal/cn=你的虛擬ip" \
-key 你的虛擬ip
.key \
-out 你的虛擬ip
.csr
3.生成x509 v3擴充套件檔案
cat > v3.ext <<
-eof
authoritykeyidentifier=keyid,issuer
basicconstraints=ca:
false
keyusage = digitalsignature, nonrepudiation, keyencipherment, dataencipherment
extendedkeyusage = serverauth
subjectaltname =
ip:你的虛擬ip
eof
openssl x509 -req -sha512 -days 3650 \
-extfile v3.ext \
-ca ca.crt -cakey ca.key -cacreateserial \
-in 你的虛擬ip
.csr \
-out 你的虛擬ip
.crt
4.將伺服器證書和金鑰複製到港口主機上的證書資料夾中。
先建立相應的資料夾
mkdir -p /data/cert
cp 你的虛擬ip
.crt /data/cert/
cp 你的虛擬ip
.key /data/cert/
5.docker守護程序將檔案解釋為ca證書,檔案解釋為客戶端證書。.crt .cert
openssl x509 -inform pem
-in 你的虛擬ip
.crt -out 你的虛擬ip
.cert
6.將伺服器證書、金鑰和ca檔案複製到主機上的docker證書資料夾中,先建立相應的資料夾。
mkdir -p /etc/docker/certs.d/你的虛擬ip
/
cp 你的虛擬ip
.cert /etc/docker/certs.d/你的虛擬ip
/cp 你的虛擬ip
.key /etc/docker/certs.d/你的虛擬ip
/cp ca.crt /etc/docker/certs.d/你的虛擬ip
/
7.修改配置檔案裡證書路徑以及修改本機的ip位址
certificate:
/data/cert/你的虛擬ip
.crt
private_key:
/data/cert/你的虛擬ip
.key
harbor使用自簽名證書實現https
介紹 操作在https的傳輸過程中,有乙個非常關鍵的角色 數字證書,那什麼是數字證書?又有什麼作用呢?所謂數字證書,是一種用於電腦的身份識別機制。由數字證書頒發機構 ca 對使用私鑰建立的簽名請求檔案做的簽名 蓋章 表示ca結構對證書持有者的認可。數字證書擁有以下幾個優點 使用數字證書能夠提高使用者...
Linux 新增HTTPS證書
之前的文章是linux 做反向 現在繼續新增證書。cd etc nginx conf.d 輸入rz 回車上傳證書檔案 9358.com.crt 9358.com.key 需要編輯兩個檔案 vi 9358.conf server server 新增dns到 etc resolv.conf 或者是 et...
Okhttp連線https新增自產證書
使用okhttp作為網路連線時,okhttp現作為android網路連線框架已經很流行了,我也使用okhttp有三年了。以前https還是使用得少的,訪問別人的 如果使用了https都是綠色的 在瀏覽器上看,某購火車票 的不是 在okhttp裡啥問題也沒有,最近的專案是公司自己的伺服器使用了http...