Windows11のPowerShellコマンド「ssh-keygen」でSSH鍵を作成する方法を解説します。
OpenSSHの確認
Windows11でSSH鍵を作成するには、PowerShellとOpenSSHを利用する方法が一般的です。
Windows 11にはOpenSSHが標準で含まれていますが、念のため以下の手順でOpenSSHが入っているか確認しましょう。
① 「スタートボタン」を右クリックし、メニューから「ターミナル(管理者)」をクリックして、Powershellの画面を開きます。
② 以下のコマンドを実行します。
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'
② OpenSSHが入っていれば、以下のような表示がされます。
Name : OpenSSH.Client~~~~0.0.1.0 State : Installed Name : OpenSSH.Server~~~~0.0.1.0 State : NotPresent
何も表示されない場合、OpenSSHがインストールされていないため、以下でインストールできます。
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
SSH鍵の作成
OpenSSHが入っていることが確認できたら、以下の手順でSSH鍵を作成します。
① 「C:\Users\ユーザー名」配下に「.ssh」フォルダがなければ作成します。
(※「.ssh」フォルダ内にSSH鍵のファイルを保管します)
② Powershellの画面で以下のコマンドを実行します。(※「ユーザー名」は適宜変更)
ssh-keygen -t ed25519 -C "user01@zbx_server" -f "C:\Users\ユーザー名\.ssh\id_ed25519_zbx_server"
オプション | 意味 |
---|---|
-t |
鍵の種類(例:rsa, ed25519)。RSA鍵(特に2048bit以下)は現在ではEd25519よりも弱いとされる |
-b |
ビット数(RSAのみ) |
-C |
コメント | -C "user01@serverA" |
-f |
鍵ファイルの保存先。省略されるとデフォルト(C:\Users\<ユーザー名>\.ssh\id_rsa )になる |
-N |
パスフレーズ(空なら -N "" )。省略すると、コマンド実行後に「Enter passphrase (empty for no passphrase):」と聞かれ、対話式で入力する。 |
③ 対話形式でパスフレーズを2回聞かれますので、任意で決めたパスを入力して「Enter」キーを押します。
Generating public/private ed25519 key pair. Enter passphrase (empty for no passphrase): ←パスワードを入力 Enter same passphrase again: ←もう一度同じパスワードを入力 Your identification has been saved in C:\Users\ユーザー名\.ssh\id_ed25519_zbx_server Your public key has been saved in C:\Users\ユーザー名\.ssh\id_ed25519_zbx_server.pub The key fingerprint is: SHA256:XXXXXXXXXXXXXXXXXXXXXXXXXXXX user01@zbx_server The key's randomart image is: +--[ED25519 256]--+ | +=*+... . | |=.XB*o . o | |+O+O*+ . o | |o+E+..o o | |=*o . .oS | |oo. . . | |.. | | | | | +----[SHA256]-----+
④ 「C:\Users\ユーザー名.ssh」の中に秘密鍵と公開鍵が作成されていることを確認します。
- 秘密鍵:id_ed25519_zbx_server
- 公開鍵:id_ed25519_zbx_server.pub
通常、公開鍵の内容をコピーして、接続先ホストに登録します。
関連ページ

【Windows11】PowerShellでSSH接続(鍵認証)を行う方法
Windows11のPowerShellコマンド「ssh-keygen」でSSH鍵を作成する方法を解説します。

【VSCode】ラズベリーパイをRemote-SSHで接続して遠隔操作(Remote Development)
VSCode(Visual Studio Code)からRemote-SSH(Remote Development)でラズベリーパイを遠隔操作する方法について解説します。

【Mac】RaspberryPi 4をSSH接続して遠隔操作する方法
RaspberryPi4(ラズベリーパイ4)をMacのSSHから接続して操作する方法について紹介します。

【VSCode超入門】基本的な使い方から応用例まで解説
VSCode(Visual Studio Code)の基本的な使い方から応用例まで入門者向けに解説します。

Python超入門速報

【Windows超入門】初心者から上級者までテクニックを解説
Windowsの基本操作と設定基本操作Windowsの基本操作便利なショートカット大全集画面のカスタマイズカスタマイズWindows 11の右クリックメニューを昔のスタイル(Windows 10)に戻す方法Windowsを高速化・軽量化する...
コメント