首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过NAT服务器在VPC专用子网中SSH到ec2实例

如何通过NAT服务器在VPC专用子网中SSH到ec2实例
EN

Server Fault用户
提问于 2014-11-11 23:19:32
回答 3查看 67.5K关注 0票数 22

我在aws中创建了一个带有公共子网和私有子网的VPC。专用子网不能直接访问外部网络。因此,在公共子网中有一个NAT服务器,它将所有的出站流量从专用子网转发到外部网络。

目前,我可以从公共子网SSH到私有子网,也可以SSH从NAT到私有子网。但是,我想要的是SSH从任何机器(家用膝上型电脑、办公机器和移动设备)到私有子网中的实例。

我已经做了一些研究,我可以设置NAT框将SSH转发给私有子网中的实例。但我运气不好。

有人能列出我需要设置什么才能让这一切成为可能吗?

命名如下:

膝上型计算机(VPC以外的任何设备)

nat (公共子网中的NAT服务器)

目标(我想连接到的私有子网中的服务器)

不确定以下是否有限制:

“目的”没有公共IP,只有子网ip,例如10.0.0.1“目的地”不能通过nat的public连接到"nat“。有几个“目的地”服务器,我需要为每个服务器设置一个吗?

谢谢

EN

回答 3

Server Fault用户

回答已采纳

发布于 2014-11-15 05:11:28

您可以设置一个堡垒主机来连接到VPC中的任何实例:

http://blogs.aws.amazon.com/security/post/Tx3N8GFK85UN1G6/Securely-connect-to-Linux-instances-running-in-a-private-Amazon-VPC

您可以选择启动将作为堡垒主机的新实例,或者使用现有的NAT实例作为堡垒。

如果您创建一个新实例,作为概述,您将:

1)为您的堡垒主机创建一个安全组,允许从您的膝上型计算机访问SSH (请注意此安全组用于步骤4)

2)在VPC中的公共子网中启动单独的实例(bastion)。

3)在发射时或通过分配弹性IP,为该堡垒主机提供公共IP

4)更新没有公共IP的每个实例的安全组,以允许从bastion主机访问SSH。这可以使用bastion主机的安全组ID (sg-#)来完成。

5)使用SSH代理转发(ssh -A user@publicIPofBastion)先连接到堡垒,然后在堡垒中将SSH连接到任何内部实例(ssh user@私有-IP-of-内部实例)。代理转发负责您的私钥转发,这样它就不必存储在堡垒实例上(永远不要在任何实例上存储私钥!!)

上面的AWS博客应该能够提供一些关于这个过程的细节。我还包括了以下内容,以防您需要有关堡垒主机的额外详细信息:

基站主机的概念:http://en.m.wikipedia.org/wiki/Bastion_主机

如果您需要澄清,请随时发表评论。

票数 36
EN

Server Fault用户

发布于 2019-03-05 17:48:07

我唯一能让它运转的方法。

1)确保此私有实例的安全组在入站规则中包含来自公共子网的安全组。

端口协议源

所有sg-0b6616e070b9e2d(公共安全组)

2)使用代理命令,配置ssh配置文件,使其具有如下内容

vim ~/.ssh/config

代码语言:javascript
复制
Host publichost
   HostName 24.123.34.45
   User ubuntu
   IdentityFile ~/mypem.pem
   ProxyCommand none
Host privatehost
   HostName 10.0.2.133
   User ubuntu
   IdentityFile ~/mypem.pem
   ProxyCommand ssh publichost -W %h:%p

运行ssh privatehost它应该能工作

票数 1
EN

Server Fault用户

发布于 2015-04-16 22:35:09

澄清一下:一旦ssh进入了您的堡垒主机,您就需要以用户ec2-user的身份进入NAT主机。这让我有点不知所措,因为在AWS上,ubuntu的用户通常是ubuntu。所以我做了:

代码语言:javascript
复制
laptop> ssh -A ubuntu@ssh_bastion
ssh_bastion> ssh ec2-user@nat_private_dns_or_private_ip

此外,请记住,您的ssh_bastion应该有一个出站规则,允许向其他主机和sg的流量。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/643647

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档