公開鍵認証でSSHアクセス

備忘録に記す。リモートのサーバにローカルのPCからputtyでアクセスしたい、という状況。

  • サーバでssh-keygenコマンドを実行
    • 生成の際のパスフレーズはあってもなくてもよい(?)
    • ~/.ssh/id_rsaと~/.ssh/id_rsa.pubが生成される。
    • mv ~/.ssh/id_rsa.pub ~/.ssh/authorized_keysを実行して公開鍵をサーバに設定
  • サーバから~/.ssh/id_rsaをアクセスしたいPCにダウンロード
    • puttygen.exeを使いダウンロードした秘密鍵putty用に保存しなおす。この際パスフレーズを取り払うもよし。盗まれると危ないけれど。
    • puttyに設定する(SSH - 認証のプライベートキーファイル)
  • サーバのsshを再設定(/etc/ssh/sshd_config)
    • 公開鍵認証でしかログインできないという設定にするには「PermitRootLogin without-password」の一文を追加する必要がある。これがないと公開鍵認証でもログインできるという設定なので注意が必要。
    • /etc/init.d/sshd restartで再起動
    • rootユーザ以外でも公開鍵認証のみにしたい場合は「PasswordAuthentication no」を設定する