91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Docker如何開啟TLS和CA認證

發布時間:2021-08-27 11:12:41 來源:億速云 閱讀:186 作者:小新 欄目:開發技術

這篇文章主要為大家展示了“Docker如何開啟TLS和CA認證”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Docker如何開啟TLS和CA認證”這篇文章吧。

一、生成證書

查看服務器主機名

hostname

Docker如何開啟TLS和CA認證

auto-generate-docker-tls-ca.sh

# !/bin/bash

# 一鍵生成TLS和CA證書

# Create : 2021-08-25
# Update : 2021-08-25
# @Autor : wuduoqiang

# 服務器主機名
SERVER="6c377ffb8e86"
# 密碼
PASSWORD="2cx&BUjsV4u%3TW9"
# 國家
COUNTRY="CN"
# 省份
STATE="海南省"
# 城市
CITY="海口市"
# 機構名稱
ORGANIZATION="小強崽公司"
# 機構單位
ORGANIZATIONAL_UNIT="小強崽單位"
# 郵箱
EMAIL="875667601@qq.com"

# 生成CA密鑰
openssl genrsa -aes256 -passout pass:$PASSWORD  -out ca-key.pem 2048

# 生成CA證書
openssl req -new -x509 -passin "pass:$PASSWORD" -days 3650 -key ca-key.pem -sha256 -out ca-cert.pem -subj "/C=$COUNTRY/ST=$STATE/L=$CITY/O=$ORGANIZATION/OU=$ORGANIZATIONAL_UNIT/CN=$SERVER/emailAddress=$EMAIL"

# 生成服務端密鑰
openssl genrsa -out server-key.pem 2048

# 生成服務端證書簽名的請求文件
openssl req -subj "/CN=$SERVER" -new -key server-key.pem -out server-req.csr

# 生成服務端證書
openssl x509 -req -days 3650 -in server-req.csr -CA ca-cert.pem -CAkey ca-key.pem -passin "pass:$PASSWORD" -CAcreateserial -out server-cert.pem

# 生成客戶端密鑰
openssl genrsa -out client-key.pem 2048

# 生成客戶端證書簽名的請求文件
openssl req -subj '/CN=client' -new -key client-key.pem -out client-req.csr

# 生成客戶端證書
sh -c 'echo "extendedKeyUsage=clientAuth" >> extfile.cnf'
openssl x509 -req -days 3650 -in client-req.csr -CA ca-cert.pem -CAkey ca-key.pem  -passin "pass:$PASSWORD" -CAcreateserial -out client-cert.pem -extfile extfile.cnf

# 更改密鑰權限
chmod 0400 ca-key.pem server-key.pem client-key.pem
# 更改證書權限
chmod 0444 ca-cert.pem server-cert.pem client-cert.pem
# 刪除無用文件
# rm ca-cert.srl client-req.csr server-req.csr extfile.cnf

Docker如何開啟TLS和CA認證

文件說明

ca.srl:CA簽發證書的序列號記錄文件
ca-cert.pem:CA證書
ca-key.pem:CA密鑰
server-key.pem:服務端密鑰
server-req.csr:服務端證書簽名請求文件
server-cert.pem:服務端證書
client-key.pem:客戶端密鑰
extfile.cnf:客戶端證書擴展配置文件
client-req.csr:客戶端證書簽名請求文件
client-cert.pem:客戶端證書

命令解析

# -subj /C=$COUNTRY/ST=$STATE/L=$CITY/O=$ORGANIZATION/OU=$ORGANIZATIONAL_UNIT/CN=$SERVER/emailAddress=$EMAIL
-subj 是 指定證書申請人的信息
C  是 Country Name
ST 是 State or Province Name
L  是 Locality Name
O  是 Organization Name
OU 是 Organizational Unit Name
CN 是 Common Name
emailAddress 是 Email Address

Docker如何開啟TLS和CA認證

二、開啟遠程

開啟Docker的遠程訪問API

# 編輯文件
vim /etc/systemd/system/docker.service
# 修改內容,注意證書的指定位置
ExecStart=/usr/bin/dockerd \
--tlsverify \
--tlscacert=/etc/docker/ca-cert.pem \
--tlscert=/etc/docker/server-cert.pem \
--tlskey=/etc/docker/server-key.pem \
-H unix:///var/run/docker.sock \
-H tcp://0.0.0.0:2375
# 重啟服務
systemctl daemon-reload && systemctl restart docker

Docker如何開啟TLS和CA認證

如果沒有密鑰和證書是連不上的

docker -H 192.168.8.248:2375 images

Docker如何開啟TLS和CA認證

使用主機名沒有密鑰和證書也是連不上的

docker -H 6c377ffb8e86:2375 images

Docker如何開啟TLS和CA認證

加上密鑰和證書沒有使用主機名也是連不上

curl https://192.168.8.248:2375/info --cert ./client-cert.pem --key ./client-key.pem --cacert ./ca-cert.pem

Docker如何開啟TLS和CA認證

加上密鑰和證書并且使用主機名就能訪問

curl https://6c377ffb8e86:2375/info --cert ./client-cert.pem --key ./client-key.pem --cacert ./ca-cert.pem

Docker如何開啟TLS和CA認證

三、遠程連接

3.1 Jenkins連接

添加憑證

Docker如何開啟TLS和CA認證

填寫信息

Docker如何開啟TLS和CA認證

測試連接,注意這里要使用主機名

Docker如何開啟TLS和CA認證

如果是docker安裝的jenkins,則需要映射主機名

version: '3'
services:
  jenkins:
    restart: always
    image: 192.168.8.247/xiaoqiangzai/jenkins:latest
    container_name: jenkins
    ports:
      - '8888:8080'
      - '50000:50000'
    volumes:
      - ./data/jenkins_home:/var/jenkins_home
      - ./data/war/jenkins.war:/usr/share/jenkins/jenkins.war
    environment:
      JENKINS_OPTS: "--prefix=/jenkins"
    extra_hosts:
      - "6c377ffb8e86:192.168.8.248"

3.2 Portainer連接

選擇客戶端密鑰和證書以及CA證書

Docker如何開啟TLS和CA認證

連接正常

Docker如何開啟TLS和CA認證

如果是docker安裝的Portainer,則需要映射主機名

version: '3'
services:
  portainer:
    restart: always
    image: portainer/portainer-ce:latest
    container_name: portainer
    privileged: true
    ports:
      - '9000:9000'
    volumes:
      - ./data/data:/data
      - ./data/public:/public
    extra_hosts:
      - "6c377ffb8e86:192.168.8.248"

以上是“Docker如何開啟TLS和CA認證”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

略阳县| 大邑县| 文安县| 江源县| 新干县| 调兵山市| 洞头县| 青河县| 班戈县| 醴陵市| 临安市| 洛川县| 江西省| 屏东市| 胶州市| 仁怀市| 疏附县| 白山市| 玉山县| 都江堰市| 顺平县| 无棣县| 合川市| 永宁县| 灵石县| 鸡泽县| 石河子市| 湟源县| 田东县| 英德市| 济源市| 通州市| 边坝县| 普兰店市| 凉城县| 和硕县| 开封县| 尚义县| 丹棱县| 浮山县| 舞阳县|