リモートサーバーに安全に接続するためには、パスワード認証ではなく公開鍵認証を利用するのが一般的です。Windows 10以降ではPowerShellから簡単にSSH鍵を作成できます。本記事では、PowerShellを使ったSSH公開鍵の作成方法を解説します。
SSH鍵の作成コマンド
PowerShellを管理者権限で開き、以下のコマンドを実行します。
ssh-keygen
主な手順
- コマンドを入力すると、鍵を保存するファイルパスを聞かれます。デフォルトでは
C:\Users\ユーザー名\.ssh\id_rsa
に保存されます。
そのままEnterで進めても問題ありません。 - 次にパスフレーズを設定するか聞かれます。セキュリティを高める場合は設定してください。空のままEnterでも利用可能です。
- これで、秘密鍵(
id_rsa
)と公開鍵(id_rsa.pub
)が生成されます。
公開鍵の確認方法
生成された公開鍵は以下の場所に保存されています。
C:\Users\ユーザー名\.ssh\id_rsa.pub
中身を確認する場合は、以下のコマンドを実行します。
Get-Content C:\Users\ユーザー名\.ssh\id_rsa.pub
公開鍵をサーバーに配置
作成した公開鍵をリモートサーバーの~/.ssh/authorized_keys
に追加することで、秘密鍵を使ったSSH接続が可能になります。
まとめ
ssh-keygen
でSSH鍵を生成できる- 秘密鍵はローカルに安全に保管する
- 公開鍵をリモートサーバーに配置すればパスワードなしで接続可能
これで、PowerShellから安全なSSH接続を行うための公開鍵作成が完了しました。