罠過ぎる:OpenSSHにおいて公開鍵認証でログインできない

現象:以下の手順のとおりに行っても公開鍵でログインできない

Windows OS上からPuttyで公開鍵ログインをしようとしていた。

  • puttygenで鍵ペアを作成(公開鍵 public.key、秘密鍵 secret.ppk)
  • WinSCPなどで公開鍵を当該CentOSサーバーへ
  • 以下のコマンドで公開鍵を登録
% mkdir ~/.ssh
% chmod 700 ~/.ssh
% ssh-keygen -i -f public.key >> ~/.ssh/authorized_keys
% chmod 600 ~/.ssh/authorized_keys
  • PuttyWinSCP秘密鍵登録して、公開鍵認証でログインしようとすると「Server refused our key」。

原因: SELinuxの設定により~/.ssh/authorized_keysがSSHDから読み込めない状態になっていた

SELinux難しすぎる!

~/.ssh にはデフォルトでssh_home_tという適切なコンテキストが付与されているのでそれを復帰する。

restorecon -R -v /home/USERNAME/.ssh

そして、これと同じ話を1週間前にしていた。鳥頭過ぎる。