Tera Termで鍵を生成しsshによる鍵認証を行う方法 †
WindowsクライアントでTera Termなどのターミナルソフトを起動し、ssh接続にてLinuxなどに接続するとき、
通常であればユーザーアカウントとパスワードを入力し認証しターミナルとして使用します。
また、認証として鍵認証があり、接続先に公開鍵を配置しWindowsには秘密鍵を配置することにより
パスワード認証ではなく鍵認証でsshのログインが可能になります。
本資料は、Tera Termの鍵生成機能を使用しLinuxに公開鍵を配置しTera Term側には秘密鍵とユーザーアカウントを設定し
sshログインできるようにする手順を以下に記します。
関連記事 †
Tera Termで鍵を生成する手順 †
以下の手順でTera Termを操作し鍵を生成します。
- Tera Termを起動する。
- Tera Term: 新しい接続 ダイアログが表示されるのでキャンセルボタンを押し閉じる。
- 設定(S)→SSH鍵生成をクリックする。
- TTSSH: 鍵生成の画面が表示されます。
- 鍵の種類およびビット数を設定します。(当方初期値のまま使用しました。)
- 生成ボタンを押します。
- 生成ボタンを押すと鍵のパスフレーズとコメントに入力が可能になります。
必要に応じて鍵のパスレーズ、コメントを入力してください。(当方、未入力のまま。)
- 公開鍵の保存ボタンを押します。
保存先のダイアログが表示されるので、管理しやすい場所(フォルダ)に保存してください。
ファイル名はid_rsa.pubでかまいません。(公開鍵なので拡張子がpubになっています。)
- 秘密鍵の保存ボタンを押します。
パスフレーズが空白の場合、「空のパスフレーズで使用しますか?」とメッセージが表示されます。
空のパスフレーズでよければ、はい(Y)ボタンを押すと、秘密鍵が生成され保存先のダイアログが表示されます。
ファイル名はid_rsaでかまいません。(秘密鍵なので拡張子にpubはつきません。)
当方、公開鍵生成時のid_rsa.pubと同じフォルダに保存しました。
- 鍵認証するサーバーにTera Termでログインします。
- id_rsa.pubをTera Termの画面にドラッグ・アンド・ドロップするとscpできます。
以下の画面が表示されたらSCPボタンを押します。
SCP先は~/($HOME)のままでかまいません。
lsで確認するとscpされたことが確認できます。
sakura@ubuntu:~$ ls -l
合計 4
-rw-r--r-- 1 sakura sakura 381 8月 28 00:30 id_rsa.pub
- ssh鍵認証のディレクトリや公開鍵を以下のコマンドで設置します。
すでに.sshディレクトリやauthorized_keysが既に存在している場合やパーミッションが既に設定してある場合は、
以下の操作で該当するところを省略してもかまいません。
sakura@ubuntu:~$ mkdir -p ~/.ssh
sakura@ubuntu:~$ chmod 700 ~/.ssh/
sakura@ubuntu:~$ cat ~/id_rsa.pub >> .ssh/authorized_keys
sakura@ubuntu:~$ chmod 700 ~/.ssh/authorized_keys
sakura@ubuntu:~$ rm ~/id_rsa.pub
- TeraTermから鍵認証してみます。
- 新しい接続(またはTeraTermを再起動)で鍵を設置したホストを入力し(既に表示されていると思います)OKボタンを押します。
- ssh認証画面が表示されます。
- ユーザ名を入力します。
- RSA/DSA鍵を使うをチェックし秘密鍵ボタンを押して、鍵生成の時に保存したid_rsaを選択します。
- OKボタンを押せばssh接続されます。(本資料ではパスフレーズは設定してません。)
TeraTermの設定 †
毎回ユーザ名と秘密鍵を選択するのが面倒な場合は、以下の手順でTeraTerm起動時に反映することができます。
- Tera Termを起動します。
- Tera Term: 新しい接続ダイアログが表示されたらキャンセルボタンを押します。
- 設定(S)→SSH認証(A)をクリックしてください。
- TTSSH: 認証設定画面が表示されます。
- ユーザ名を入力します。
- RSA/DSA鍵を使うにチェックを入れます。
- 秘密鍵ボタンを押して生成した秘密鍵(id_rsa)を選択します。
- OKボタンを押します。
- 設定(S)→設定の保存(S)をクリックします。
- 設定の保存画面が表示されるので、保存ボタンを押します。
TERATERM.INIの設定は、マイドキュメントに保存すると次回起動から反映されます。
従ってマイドキュメントに保存するのが一番良いと思います。(Windows7だとライブラリ→ドキュメントになります。)
- 新しい接続をすると以下のスクリーンショットのように、ユーザ名および鍵が既に選択された状態になります。
以上、Tera Termの鍵生成機能を使用して鍵認証をするための環境構築方法でした。