ssh-copy-id 公開鍵が拒否されました

ssh-copy-id 公開鍵が拒否されました

公開 SSH キーを VPS にコピーして、 でログインできるようにしようとしていますssh

ただし、次のコマンドを入力すると:

ssh-copy-id me@myserver

このエラーメッセージが表示されます

/usr/local/bin/ssh-copy-id: INFO: attempting to log in with the new    key(s), to filter out any that are already installed
/usr/local/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if   you are prompted now it is to install the new keys
Permission denied (publickey).

これを修正する方法を知っている人はいますか? 私は Mac を使用しています。

答え1

Camilo がすでに示唆しているように、リモート サーバーに適切な SSH 公開キーを手動で追加できます。

私の場合、SSH プログラムが ssh-copy-id の使用時に定義されたものと異なる ID ファイルを使用しようとしたとき、または定義された秘密鍵 / ID ファイルを見つけられなかったときに、同じエラーが発生しました。 -v を追加して ssh コマンドを実行すると、SSH プログラムが何を行うかを確認できます。

ssh -v username@your-host-ip-or-domain 

次に、SSH プログラムが秘密鍵を試す公開鍵 (たとえば、Mac/Linux の場合のデフォルト キー) をローカル マシンから取得します。

cat ~/.ssh/id_rsa.pub

...そしてそれをリモートの authorized_keys ファイルに追加します:

~/.ssh/authorized_keys

もう 1 つの、私の場合さらに良い解決策は、ローカルの SSH 構成ファイルにカスタム ホストを追加することでした。私の Mac では次のようになります。

~/.ssh/config

ここで、たとえば次のようなものを追加できます。

Host mynewserver
        HostName some.IP.number.or.domain
        Port 20000 #if custom port is used and not the default 22
        User the_root
        PreferredAuthentications publickey
        IdentityFile ~/.ssh/id_rsa_for_my_new_server

次に、以下を実行するだけです:

ssh mynewserver

...そして出来上がり

答え2

私も同じ問題を抱えていましたが、私の場合は手動で解決しました。このリンクで解決方法を見つけることができます。手動入力. この方法では、ペアキーを使用していても ssh 経由で接続できました。設定時に、.ssh/authorized_keys ファイルには初期マシンを指す別のキーが含まれていたので、その情報を初期マシンの /.ssh/id_rsa.pub に含まれる情報で上書きしました。

関連情報