具体的な環境/操作等を書いていただかないと上記の情報だけですと正直憶測でお答えするしかないわけですが....
サーバ側には 2012/1/4 のタイムスタンプで(= 2012/1/4 にsf.jpのサーバに登録された)以下のようなキーが登録されています。
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEArLe4dEr(以下省略) kinoko999@personal
Permission dedined (publickey)というエラーになっているということは、「ログイン名として kinoko999 が使われていない」 もしくは「ログインする際に上記のキーが使われていない(使うように指定されていない)」ということになります。
その点をご確認ください。
$ ssh -l kinoko999 shell.sourceforge.jp Permission denied (publickey). $ ssh -l kinoko999 shell.sourceforge.jp Permission denied (publickey). $ man ssh $ ssh -l kinoko999@personal shell.sourceforge.jp Permission denied (publickey). $ 以上の様な状態となります。
known_hostsは、何度削除しても下記の記述になってしまいまして、その相違が原因かな? とも思いますが、解決方法がもしあれば教えてください。よろしくお願いします。
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEAsX2//
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEAsX2//(以下省略) となります。(以下省略を書き忘れていました。)
環境について書き忘れていました。 MacOSXですので、BSDと同等かと思います。
kinoko999 への返信
$ ssh -l kinoko999 shell.sourceforge.jp Permission denied (publickey).
指定としてはこれで正しいです。したがって、正しい client key が利用されていない状況だと思われます。 ssh に -v オプションを指定するとデバグメッセージが表示されるようになります。
ssh -v -l kinoko999 shell.sourceforge.jp
上記を実行した際に表示されるメッセージの中に以下のような行があるはずです。
debug1: Offering RSA public key: /home/ishikawa/.ssh/id_dsa
(RSA の部分は DSA や他のアルゴリズムの場合がありますが ともかくこの類似行を探してください)
このファイル名の部分が正しいか(自分が意図したクライアントキーのファイルを利用しているか)確認してください。
また、このキーのファイルを指定して次のコマンドを実行してみてください。
ssh-keygen -l -f 上記のキーのファイル名
上記を実行するとクライアントキーの finger print が表示されます。shell.sourceforge.jp に登録されている kinoko999 アカウントの ssh public key の finger print を確認すると以下のようになっています。
1024 58:18:c5:d5:e6:59:55:97:f5:ba:93:e5:27:6e:37:41 authorized_keys (RSA)
前述のコマンドを実行した結果、この finger print と一致しない場合は 間違ったキーが利用されています。
正しいキーのファイルを指定して ssh を実行してみてください。
ssh -i キーファイル -l kinoko999 shell.sourceforge.jp
known_hostsは、何度削除しても下記の記述になってしまいまして、その相違が原因かな? とも思いますが、解決方法がもしあれば教えてください。よろしくお願いします。
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEAsX2//
上記はshell.sourceforge.jpの正しいhost keyですので問題ありません(正しい挙動です)。また、今回の症状からすると 問題は host key絡みではなく 明らかに client key に関連するものです(ので、これは全く関係ありません)
ishikawa への返信
{{{ ssh -v -l kinoko999 shell.sourceforge.jp }}} 上記を実行した際に表示されるメッセージの中に以下のような行があるはずです。 {{{ debug1: Offering RSA public key: /home/ishikawa/.ssh/id_dsa }}} (RSA の部分は DSA や他のアルゴリズムの場合がありますが ともかくこの類似行を探してください)
一点書き忘れました そもそも publickey authentication が利用されていない(client key が見つからなくて利用していない)場合は以下のような感じに なっているはずです。
debug1: Authentications that can continue: publickey debug1: Next authentication method: publickey debug1: Trying private key: /home/dummy/.ssh/id_rsa debug1: Trying private key: /home/dummy/.ssh/id_dsa debug1: Trying private key: /home/dummy/.ssh/id_ecdsa debug1: No more authentication methods to try. Permission denied (publickey).
この場合、そもそも client key を ssh が発見できていないため publickey 認証を行っていませんので、同様に 正しいキーファイルを明示してみてください。
ssh -i キーファイル -l kinoko999 shell.sourceforge.jp
アクセス出来ました。ありがとうございました。
-vオプションで試してみたところ、キーファイルを過去に削除してしまっていた事に気がつきました。 sshの公開鍵の登録からやりなおしたら、うまくいきました。 お手数をおかけしました。
scp ssh -l ssh-keygen FileZilla などを試したのですが、Permission denied (publickey)と表示されて、 ログインする事がどうしても出来ないようです。
サポートをお願いします。