权限被拒绝(公钥) - mac

Mot*_*art 4 ssh digital-ocean

我无法登录我的 Droplet。这是我就该问题发表的另一篇文章,但没有解决我的问题,但解释了我尝试过的一些方法。 /sf/ask/3704222931/?noredirect=1#comment92856534_52972508

我刚刚尝试过的:

  1. ssh-key gen. 命名键portfolio。这个命名会不会有问题?在我的机器上唯一可用的键是具有默认名称的键id_rsa,但具有该名称的键不能超过一组。调试中有一行Offering public key: RSA SHA256:blahblah /Users/ME/.ssh/id_rsa说它看起来像连接到错误的键???我试图ssh -i ~/.ssh/portfolio ME@139.xx.xx.xxx连接到一个名为portfolio. 不。Permission denied (publickey).

  2. 在 DO 控制台内登录服务器。nano /.ssh/authorized_keys. 复制我的名为投资组合的公钥。在这里得到这个

  3. 创建一个新用户并保存。
  4. 使用我的 Mac 上的终端测试密钥对 ssh -v -i ~/.ssh/portfolio newUSer@139.XX.XXX.XXX

大胖子Permission denied (publickey).显然登录也不行。为什么?密钥匹配并就位,但仍然找不到彼此。

进一步调试:使用数字海洋控制台,目前我可以访问我的液滴的唯一方法,我发现复制/粘贴不起作用。粘贴公钥会产生与真实密钥完全不同的字符串。这甚至发生在nano中。

Mot*_*art 6

我想更新我是如何解决这个问题的。问题在于:

  1. 关键是没有正确地进入服务器。或者一个不正确的版本正在制作它。
  2. 一旦我放置了正确的密钥,我的本地机器和服务器就找不到相互匹配的正确密钥。

已解决 1. -ssh-copy-id -i ~/.ssh/mykey root@MY-IP尝试复制公钥不起作用。~/.ssh/authorized_keys由于本地被锁定,我也尝试将其直接粘贴到Digital Ocean控制台中,但是粘贴的许多字符都是错误的。那里的粘贴功能有些奇怪,Digital Ocean 的工作人员对此一无所知。

所以为了在本地工作,我在 DO 控制台ssh myUser@123.456.789.10上重置 root PW,然后在我的本地机器上使用密码。然后~/.ssh/authorized_keys我粘贴了公钥并使用差异工具来确保它们是相同的。这次有。

解决了2。- 钥匙仍未连接。我可以只使用-i标志进行连接(这意味着身份 _file 并手动连接密钥) ssh -i ~/.ssh/mykey myUser@123.456.789.10但我不想每次都输入这个,所以我制作了一个~/.ssh/config.

Host myapp
    User user1
    HostName 123.456.789.10
    IdentityFile ~/.ssh/mykey
Run Code Online (Sandbox Code Playgroud)

然后,ssh myappp我就可以登录了。不知道为什么会发生所有这些事情。我想也许是因为我没有正确命名它们,因为它可以正常id_rsa工作,但是id_rsa2我不确定什么起作用,但是这些解决方法解决了这个问题。