PowerShellでSSH接続する方法|SSHコマンドの使い方と接続例
目次
スポンサードリンク
Windows環境でサーバーにSSH接続する場合、TeraTermなどの外部ツールだけでなく、PowerShellから直接sshコマンドを使うことができます。本記事では、PowerShellでSSH接続する方法と、接続に使えるオプション、トラブル時の確認ポイントを紹介します。
SSHコマンドが利用できるか確認する方法
Windows 10以降、SSHクライアントが標準でインストールされています。インストール済みかを確認するには、以下のコマンドをPowerShellで実行します。
ssh -V
以下のようにOpenSSHクライアントのバージョンが表示されれば、SSHコマンドを利用可能です。
PS C:\Users\username> ssh -V
OpenSSH_for_Windows_9.5p1, LibreSSL 3.8.2
OpenSSHクライアントを有効化する方法
OpenSSHクライアントのバージョンが表示されない場合は、以下コマンドを実行しましょう。Powershell を管理者として起動して以下コマンドを実行します。
# 管理者としてPowerShellを起動して以下を実行
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
SSHコマンドの基本構文
SSHコマンドの基本的な構文は以下の通りです。
ssh ユーザー名@ホスト名 または IPアドレス
以下例はサーバー「192.168.100.2」に対し「root」ユーザーでのログインを試みています。パスワードの入力プロンプトが表示されるので、パスワードを入力してログインしています。
PS C:\Users\username> ssh root@192.168.100.2
The authenticity of host '192.168.100.2 (192.168.100.2)' can't be established.
ED25519 key fingerprint is SHA256:P0oybJvlrioQjdFC3JsTmXzyJm6dTxPL3uHNCvOL8N8.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.100.2' (ED25519) to the list of known hosts.
root@192.168.100.2's password:
Last login: Tue Jun 17 11:31:53 2025
[root@hostname ~]#
このサーバーに接続するのは初めてだったため、サーバーが持っている公開鍵の「指紋」(フィンガープリント)が表示されています。SSHでは、サーバーは公開鍵というものを持っていて、クライアントはそれを使ってサーバーの身元を確認します。このフィンガープリントはPC上に保存され、サーバーが同じ鍵を使っているかを確認するために使われます。次回以降の接続時は表示されなくなります。
接続先のポート番号がデフォルトの22以外の場合は、-pオプションに続けてポート番号を指定できます。
ssh user@example.com -p 10022
鍵ファイルを使ったSSH接続方法(公開鍵認証)
秘密鍵ファイル(例:id_rsa)を使用してサーバーにSSH接続するには、-i オプションに続けて、鍵ファイルのパスを指定します。
ssh -i C:\Users\username\.ssh\id_rsa user@example.com
まとめ
PowerShellでも、Linuxと同じようにsshコマンドを使ってサーバに接続できますOpenSSHクライアントが有効になっていれば、すぐに利用可能です。鍵認証やポート指定など、各種オプションもLinuxと共通なので、CLI操作に慣れておくと便利です。
PowerShellの基礎を一通り学べるおすすめ書籍
Windows環境で開発やシステム管理を行うエンジニアにとって、PowerShellの知識は非常に重要なスキルセットです。こちらの書籍はサンプルも豊富で手元に置いておきたい一冊です。
コマンドプロンプトのポケットリファレンス:Windows11対応版