ssh接続の為の鍵ペア生成方法
公開鍵認証方式によるssh接続を行う為、公開鍵と秘密鍵を生成する。いつもはTera Termを使って生成してたけど、今回はそれとは別にRaspberry Pi OS上での生成手順もまとめてみようと思う。
Tera Termによる鍵ペア生成
まずは、使い慣れたTera Termによる鍵生成を。Tera Termを起動しメニューバーの設定(S) > SSH鍵生成(N)を選択する。
次に、生成条件を入力する。デフォルト設定は以下のとおり。今回はデフォルトのまま鍵を生成する。
鍵の種別 | 鍵の長さ |
---|---|
RSA | 2048bit |
画面中の生成(G)ボタンを押すと、鍵の生成が始まる。
鍵の生成が完了すると、パスフレーズの入力欄が有効化される。パスフレーズを入力した後、公開鍵の保存(I)と秘密鍵の保存(P)を押して、それぞれの鍵を任意の場所に保存する。ちなみに、id_rsaが秘密鍵で、id_rsa.pubが公開鍵らしい。
これで、Tera Termによる鍵ペアの生成は完了。鍵ペア、ゲットだぜ!
Raspberry Pi OS上での鍵ペア生成
Linux上で鍵ペアを生成するには、ssh-keygen
コマンドを使用する。まず、man ssh-keygen
を見てみる。
DESCRIPTIONより抜粋
If invoked without any arguments, ssh-keygen will generate an RSA key.
オプション-bの説明より抜粋
For RSA keys, minimum size is 1024 bits and the default is 2048 bits.
生成される鍵の種類と長さのデフォルト値はTera Termと一緒みたい。 特にオプションを指定せず、デフォルト値(=RAS 2048bit)で鍵を生成してみる。以下実行結果。
pi@raspberrypi:~ $ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/home/pi/.ssh/id_rsa): Created directory '/home/pi/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/pi/.ssh/id_rsa. Your public key has been saved in /home/pi/.ssh/id_rsa.pub. The key fingerprint is: SHA256: SAMPLEsampleSAMPLEsampleSample pi@raspberrypi The key's randomart image is: +---[RSA 2048]----+ | | | | | | | | | Sample | | | | | | | | | +----[SHA256]-----+
生成の流れはこんな感じ
pi@raspberrypi:~/.ssh $ ls
id_rsa id_rsa.pub
なるほど、たしかに保存されている。鍵ペア、ゲットだぜ!!