【问题标题】:AWS best method to ssh between EC2 instances in private subnetAWS 在私有子网中的 EC2 实例之间进行 ssh 的最佳方法
【发布时间】:2020-01-19 16:01:45
【问题描述】:

我已将 NAT 和堡垒设置为使用 SSH 转发登录:

ssh-add -K keyfile.pem
ssh -A ec2-user@bastionhost
ssh ec2-user@privateSubnetServer

此时在私有子网中的主机之间处理 ssh 和用户的最佳方法是什么?

我明白了:

Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

当尝试以传统的 linux 方式进行时。如果我使用 AWS 创建的密钥对,我可以找到它们。

此时我无法设置或连接到目录服务。

【问题讨论】:

标签: amazon-web-services amazon-ec2 ssh


【解决方案1】:

可能有两个原因,密钥无效或代理命令未按预期工作。

在此之前,您像这样设置代理命令

host bastion
   HostName bastion_Adress
   User centos|whatever
   identityFile /mykeys/ec2.pem

现在尝试 ssh 到堡垒

ssh bastion

如果上面的堡垒工作正常,我们现在可以设置代理命令了。

host private_server
  Hostname 10.0.5.45
  user centos
  IgnoreUnknown UseKeychain
  AddKeysToAgent yes
  ProxyCommand ssh bastion -W %h:%p

现在你可以ssh到私人服务器了

ssh private_server

通常这些是必要的,但以防万一mac发生在某个时候

  IgnoreUnknown UseKeychain
  AddKeysToAgent yes

.ssh/config: "Bad configuration option: UseKeychain" on Mac OS Sierra 10.12.6

您可以使用此流程调试问题

  • ssh 到堡垒
  • 将您的私人服务器 ssh 密钥复制到堡垒
  • ssh 到私有实例

如果上述方法有效,则表示堡垒 ssh config 无效

如果上述方法不起作用,则 key 无效。

【讨论】:

    【解决方案2】:
    Host bastion.ip.address
           User ec2-user
           IdentityFile ~/.ssh/bastionkey.pem
           CheckHostIP no
    
    Host private.subnet.ip
           User ec2-user
           IdentityFile ~/.ssh/bastionkey.pem
           ProxyCommand ssh ec2-user@bastion.host.ip -W %h:%p
    

    【讨论】:

      猜你喜欢
      • 2018-08-10
      • 2019-09-04
      • 1970-01-01
      • 2016-06-19
      • 2021-11-18
      • 1970-01-01
      • 1970-01-01
      • 2019-01-08
      • 1970-01-01
      相关资源
      最近更新 更多