docker安全配置tls證書加密

2021-10-05 14:24:42 字數 3281 閱讀 2625

[root@localhost ~]# mkdir /tls

[root@localhost ~]# cd /tls

[root@localhost tls]# hostnamectl set-hostname master

[root@localhost tls]# su

[root@master tls]# vim /etc/hosts

// 新增master與ip位址對映 //

// 建立ca金鑰 //

[root@master tls]# openssl genrsa -aes256 -out ca-key.pem 4096

generating rsa private key, 4096 bit long modulus

…++…++

e is 65537 (0x10001)

enter pass phrase for ca-key.pem:

verifying - enter pass phrase for ca-key.pem:

// 建立ca證書 //

[root@master tls]# openssl req -new -x509 -days 1000 -key ca-key.pem -sha256 -subj 「/cn=*」 -out ca.pem

enter pass phrase for ca-key.pem:

// 建立伺服器私鑰 //

[root@master tls]# openssl genrsa -out server-key.pem 4096

generating rsa private key, 4096 bit long modulus

…++…++

e is 65537 (0x10001)

// 簽名私鑰 //

[root@master tls]# openssl req -subj 「/cn=*」 -sha256 -new -key server-key.pem -out server.csr

// 使用ca證書與私鑰證書簽名 //

[root@master tls]# openssl x509 -req -days 1000 -sha256 -in server.csr -ca ca.pem -cakey ca-key.pem -cacreateserial -out server-cert.pem

signature ok

subject=/cn=*

getting ca private key

enter pass phrase for ca-key.pem:

// 生成客戶端金鑰 //

[root@master tls]# openssl genrsa -out key.pem 4096

generating rsa private key, 4096 bit long modulus

…++…++

e is 65537 (0x10001)

// 簽名客戶端 //

[root@master tls]# openssl req -subj 「/cn=client」 -new -key key.pem -out client.csr

// 建立配置檔案 //

[root@master tls]# echo extendedkeyusage=clientauth > extfile.cnf

// 簽名證書(需要簽名客戶端,ca證書,ca金鑰) //

[root@master tls]# openssl x509 -req -days 1000 -sha256 -in client.csr -ca ca.pem -cakey ca-key.pem -cacreateserial -out cert.pem -extfile extfile.cnf

signature ok

subject=/cn=client

getting ca private key

enter pass phrase for ca-key.pem:

// 刪除多餘檔案 //

[root@master tls]# rm -rf ca.srl client.csr extfile.cnf server.csr

// 配置docker //

[root@master tls]# vim /lib/systemd/system/docker.service

execstart=/usr/bin/dockerd新增引數:

–tlsverify --tlscacert=/tls/ca.pem --tlscert=/tls/server-cert.pem --tlskey=/tls/server-key.pem

// 過載後重啟docker //

[root@master tls]# systemctl daemon-reload

[root@master tls]# systemctl restart docker

// 將三個檔案複製到客戶端 //

[root@master tls]# scp ca.pem cert.pem key.pem [email protected]:/etc/docker/

[email protected]』s password:

ca.pem 100% 1765 1.8mb/s 00:00

cert.pem 100% 1696 1.5mb/s 00:00

key.pem 100% 3247 2.8mb/s 00:00

// 本地測試 //

[root@master tls]# docker --tlsverify --tlscacert=ca.pem --tlscert=cert.pem --tlskey=key.pem -h tcp://master:2376 version

client: docker engine - community

version: 19.03.8

api version: 1.40

go version: go1.12.17

略// 客戶端測試 //

[root@localhost ~]# cd /etc/docker/

[root@localhost docker]# docker --tlsverify --tlscacert=ca.pem --tlscert=cert.pem --tlskey=key.pem -h tcp://master:2376 version

client: docker engine - community

version: 19.03.8

api version: 1.40

go version: go1.12.17

tls證書製作

安裝cfssl wget wget 生成證書 利用json生成證書 檢視證書資訊的工具 修改許可權 chmod x cfssl linux amd64 cfssljson linux amd64 cfssl certinfo linux amd64 移動檔案 mv cfssl linux amd64...

tomcat配置安全證書

如何保證 的安全性,給tomcat伺服器配置https聯結器 給 配置聯結器,可自動生成數字證書 keytool genkey alias tomcat keyalg rsa 分別為 產生金鑰對 取別名 使用rsa演算法產生金鑰 1.生成數字證書庫 2.把生成的.keystore複製到c progr...

TLS 證書和秘鑰

建立 ca 配置檔案 mkdir root ssl cd root ssl cfssl print defaults config config.json cfssl print defaults csr csr.json 根據config.json檔案的格式建立如下的ca config.json檔...