什么是 TLS,我们为什么需要它?
What is TLS and Why do we need it?
什么是 TLS 以及我们为什么需要它。有人可以向我解释一下它在 Kubernetes 中扮演什么角色吗?
如果我不使用它会怎样?谁能举个例子给我解释一下?
感谢您的宝贵时间。
什么是 TLS,我们为什么需要它?
TLS definition from wikipedia:
The TLS protocol aims primarily to provide privacy and data integrity between two or more communicating computer applications [...]
TLS supports many different methods for exchanging keys, encrypting data, and authenticating message integrity.
它在Kubernetes中扮演什么角色?
k8s控制平面使用它来加密传输中的数据。如果数据在客户端和服务器之间移动时通信被拦截,传输中加密可以保护您的数据。在 k8s 的情况下,例如kubelet 或 controller manager 通常是客户端,api-server 被认为是服务器。
如果我不使用它会怎样?
我不确定你是否可以这样做(不使用它)。我认为它的使用是由 k8s 组件强制执行的。您所能做的就是忽略证书验证。
但是现在让我们想象一下,您设法 bootstrap 一个没有 tls 的集群,并且现在所有通信都是基于明文的(这意味着没有加密)。现在,如果我设法拦截通信,我(恶意行为者)就可以看到您向集群发送的内容。而且由于没有强制数据完整性的机制,我可以将此数据更改为我想要的任何内容并将其传递出去。您将无法检查您是在与集群交换数据还是在与我交换数据,以及我是否在更改数据、添加恶意代码或其他。
此外,k8s 组件使用 tls 证书进行身份验证。这意味着例如为了让 kubelet 加入集群,它需要证明它被允许这样做,方法是显示它有一个有效的证书,由已知的授权机构签名(这通常意味着自签名)。您将无法验证 kubelet 是否属于您,这不是我加入您集群的恶意 kubelet。
什么是 TLS 以及我们为什么需要它。有人可以向我解释一下它在 Kubernetes 中扮演什么角色吗? 如果我不使用它会怎样?谁能举个例子给我解释一下?
感谢您的宝贵时间。
什么是 TLS,我们为什么需要它?
TLS definition from wikipedia:
The TLS protocol aims primarily to provide privacy and data integrity between two or more communicating computer applications [...] TLS supports many different methods for exchanging keys, encrypting data, and authenticating message integrity.
它在Kubernetes中扮演什么角色?
k8s控制平面使用它来加密传输中的数据。如果数据在客户端和服务器之间移动时通信被拦截,传输中加密可以保护您的数据。在 k8s 的情况下,例如kubelet 或 controller manager 通常是客户端,api-server 被认为是服务器。
如果我不使用它会怎样?
我不确定你是否可以这样做(不使用它)。我认为它的使用是由 k8s 组件强制执行的。您所能做的就是忽略证书验证。
但是现在让我们想象一下,您设法 bootstrap 一个没有 tls 的集群,并且现在所有通信都是基于明文的(这意味着没有加密)。现在,如果我设法拦截通信,我(恶意行为者)就可以看到您向集群发送的内容。而且由于没有强制数据完整性的机制,我可以将此数据更改为我想要的任何内容并将其传递出去。您将无法检查您是在与集群交换数据还是在与我交换数据,以及我是否在更改数据、添加恶意代码或其他。
此外,k8s 组件使用 tls 证书进行身份验证。这意味着例如为了让 kubelet 加入集群,它需要证明它被允许这样做,方法是显示它有一个有效的证书,由已知的授权机构签名(这通常意味着自签名)。您将无法验证 kubelet 是否属于您,这不是我加入您集群的恶意 kubelet。