SSHログインの鍵認証設定について

SSHログインの鍵認証設定について

  • blog
  • 2026年2月4日

やぁみんな。

ジュークだよ。
今回は、UbuntuサーバーのSSH接続を鍵認証にしたよ。
設定したのはUbuntuサーバーのバージョン22.04.3だ。
それじゃぁ行ってみよー。


SSH鍵の生成

今回はTera Termを使って作業していくよ。

まずは、Tera Termを開いたら一度接続をキャンセルしてくれ。

メニューバーの設定からSSH鍵生成をクリックして…

鍵の種類は"ED25519"を選択して生成をクリックする。

そうすると、SSH公開鍵と秘密鍵が保存できるので、保存してくれ。
鍵認証にして、鍵が無くなるとサーバーへのログインができなくなるから無くさないよう注意が必要だ。
公開鍵と秘密鍵を保存したら一度、Tera Termを閉じる。


SSH公開鍵の設置

再度Tera Termを開いたら、“OK"をクリックしてログインしてくれ。

ログインの時に注意してほしいのが、“このホストをknown hostsリストに保存する(A)“のチェックを外して"続行"をクリックしてほしい。
その後は、普通にパスワード認証でログインする。

サーバーへログイン出来たら、先ほど保存した公開鍵をTera Termへドラックアンドドロップする。

そうすると上のようなダイアログが表示されるが、何もせずに"OK"をクリックだ。

次にサーバーへ放り込んだ公開鍵を.sshフォルダに移動するのだけど、元々.sshフォルダに入っているauthorized_keysのバックアップをとっておこう。

mv .ssh/authorized_keys .ssh/default_authorized_keys

id_ed25519.pubをリネームして.sshフォルダに移動させて…

sudo mv id_ed25519.pub .ssh/authorized_keys

ファイルとディレクトリの権限を変更しよう

sudo chmod 700 .ssh
sudo chmod 600 .ssh/authorized_keys

設定ファイルの変更

設定を変更する前に、最初からある設定ファイルのバックアップをとっておこう。

sudo cp /etc/ssh/sshd_config /etc/ssh/backup_sshd_config

設定ファイルを編集するぞ。
今回はエディタにviを使用しているけど、みんなの使いやすいエディタで編集してくれ。

sudo vi /etc/ssh/sshd_config

編集するのは以下の三点。
ポート番号、ルートログインの禁止、パスワード認証の禁止だ。

Port 1975
PermitRootLogin no
PasswordAuthentication no

設定ファイルを保存したらsshを再起動してくれ。

  • Ubuntu 22の場合
sudo systemctl restart sshd
  • Ubuntu 24の場合
sudo systemctl restart ssh

動作確認

Tera Termを開いて、いつも通りログインしてくれ。

この時も"このホストをknown hostsリストに保存する(A)“のチェックは外して…

今度は、パスワードではなく保存した秘密鍵を選択してログインしてみてほしい。

問題なくログイン出来れば、鍵認証設定の完了だ!