更新具有特定 IP 范围的安全组,以仅允许 gitlab-ci 与自定义运行程序通信

ste*_*web 6 continuous-integration amazon-web-services continuous-deployment gitlab devops

我按照https://docs.gitlab.com/runner/configuration/runner_autoscale_aws_fargate/创建一个自定义运行程序,该运行程序附加了公共 IP,并与“私有”资源一起位于 VPC 中。运行程序用于使用 gitlab ci/cd 应用迁移。

ALLOW 22 0.0.0.0/0已在安全组内应用;但它很容易受到攻击。我需要添加什么 IP 范围才能仅允许 gitlab ci/cd 运行程序通过 SSH 访问?我暂时删除了该规则,因此我们收到了连接错误,但端口 22 上连接的 IP 均来自 AWS(假设 gitlab 运行程序也在 AWS 上)。

有什么我遗漏或不理解的吗?

Aru*_*han 2

我看了一下教程。您应该只允许 EC2 实例能够 ssh 进入 Fargate 任务。

一种方法是,您可以将 EC2 实例的安全组定义为 Fargate 任务安全组中的源,而不是使用 IP 地址(或 CIDR 块)。您不必明确提及任何 IP 范围。这是我的首选方法。

当您指定安全组作为规则的源时,将允许来自与指定协议和端口的源安全组关联的网络接口的流量。根据与源安全组关联的网络接口的私有 IP 地址(而不是公共 IP 或弹性 IP 地址)允许传入流量。指定安全组作为源

第二种方法是,正如 @samtoddler 提到的,您可以允许整个 VPC 网络,也可以将其限制为一个子网。