sshで接続する際に、鍵認証で接続する方法と鍵認証を必須化する方法を紹介します。
鍵の作成と鍵認証による接続
まず、接続元のパソコンで鍵を作成します。
# ~/.ssh/以下にid_rsaという名前で鍵を作成
ssh-keygen -t rsa -f ~/.ssh/id_rsa
作成した鍵のうち、公開鍵をサーバーに転送します。
# -pはポート指定。デフォルトでは22
# <user>はサーバーのユーザー名
# <ip or domain>はサーバーのIPアドレスかドメイン名
ssh-copy-id -p 22 -i ~/.ssh/id_rsa.pub <user>@<ip or domain>
鍵認証でアクセスします。
# -iで作成した秘密鍵を指定する
ssh -i ~/.ssh/id_rsa -p 33 <user>@<ip or domain>
鍵認証の必須化(パスワード認証の拒否)
サーバーにアクセスした状態で、/etc/ssh/sshd_config
を編集します。#PasswordAuthentication yes
という行があると思うので、先頭の#
を外してyes
をno
にします。
PasswordAuthentication no
sshdサービスを再起動します。
sudo systemctl restart ssh