我有一个EC2 Linux服务器,该服务器在子网a中具有公共IP,此外,我在子网b中还制造了另一个EC2服务器,该服务器具有私有IP。两台服务器都在同一VPC中。我想从公共服务器SSH到私有服务器。SSH端口在服务器的安全组设置中打开。但是我被拒绝了(公共IP)
[ec2-user@ip-10-0-10-62 ~]$ ssh [email protected]
The authenticity of host '10.0.20.71 (10.0.20.71)' can't be established.
RSA key fingerprint is 11:19:79:39:a3:04:d2:23:5e:af:9e:c6:98:9c:7b:bd.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '10.0.20.71' (RSA) to the list of known hosts.
Permission denied (publickey).
我相信,我需要以某种方式将私有服务器的公钥添加到公共服务器中。但是我不知道正确的方法以及是否缺少其他设置。
我已经用Google搜索,但是找不到解决此问题的直接方法。
更新:
如果我使用添加代理,则只能从我的PC上SSH到专用服务器,并且如果有更多需要SSH到专用服务器的用户,所有这些都需要进行代理转发,所以我不确定这是否是最好的方法。这种情况的方式。如果我想连接到公共服务器时使用密钥,然后不使用密钥而使用SSH到私有服务器怎么办?喜欢:
ssh [email protected]
一个答案:可以使用默认密钥位置。(身份文件)
由于您使用各自的密钥对启动了每个密钥对,因此您将不得不使用每个服务器各自的密钥对来ssh到它。因此,有两种方法可以登录10.0.20.71。1)您可以将用于启动它的私有密钥的副本放置到公共服务器上,然后将其用于对私有服务器进行身份验证-例如
[ec2-user@ip-10-0-10-62 ~]$ ssh -i you_private_key.pem [email protected]
可能更安全的解决方案是使用ssh代理转发。使用此解决方案,您不会在服务器上存储私钥。在计算机上,您应该具有用于创建2个EC2实例的2个密钥。您可以使用以下命令将这两个都添加到ssh代理中
$ ssh-add /path/to/key
进入代理后,您可以使用代理转发登录到公共服务器:
ssh -A ec2-user@<public ip address of public server>
然后将ssh切换到不带密钥的专用服务器(代理从您的计算机转发密钥)
ssh [email protected]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句