web-dev-qa-db-ja.com

キーの名前がid_rsaでない場合、機能しません

パスフレーズを使用してSSHで接続するためのキーを作成しました。キーにid_rsa_adminという名前を付けました。ログインすると、次のメッセージが表示されますPermission denied (publickey).

ログでは、sshがファイルid_rsaを探しているため、正しいファイルが見つかりません。

キーの名前がid_rsaでない場合、機能しません。

Sshで接続する方法は?

~/.ssh/id_rsa_admin

ssh [email protected] -p 9215
14
Mathieu

Arronicalの答え は1回限りの接続には適していますが、長期的には苦痛になります。このサーバーへの接続時にsshが常にこのキーを使用するようにするには、これを~/.ssh/configに追加します(または存在しない場合は作成します)。

Host vps718449.ovh.net
    IdentityFile ~/.ssh/id_rsa_admin

その後、ssh [email protected] -p 9215だけで接続できます。追加のボーナスとして、ポートを構成することもできます。

Host vps718449.ovh.net
    IdentityFile ~/.ssh/id_rsa_admin
    Port 9215

その後、ssh [email protected]だけで接続できます。さらにもっと:

Host vps718449.ovh.net vps
     Hostname vps718449.ovh.net
     User admin
     IdentityFile ~/.ssh/id_rsa_admin
     Port 9215

そうすれば、ssh vpsだけが機能します!もちろんvpsは単なる例であり、他の任意のエイリアスを使用できます(たとえば、複数のVPSがある場合)。そこで設定できるオプションのリストについては、man ssh_configを参照してください。

39
fkraiem

キーへのパスを使用して、sshコマンドに-iオプションを使用する必要があります。変更されたコマンドは次のとおりです。

ssh -i ~/.ssh/id_rsa_admin [email protected] -p 9215
16
Arronical