使用TLS加密通讯
远程连接Docker的示例详解
本文详细介绍了一个利用TLS数据加密通信实现远程桌面连接Docker的实例。对大家都很详细,对大家的学习、培训或者工作都有一定的参考价值,一定要朋友们参考。
默认情况下,Docker按照未连接网络的UNIX套接字工作。它还可以使用HTTP套接字进行可选通信。
如果你必须通过互联网安全地浏览Docker,你可以根据特定的logo打开可信CA证书上Docker的logo来打开TLS。
在守护程序流模式下,只允许来自经过CA签名证书认证的手机客户端的连接。在移动客户端模式下,它仅使用CA签署的证书连接到网络服务器。
#建立CA证书文件目录
[root@localhost~]#mkdirtls
[root@localhost~]#cdtls/
#建立CA密匙
[root@localhosttls]#opensslgenrsa-aes256-outca-key.pem4096
GeneratingRSAprivatekey,4096bitlongmodulus
..............................................................................
.....................................................................................................................................................................
eis65537(0x10001)
Enterpassphraseforca-key.pem:
Verifying-Enterpassphraseforca-key.pem:
#建立CA证书
[root@localhosttls]#opensslreq-new-x509-days1000-keyca-key.pem-sha256-subj"/CN=*"-outca.pem
Enterpassphraseforca-key.pem:
[root@localhosttls]#ll
总用量8
-rw-r--r--.1rootroot332612月317:20ca-key.pem
-rw-r--r--.1rootroot176512月319:03ca.pem
#建立网络服务器公钥
[root@localhosttls]#opensslgenrsa-outserver-key.pem4096
GeneratingRSAprivatekey,4096bitlongmodulus
................................................................
..................
eis65537(0x10001)
[root@localhosttls]#ll
总用量12
-rw-r--r--.1rootroot332612月317:20ca-key.pem
-rw-r--r--.1rootroot176512月319:03ca.pem
-rw-r--r--.1rootroot324312月319:03server-key.pem
#对公钥开展签字
[root@localhosttls]#opensslreq-subj"/CN=*"-sha256-new-keyserver-key.pem-outserver.csr
[root@localhosttls]#ll
总用量16
-rw-r--r--.1rootroot332612月317:20ca-key.pem
-rw-r--r--.1rootroot176512月319:03ca.pem
-rw-r--r--.1rootroot157412月319:04server.csr
-rw-r--r--.1rootroot324312月319:03server-key.pem
应用CA证书与公钥签字,键入上边设定的登陆密码
[root@localhosttls]#opensslx509-req-days1000-sha256-inserver.csr-CAca.pem-CAkeyca-key.pem-CAcreateserial-outserver-cert.pem
Signatureok
subject=/CN=*
GettingCAPrivateKey
Enterpassphraseforca-key.pem:
#形成手机客户端密匙
[root@localhosttls]#opensslgenrsa-outkey.pem4096
GeneratingRSAprivatekey,4096bitlongmodulus
....................................................................................................................
.................................
eis65537(0x10001)
#对手机客户端签字
[root@localhosttls]#opensslreq-subj"/CN=client"-new-keykey.pem-outclient.csr
#建立环境变量
[root@localhosttls]#echoextendedKeyUsage=clientAuth>extfile.cnf
#签字证书
[root@localhosttls]#opensslx509-req-days1000-sha256-inclient.csr-CAca.pem-CAkeyca-key.pem-CAcreateserial-outcert.pem-extfileextfile.cnf
Signatureok
subject=/CN=client
GettingCAPrivateKey
Enterpassphraseforca-key.pem:
[root@localhosttls]#ll
总用量40
-rw-r--r--.1rootroot332612月317:20ca-key.pem
-rw-r--r--.1rootroot176512月319:03ca.pem
-rw-r--r--.1rootroot1712月319:35ca.srl
-rw-r--r--.1rootroot169612月319:35cert.pem
-rw-r--r--.1rootroot158212月319:29client.csr
-rw-r--r--.1rootroot2812月319:32extfile.cnf
-rw-r--r--.1rootroot324312月319:08key.pem
-rw-r--r--.1rootroot164712月319:08server-cert.pem
-rw-r--r--.1rootroot157412月319:04server.csr
-rw-r--r--.1rootroot324312月319:03server-key.pem
#删掉不必要文档
[root@localhosttls]#
移动客户端检测
[root@client~]#docker--tlsverify--tlscacert=ca.pem--tlscert=cert.pem--tlskey=key.pem-Htcp://master:2376version
Client:DockerEngine-Community
Version:19.03.13
APIversion:1.40
Goversion:go1.13.15
Gitcommit:4484c46d9d
Built:WedSep1617:03:452020
OS/Arch:linux/amd64
Experimental:false
Server:DockerEngine-Community
Engine:
Version:19.03.13
APIversion:1.40(minimumversion1.12)
Goversion:go1.13.15
Gitcommit:4484c46d9d
Built:WedSep1617:02:212020
OS/Arch:linux/amd64
Experimental:false
containerd:
Version:1.3.9
GitCommit:ea765aba0d05254016b0b9e595e995c09186427f
runc:
Version:1.0.0-rc10
GitCommit:dc9208a3303feef5b3839f4323d9beb36df0a9dd
docker-init:
Version:0.18.0
GitCommit:fec3683
至此,本文对TLS数据加密通信远程桌面连接Docker的应用进行了详细介绍。有关TLS数据加密远程桌面连接Docker的大量内容,请搜索您以前文章的内容或再次访问下面的相关文章。期待你以后的申请!
评论列表(0条)