最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker開(kāi)啟TLS和CA認(rèn)證的方法步驟

 更新時(shí)間:2021年08月27日 08:30:16   作者:小強(qiáng)崽  
本文主要介紹了Docker開(kāi)啟TLS和CA認(rèn)證的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

前言:Docker直接開(kāi)啟2375端口是不安全的,別人只要連上之后就可以任意操作,下面是開(kāi)啟Docker的TLS和CA認(rèn)證方法,并使用Jenkins和Portainer連接。

一、生成證書(shū)

查看服務(wù)器主機(jī)名

hostname

auto-generate-docker-tls-ca.sh

# !/bin/bash

# 一鍵生成TLS和CA證書(shū)

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

# 服務(wù)器主機(jī)名
SERVER="6c377ffb8e86"
# 密碼
PASSWORD="2cx&BUjsV4u%3TW9"
# 國(guó)家
COUNTRY="CN"
# 省份
STATE="海南省"
# 城市
CITY="??谑?
# 機(jī)構(gòu)名稱(chēng)
ORGANIZATION="小強(qiáng)崽公司"
# 機(jī)構(gòu)單位
ORGANIZATIONAL_UNIT="小強(qiáng)崽單位"
# 郵箱
EMAIL="875667601@qq.com"

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

# 生成CA證書(shū)
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"

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

# 生成服務(wù)端證書(shū)簽名的請(qǐng)求文件
openssl req -subj "/CN=$SERVER" -new -key server-key.pem -out server-req.csr

# 生成服務(wù)端證書(shū)
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

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

# 生成客戶(hù)端證書(shū)簽名的請(qǐng)求文件
openssl req -subj '/CN=client' -new -key client-key.pem -out client-req.csr

# 生成客戶(hù)端證書(shū)
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

# 更改密鑰權(quán)限
chmod 0400 ca-key.pem server-key.pem client-key.pem
# 更改證書(shū)權(quán)限
chmod 0444 ca-cert.pem server-cert.pem client-cert.pem
# 刪除無(wú)用文件
# rm ca-cert.srl client-req.csr server-req.csr extfile.cnf

文件說(shuō)明

ca.srl:CA簽發(fā)證書(shū)的序列號(hào)記錄文件
ca-cert.pem:CA證書(shū)
ca-key.pem:CA密鑰
server-key.pem:服務(wù)端密鑰
server-req.csr:服務(wù)端證書(shū)簽名請(qǐng)求文件
server-cert.pem:服務(wù)端證書(shū)
client-key.pem:客戶(hù)端密鑰
extfile.cnf:客戶(hù)端證書(shū)擴(kuò)展配置文件
client-req.csr:客戶(hù)端證書(shū)簽名請(qǐng)求文件
client-cert.pem:客戶(hù)端證書(shū)

命令解析

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

二、開(kāi)啟遠(yuǎn)程

開(kāi)啟Docker的遠(yuǎn)程訪問(wèn)API

# 編輯文件
vim /etc/systemd/system/docker.service
# 修改內(nèi)容,注意證書(shū)的指定位置
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
# 重啟服務(wù)
systemctl daemon-reload && systemctl restart docker

如果沒(méi)有密鑰和證書(shū)是連不上的

docker -H 192.168.8.248:2375 images

使用主機(jī)名沒(méi)有密鑰和證書(shū)也是連不上的

docker -H 6c377ffb8e86:2375 images

加上密鑰和證書(shū)沒(méi)有使用主機(jī)名也是連不上

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

加上密鑰和證書(shū)并且使用主機(jī)名就能訪問(wèn)

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

三、遠(yuǎn)程連接

3.1 Jenkins連接

添加憑證

填寫(xiě)信息

測(cè)試連接,注意這里要使用主機(jī)名

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

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連接

選擇客戶(hù)端密鑰和證書(shū)以及CA證書(shū)

連接正常

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

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"

