要求:
首先创建一个VPC:
创建四个子网,分别在两个可用区中
创建两个路由表,一个共有一个私有
创建一个igw
创建一个nat网关
路由表关联关系:
公有路由表:
私有路由表:
创建两个EC2实例,一个作为堡垒机,一个作为web服务。堡垒机放在公有子网,web服务在私有子网。
堡垒机连接到web服务可以通过以下方式:
在实际部署中考虑到跳板机所需的工作负载,可以部署配置较低的实例类型。此外,出于成本和安全考虑,您也可以在不进行运维操作的时候将跳板机状态设置为”停止”,在每次运维需要的时候再“开启”跳板机。
为跳板机实例配置安全组。在创建EC2的过程中,在安全组规则中添加SSH服务的安全规则,根据实际情况限定连接的源 IP地址(本机公网ip)。如下图所示,只接受特定的 管理终端连接:
配置受管理服务器的安全组。配置安全组规则仅接受来自跳板机所对应安全组的访问请求:
配置管理终端。在管理终端依次导入跳板机和受管理服务器的证书私钥,登录跳板机后私钥信息将转发到受管理服务器完成身份验证。以下是针对linux环境和windows环境的管理终端为例:
在linux管理终端下通过ssh从跳板机登录到受管理服务器:
步骤一:在linux管理终端上运行ssh-agent启动ssh-agent进程
步骤二:将跳板机和受管理服务器对应证书的私钥依次添加到管理终端,执行方式如下(例如,私钥文件名称为xxx.pem):
ssh-add xxx.pem
步骤三:使用ssh -A 参数登录跳板机,-A 表示通过跳板机转发本地管理端保存的私钥信息,实现跳板机与受管理服务器之间的身份验证:
ssh –A ec2-user@跳板机公网 ip地址 ——(以下假定linux ssh用户名为ec2-user)
步骤四:从跳板机直接通过受管理服务器的内网IP SSH登录服务器:
ssh ec2-user@受管理服务器的内网ip地址
(如果存在无法登陆的问题,使用ssh -D 将原来的删掉,重新add就可以了)
在对8080端口做限制,需要在web服务的安全组中加入如下配置:
防止ping,可以在NACL中配置。
创建VPC,EC2过程可以可以参考之前博文。
参考:
https://aws.amazon.com/cn/blogs/china/aws-linux/ (基于AWS 平台跳板机配置)