【必須設定】Tera TermでSSH鍵認証接続を設定する方法

セキュリティ Rocky Linux

はじめに(このページの目的)

WindowsパソコンからLinuxサーバーにTera Termを使って接続する際、パスワード認証よりも安全な方法として「SSH鍵認証」があります。
本記事では、初心者の方でも迷わず設定できるよう、SSH鍵の作成からLinux側への登録、Tera Termの設定までを順を追って丁寧に解説します。


作業前の確認ポイント

  • WindowsパソコンにTera Termがインストールされていること
  • Linux側の一般ユーザーアカウントが存在し、パスワードログインが可能であること
  • LinuxサーバーのIPアドレス(またはホスト名)を把握していること
  • ファイルやディレクトリのパーミッションに関する基本操作ができること

実施手順(ステップ構成)

ステップ1:WindowsでSSH鍵ペアを作成する

1-1. コマンドプロンプトまたはPowerShellを開く

Windows + R を押して「cmd」または「powershell」と入力し、Enterで起動します。

1-2. ユーザーフォルダを確認

whoami
echo %USERPROFILE%

1-3. .sshフォルダを作成(存在しない場合)

mkdir %USERPROFILE%\.ssh

1-4. SSH鍵を作成

以下のコマンドで鍵ペアを作成します(例:id_rsa_sample というファイル名)。

ssh-keygen -t rsa -b 4096 -f %USERPROFILE%\.ssh\id_rsa_sample

※ パスフレーズの入力は任意ですが、セキュリティを高めたい場合は設定を推奨します。

作成されるファイル:

  • id_rsa_sample:秘密鍵(Windowsに保管)
  • id_rsa_sample.pub:公開鍵(Linuxに登録)

ステップ2:公開鍵を確認・コピーする

メモ帳などで公開鍵ファイルを開き、中身をコピーします。

notepad %USERPROFILE%\.ssh\id_rsa_sample.pub

1行で構成された文字列全体をコピーしてください。


ステップ3:Linuxサーバーに公開鍵を登録する

3-1. Tera Termでパスワード認証ログイン

Tera Termを起動し、LinuxのIPアドレスを入力して接続。一般ユーザー名とパスワードでログインします。

3-2. 公開鍵を登録するためのディレクトリとファイルを作成

mkdir -p ~/.ssh
chmod 700 ~/.ssh
nano ~/.ssh/authorized_keys

エディタが開いたら、コピーしておいた公開鍵を貼り付けます(右クリックまたはCtrl + Shift + V)。

保存操作:

  • Ctrl + O → Enter(保存)
  • Ctrl + X(終了)

3-3. パーミッションを設定

chmod 600 ~/.ssh/authorized_keys

ステップ4:Tera Termで鍵認証ログインを設定・確認

4-1. Tera Termで秘密鍵を指定

  1. Tera Termを起動
  2. ホスト名/IPを入力し「OK」
  3. ログイン画面でユーザー名を入力
  4. [RSA/DSA/ECDSA/ED25519 鍵を使う]にチェック
  5. 秘密鍵ファイル(id_rsa_sample)を指定
%USERPROFILE%\.ssh\id_rsa_sample

4-2. 接続を実行

「OK」をクリックし、パスワード入力なしでログインできれば成功です。


接続確認とトラブルシューティング

  • 公開鍵が正しく貼り付けられているかを確認
  • ~/.sshauthorized_keysのパーミッションが正しいか
  • ユーザーのホームディレクトリに他ユーザーが書き込みできない状態(chmod 755 ~ など)か
  • 秘密鍵ファイルの選択ミスや拡張子の有無を確認(例:.ppkでないか)

補足情報まとめ(表形式など)

項目 内容
秘密鍵の保存場所 %USERPROFILE%\.ssh\id_rsa_sample
公開鍵の確認 notepad %USERPROFILE%\.ssh\id_rsa_sample.pub
Linux側の公開鍵保存先 ~/.ssh/authorized_keys
フォルダ権限 chmod 700 ~/.ssh
ファイル権限 chmod 600 ~/.ssh/authorized_keys
現在のユーザー確認 whoami(Windows/Linux共通)

まとめ

  • WindowsでSSH鍵ペアを作成し、公開鍵のみLinuxに登録
  • Tera Termで秘密鍵を設定することで、パスワード不要でログイン可能
  • Linux側の.sshディレクトリおよびファイルのパーミッション設定が重要
  • 鍵ファイル名やユーザー名は特定されにくい名前を推奨

参考リンク

コメント