ID/パスワードなしでログインできるしセキュリティも向上するしで、SSHの公開鍵認証によるログインはお勧めです。
ですが、いまいち公開鍵と秘密鍵って??とか、どっちで鍵生成するんやったっけ??って、いつも分からなくなるので図示してみました。
SSH鍵生成
まずは鍵生成で分からなくなるのが、どっち(サーバ/クライアント)で鍵を生成して、どっち(公開/秘密)の鍵を移動するのか。
クライアント(ログイン元)が左側で、サーバ(ログイン先)が右側とします。

- クライアント(ログイン元)で鍵生成
- 公開鍵をサーバに移動(クライアント側には公開鍵は不要)
- 公開鍵を~/.ssh/authorized_keys に追記
このときauthorized_keysの権限も確認します。600になっていなければ、変えておきます。
chmod 600 authorized_keys
※Windowsだとちょっと生成方法とか違うので、クライアントもサーバもlinuxベースで考えてます。
SSH公開鍵認証
で、実際、公開鍵認証するときの概要も図示してみました。(参考:公開鍵暗号でSSHのセキュリティを高める)

まとめ
- 鍵の生成はクライアントで
- 公開鍵をサーバのauthorized_keysに追加
関係ないですが、こうゆう図を書くのにCacoo使ってみたのですが、なかなか使えそうです。イラレとかなくてもある程度必要な図がすでにあるのでいいですね。