我正在设置一个
EKS
集群上的 AWS
,我想保护Kuberentes集群中(以及EKS与外部系统之间的)所有飞行数据的安全,但是超出范围)。
在Kubernetes中,不同Pod之间使用的协议不同,主要是 Rest/HTTP
,但 microservice-pods with a KafkaBroker
与JDBC之间的通信也是 microservice-pods and database pods
(Zalando Postgres),位于 filebeat-pod and elasticsearch
,...
我看到了几个选项,但我不喜欢其中任何一个。
还有更好的选择吗? 您会推荐这些选项中的任何一个吗?
答案 0 :(得分:2)
一个可能的解决方案是在您的所有Pod上使用nginx sidecar reverse proxy来捕获所有出站流量,并结合nginx的proxy_protocol指令与ELB和其他负载平衡器一起使用。
您可以通过修改iptables(或您在设置中选择使用的SDN /模式)来强制所有出站流量进入反向代理,而不是将其发送到Internet,以实现此目的。然后,您可以使用proxy_protocol
到force all upstream TCP connections to use SSL中的指令,使用由反向代理定义的证书进行加密。
这应该适用于您定义的协议,因为它们都基于TCP。