限制kubernetes群集上的AWS安全组

时间:2018-09-07 07:48:13

标签: kubernetes aws-security-group

我为每种ec2服务器类型创建了具有指定安全组的kubernetes集群,例如,对于我有与之关联的backend-sg和由该集群创建的node-sg的后端服务器。

现在,我尝试限制对后端ec2的访问,并仅将端口8090作为入站打开,将端口8080作为对特定安全组的出站打开(我们称其为frontend-sg)。

我设法这样做,但是当将入站端口更改为8081以检查那些限制是否确实有效时,我仍然能够从frontend-sg ec2访问8080端口。

我想我缺少了一些东西... 任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

  

任何帮助都将得到

我将尝试说明此答案中的情况,以使其更加清晰。如果我正确理解了您的情况,那么到目前为止,您的情况是这样:

AWS Sec groups overview

现在,如果您尝试从前端EC2实例到后端EC2实例的端口,并且它们在同一安全组(node-sg)中,则那里将有流量。如果要检查组隔离,则应该在node-sg之外只有一个实例,并且只能在frontend-sg中将backend-sg中的任何实例作为目标(假设node-sg和backend-sg均不允许该端口进行入站流量)...

最后,请注意...默认情况下,Kubernetes关闭所有流量(并且您需要入口,负载平衡器,上游代理,nodePort或其他一些方法来实际公开您的前端服务),因此后端/使用k8s时,前端实例和安全组并不是那么“明确”,尤其是因为您实际上并不希望手动调度(或通过标签进行此事)实际将运行哪些实例pod(而是将其留给k8s调度程序以更好地使用)资源统一)。