啃Docker之TLS加密通讯部署

本文详细介绍了Docker中TLS加密通讯的必要性、作用和实现步骤,旨在提升Docker通信的安全性,防止中间人攻击。主要内容包括TLS协议的概念、为何使用TLS加密以及在Docker环境中部署TLS的流程,包括创建和分发证书等关键步骤。
摘要由CSDN通过智能技术生成

一:Docker-TLS加密通讯部署

1.1:什么是TLS?有什么作用?

  • TLS(Transport Layer Security Protocol):传输层安全性协议,其前身安全套接层(Secure Sockets Layer,缩写作SSL)是一种安全协议,目的是为互联网通信提供安全及数据完整性保障。

  • TLS协议采用主从式架构模型,用于在两个应用程序间透过网络创建起安全的连线,防止在交换数据时受到窃听及篡改

  • TLS的最大优势就在于:TLS是独立与应用协议。高层协议可以透明地分布在TLS协议上面。然后,TLS标准并没有规定应用程序如何在TLS上增加安全性;它如何启动TLS握手协议以及如何解释交换地认证证书地决定权留给协议的设计者和实施者来判断

  • TLS的主要增加内容,TLS的主要目标是使SSL更安全,并是协议的规范更加精确和完善。TLS在SSL v3.0的基础上,提供了以下增加内容:

     1.更加安全的MAC算法
     2.更加严密的警报
     3.“灰色区域”的规范更加明确
    

1.2:为什么要使用TLS加密?

  • 为了防止链路劫持、会话劫持等问题导致 Docker 通信时被中 间人攻击,c/s 两端应该通过加密方式通讯。

1.3:TLS对于安全性的改进

1.对于消息认证使用密钥散列法:TLS使用“消息认证代码的密钥散列法”(HMAC),当记录在开放的网络,比如internet上传送时,该代码确保记录不会被变更。SSLv3.0还提供给键控消息认证,但是HMAC比SSLv3.0使用(消息认证代码)MAC功能更加安全。	
2.增强的伪随机功能(PRF):PRF生成密钥数据。在TLS中,HMAC定义PRF。PRF使用两种散列算法保证其安全性。如果任一算法暴露了,只要第二种算法未暴露,则数据仍然是安全的。	
3.改进的已完成消息验证:TLS和SSLv3.0都对两个端点提供已完成的消息,该消息认证交换的消息没有被变更。然而,TLS将此已完成消息基于PRF和HMAC值之上,这也比SSLv3.0更安全。	
4.一致证书处理:与SSLv3.0不同,TLS试图指定必须在TLS之间实现交换的证书类型。	
5.特定警报消息:TLS提供更多的特定和附加警报,以指示任一会话端点检测到的问题。TLS还对何时应该发送某些警报进行记录。

1.4:在Docker中部署TLS

  • 环境
    在公司的docker业务中,一般为了防止链路劫持、会话劫持等问题导致docker通信时被中间人攻击,c/s两端应该通过加密方式通讯
主机名 IP地址 部署的服务
server 20.0.0.51 docker-ce
client 20.0.0.54 docker-ce
  • 流程
    秘钥key—> 身份前面csr---->(服务器/客户端) (结合ca.pem) 制作证书pem

  • 开局优化

[root@localhost ~]# hostnamectl set-hostname server	'两台主机修改主机名'
[root@localhost ~]# su
[root@server ~]# 
[root@localhost ~]# hostnamectl set-hostname client
[root@localhost ~]# su
[root@client ~]# 
[root@server ~]# cat >> /etc/hosts << EOF	'修改本地主机解析文件'
> 192.168.233.128 server
> 192.168.233.129 client
> EOF
[root@client ~]# cat >> /etc/hosts << EOF
> 192.168.233.128 server
> 192.168.233.129 client
> EOF
[root@client ~]# ping server	'是可以互通的'
[root@server ~]# ping client
  • server服务器创建CA密码与CA证书
[root@server ~]# mkdir TLS
[root@server ~]# cd TLS/
[root@server TLS]# openssl genrsa -aes256 -out ca-key.pem 4096	'使用rsa非对称秘钥,位数256位,-out 输出密钥文件ca-key.pem'
Generating RSA private key, 4096 bit long modulus
...........................................................................................................................
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值