PowerShell コマンド ラインまたはターミナルを使用して、Windows 11 または 10 で OpenSSH サーバーおよびクライアント機能を有効にします…
Microsoft は、Windows 10 の進歩に伴っていくつかの点を変更しました。これは、オープン ソースと Linux に対する同社の愛着の高まりを示しています。これが、Windows 10 とその後継 OS である Windows 11 で WSL と OpenSSH の統合が見られる理由です。
一方では、OpenSSH クライアントは Windows 11 にデフォルトでインストールされ、アクティブ化されますが、この SSH プログラムのサーバー部分は手動でセットアップする必要があります。これを学ぶのに役立つチュートリアルがここにあります。
Windows 10/11 の SSH クライアントは、いわゆるオプション機能としてインストールされます。これには、スタート メニューで「オプション機能」を検索するとアクセスできます。 SSH クライアントは「機能の追加」の下にあります。ただし、SSH を設定するにはコマンドライン方法を使用します。
PowerShell コマンド ラインを開きます。
Windows 10 または 11 のどちらを使用している場合でも、[スタート] ボタンを右クリックし、Windows ターミナル (管理者) または PowerShell (管理者) を選択します。
SSHサーバーとクライアントがアクティブであるかどうかを確認します
OpenSSH が Windows システムにすでにインストールされているかどうかを確認するには、次のコマンドを実行します。
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'
この場合、クライアントはインストールされましたが、OpenSSH サーバーはインストールされていませんでした。その場合は、次のステップに進みます。
Windows 11 または 10 に OpenSSH サーバーをインストールする
このオープンソース SSH ツールのクライアント部分とサーバー部分をアクティブにするための両方のコマンドを指定しました。
# OpenSSH クライアントをインストールする
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
# OpenSSH サーバーをインストールする
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
OpenSSHサーバーサービスの開始
OpenSSH のサービスをシステム起動時に自動的に開始および実行するには、以下のコマンドを使用します。
Start-Service sshd
サービスを自動的に開始するようにマークします。
Set-Service -Name sshd -StartupType 'Automatic'
ファイアウォールでの SSH の構成
指定されたコマンド ブロックを Powershell に貼り付け、Enter キーを押します。ファイアウォール ルールは OpenSSH サーバーのインストール中に自動的に構成されますが、確認のために指定されたコマンドを 1 回実行します。ファイアウォール ルールがすでに存在する場合は、「ファイアウォール ルール「OpenSSH-Server-In-TCP」が作成され、存在しています”と返しました。
if (!(Get-NetFirewallRule -Name "OpenSSH-Server-In-TCP" -ErrorAction SilentlyContinue | Select-Object Name, Enabled)) { Write-Output "ファイアウォール ルール 'OpenSSH-Server-In-TCP' が存在しないため、作成しています…" New-NetFirewallRule -Name 'OpenSSH-Server-In-TCP' -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Actionallow -LocalPort 22 } else { Write-Output 「ファイアウォール ルール 'OpenSSH-Server-In-TCP' が作成され、存在します。」 }
OpenSSHサーバーに接続する
これで、別のコンピューターまたは仮想マシンを使用してサーバーに接続して、サーバーをテストできるようになりました。インストールされた SSH サーバーの IP アドレスにアクセスできる Linux、macOS、または Windows のコマンド ラインを開き、次の指定された構文を使用して同じように接続します。
ssh username@ip-address/servername
例えば:
ssh h2s@ 192.168.43.252
Ubuntu Linux を使用して、SSH サーバー経由で Windows コマンド ラインに接続します。
削除またはアンインストール
Windows 10 または 11 で OpenSSH サーバー/クライアント機能を無効にするかアンインストールする場合は、次のコマンドに従います。再度、管理者として Powershell を開き、必要なコマンドを実行します。
Remove-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
Remove-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0















