关于linux:为Ubuntu定义一个密钥文件,以便在SSH服务器时使用

Define a set keyfile for Ubuntu to use when SSHing into a server

我有两个亚马孙当我连接到其中一个,我可以

壳牌使用了我的正确键

我只是建立了一个新的论坛,我正在尝试想出如何复制这个新的论坛的行为。这是一个小小的东西,只是把我的裸体。当我住在那里:

ZZU1

做得很好,只是

我得到:

1
Permission denied (publickey).

我不知道该如何管理它,以便使它为第一个服务器工作,但我喜欢能够在没有"我ABC.PEM"论据的情况下运行到第二个服务器。Ermissions are 600:

1
-r-------- 1 mdexter mdexter 1692 Nov 11 20:40 abc.pem

What I have tried:I copied the public key from authorized keys on the remote server and pasted it to authorized kkeys on the local server,with [email protected](private key)because I thought that might be what created the association in the shell between that key and that server for the shell.

我唯一的区别是,我是如何设置两个服务器的,与第一个,我创建了一个PPK键,所以我可以通过文件连接到SFTP。但我认为SSH仍然是亚马孙给的Pem given。

我怎么能告诉壳牌,当它进入特殊的IP时,它总是使用我的PEM键?这是一个微妙的过程,但我试图加强我的(基本上)了解公共/私人钥匙,我想知道这是否在其中。


你可以用三种方法来解决这个问题:

  • 把你的~/.ssh/mykey.pem的内容放入~/.ssh/id_rsa中,放在你要ssh到第二个实例的机器上。确保还将~/.ssh/id_rsa的权限更改为600的权限。

  • 使用ssh代理(ssh代理将为您管理密钥)

    • 启动SSH代理

      1
      eval `ssh-agent -s`
    • 使用ssh-add向ssh代理添加密钥

      1
      ssh-add mykey.pem
  • 使用ssh配置文件:

    您可以使用ssh配置文件。在尝试ssh的机器上,在~/.ssh/config文件中保留以下内容(确保授予该文件600权限):

    1
    2
    3
    4
    5
    Host host2
      HostName 54.987.6.54
      Port 22
      User ubuntu
      IdentityFile ~/.ssh/mykey.pem

    一旦您这样做了,现在就可以访问ssh,如下所示:

    1
    ssh host2
  • 在执行上述任何步骤之后,您应该能够在没有指定密钥路径的情况下ssh到第二个实例中。

    注意:第二个选项要求每次注销并重新登录时使用ssh-add添加密钥,以使永久注入看到这个问题。