我正在探索如何在AWS上设置诸如安全性和网络配置之类的堡垒主机。
可以说我有多个EC2实例。但是我不想在所有其他EC2实例上启用SSH。我想使用经过特殊配置的EC2实例作为堡垒主机,可以在其上通过专用IP(仅)进行SSH;当我进入堡垒主机实例或Jumpbox实例后,我想对VPC中的任何其他EC2实例执行SSH。
有可用的AMI实例用作跳箱或堡垒主机吗?这样一来,我只能使用一个堡垒主机对我的VPC中的任何其他EC2实例进行SSH。
我看到很少的Jumpbox EC2 AMI,但我想它们的使用方式更像Bitnami类型的发行版,并且不充当堡垒主机。
最佳答案
由于AWS安全组将允许您允许特定的IP或特定范围的SSH入站,因此对于此用例而言,拥有堡垒主机是毫无意义的。 Docs教您如何执行此操作。
唯一需要在AWS上使用堡垒主机的情况是,您需要通过SSH进入私有(private)子网中的实例。要从Internet获得私有(private)子网中的实例,您需要SSH进入公共(public)子网中的实例,并且从该堡垒实例中,您需要使用私有(private)IP通过SSH进入私有(private)子网中的实例。
设置非常简单。您不需要任何花哨的AMI或类似的东西,而实际上只需要像t2.micro这样的小东西即可。只需在公共(public)子网中启动任何实例,例如Amazon Linux。确保它的安全组允许您在端口22上使用IP,并通过SSH进入它。然后,您需要允许堡垒主机通过安全组访问所需的实例。
设置完成后,您可以使用SSH进入您的堡垒,然后从那里简单地使用SSH进入所需的实例。
这些链接可以帮助您:
Securely connect to Linux Instance in Private Subnet in VPC
Controlling Network Access to EC2 instance using Bastion Server
但是,访问专用子网中的实例的另一种方法是设置VPN。
但是,锁定实例的最佳方法是使用安全组,并仅将所需的IP分配给实例。