サーバー導入とsshを公開鍵のみで認証できるようにした

サーバーをおいて何日かたった。
なんとか無事に、初期段階はクリアしたようだ。
ubuntuの使いやすさに感動した。

sshの認証を公開鍵にするまでまとめ

  • ssh-keygem -t rsa
  • scp ./.ssh/id_rsa.pub "serverのIPとか":.ssh/aouthorized_keys

これで行けたはず。

ssh-keygem何たらで公開鍵秘密鍵が作れる、 -t rsa で暗号の種類を選んでいる。
このときにファイルを ~/.ssh/id_rsa.pub で作っていいかとか、パスキーは何にするかとか聞かれ、パスキーを入力するとログイン時に毎回パスキーを聞かれる事になるので、いやならばいれないでもいいかもしれない。

今回は、サーバーの方に.ssh/aouthorized_keysがない状態だったので直に送りつけているが、これは正気の沙汰ではない。
普通は一回サーバーの方におくって cat とかでファイル末尾に足すとかがいいはず。

サーバーの方では /etc/ssh/sshdconfigのPasswordAuthentication とPermitRootLogin と PermitEmptyPassword を noにした。
これで、パスワードではログインさせない、ルートではログインさせない、空のパスワードを認めない、設定にできた。

その後、 sudo /etc/init.d/ssh restart でsshのサービスを再起動して設定を反映する。

ググったら割とまどろっこしい説明がおおい感じだったがやってみると以外とあっさりだった。