到此這篇關(guān)于Docker開(kāi)啟TLS和CA認(rèn)證的方法步驟的文章就介紹到這了,更多相關(guān)Docker開(kāi)啟TLS和CA認(rèn)證內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • WIN10系統(tǒng)和Docker內(nèi)部容器IP互通方式

    WIN10系統(tǒng)和Docker內(nèi)部容器IP互通方式

    這篇文章主要介紹了WIN10系統(tǒng)和Docker內(nèi)部容器IP互通方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-11-11
  • docker Get https://registry-1.docker.io/v2/: net/http: request canceled 報(bào)錯(cuò)

    docker Get https://registry-1.docker.io/v2/: 

    本文主要介紹了docker Get https://registry-1.docker.io/v2/: net/http: request canceled 報(bào)錯(cuò),具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-03-03
  • 利用Dockerfile優(yōu)化Nestjs構(gòu)建鏡像大小詳情

    利用Dockerfile優(yōu)化Nestjs構(gòu)建鏡像大小詳情

    這篇文章主要介紹了利用Dockerfile優(yōu)化Nestjs構(gòu)建鏡像大小詳情,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • Windows10?Docker?Desktop安裝過(guò)程

    Windows10?Docker?Desktop安裝過(guò)程

    Docker?Desktop是Docker公司推出的一款桌面應(yīng)用程序,它提供了一個(gè)用戶(hù)友好的界面,方便開(kāi)發(fā)人員在本地環(huán)境中使用容器技術(shù),這篇文章主要介紹了Windows10?Docker?Desktop安裝過(guò)程,需要的朋友可以參考下
    2024-01-01
  • 使用Docker將容器打成鏡像的方法步驟

    使用Docker將容器打成鏡像的方法步驟

    本文主要介紹了使用Docker將容器打成鏡像的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • Rabbitmq heartbea心跳檢測(cè)機(jī)制原理解析

    Rabbitmq heartbea心跳檢測(cè)機(jī)制原理解析

    這篇文章主要介紹了Rabbitmq heartbea心跳檢測(cè)機(jī)制原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-11-11
  • docker存儲(chǔ)目錄遷移示例教程

    docker存儲(chǔ)目錄遷移示例教程

    隨著docker的使用時(shí)間越來(lái)越長(zhǎng),導(dǎo)致鏡像和容器越來(lái)越多,占滿了系統(tǒng)盤(pán)空間,這時(shí),我們需要給它們搬個(gè)家了,這篇文章主要介紹了docker存儲(chǔ)目錄遷移教程,需要的朋友可以參考下
    2023-06-06
  • 在 Docker 環(huán)境中部署和運(yùn)行 Nginx 的方法

    在 Docker 環(huán)境中部署和運(yùn)行 Nginx 的方法

    在當(dāng)今的技術(shù)領(lǐng)域,Docker 就像一位神奇的魔法師,能夠讓我們輕松地管理和部署各種應(yīng)用程序,這篇文章主要介紹了在 Docker 環(huán)境中部署和運(yùn)行 Nginx 的方法,需要的朋友可以參考下
    2024-12-12
  • Docker如何快速搭建LNMP環(huán)境(最新)

    Docker如何快速搭建LNMP環(huán)境(最新)

    Docker 是一個(gè)開(kāi)源的應(yīng)用容器引擎,基于 Go 語(yǔ)言 并遵從Apache2.0協(xié)議開(kāi)源。本文給大家分享機(jī)器學(xué)習(xí)的基礎(chǔ)知識(shí),docker搭建lnmp環(huán)境的步驟,感興趣的朋友一起看看吧
    2021-06-06
  • 阿里云CentOS 6.5 安裝Docker詳細(xì)步驟

    阿里云CentOS 6.5 安裝Docker詳細(xì)步驟

    這篇文章主要介紹了阿里云CentOS 6.5 安裝Docker的相關(guān)資料,現(xiàn)在都是云時(shí)代和大數(shù)據(jù)時(shí)代,希望大家也能跟著時(shí)代的步伐,需要的朋友可以參考下
    2016-10-10

最新評(píng)論

巴青县| 怀远县| 微博| 会泽县| 巴林右旗| 岳池县| 八宿县| 城市| 铁岭市| 张家港市| 始兴县| 西充县| 石泉县| 浦东新区| 汶上县| 巴中市| 宜都市| 沙坪坝区| 保定市| 马公市| 巴里| 绥阳县| 上蔡县| 双城市| 乌什县| 叙永县| 大宁县| 墨竹工卡县| 江口县| 汝城县| 海门市| 天镇县| 沭阳县| 景德镇市| 大丰市| 张家界市| 通化县| 新宾| 贞丰县| 磐安县| 新河县|