SSHでPermission denied (publickey)エラー
サーバーに一般ユーザーを作成して、公開鍵暗号方式でSSHでログインしようとしたらPermission denied (publickey)
と怒られてなかなか解決できなかった。
パスワードでログインはできるが、公開鍵だとダメ。
いろいろとググって以下の方法を試してみたが、ダメだった。
- 秘密鍵と公開鍵は正しいか?
- 最初は秘密鍵のコピペミスかと思って、scpでコピーしたがそれでもダメ
- .ssh/configは正しいか?
- 秘密鍵のパスもユーザー名もIPアドレスも間違いない
- 秘密鍵や.sshディレクトリのパーミッションはあっているか?
- 秘密鍵は600、.sshディレクトリは700
- 公開鍵の所有者はログインしようとしている一般ユーザーか?
- chownで所有者を変更後、lsで確認
結論
一般ユーザーではなく、rootの.sshディレクトリに公開鍵を置いていた。
一般ユーザーのホームディレクトリ直下に改めて.sshディレクトリと公開鍵を配置したところ、無事にログインできました。