Windows10にssh-agentをインストール

WindowsのPowerShell向けのssh-agentをインストールしてみましたので、その時のメモです。2019/6月現在、最新版は v7.9.0.0p1-Beta が公開されているので、これを使います。

上記ページからOpenSSH-Win64.zipをダウロードし展開します。PowerShellのアイコンを右クリックし「その他→管理者として実行」で起動し、展開したフォルダに移動します。
※今回はc:\直下に展開したのでそこに移動しています。

PS C:\Windows\system32> cd C:\OpenSSH-Win64

デフォルトでは、Windowsサービスのインストーラ(PowerShellスクリプト)を実行する権限がないので、これを有効にします。
※ExecutionPolicyをRestrictedからRemoteSignedに変更します。

PS C:\OpenSSH-Win64> Get-ExecutionPolicy
Restricted

PS C:\OpenSSH-Win64> Set-ExecutionPolicy RemoteSigned
実行ポリシーの変更
実行ポリシーは、信頼されていないスクリプトからの保護に役立ちます。実行ポリシーを変更すると、about_Execution_Policies
のヘルプ トピック (https://go.microsoft.com/fwlink/?LinkID=135170)
で説明されているセキュリティ上の危険にさらされる可能性があります。実行ポリシーを変更しますか?
[Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] すべて無視(L) [S] 中断(S) [?] ヘルプ (既定値は "N"): y
PS C:\OpenSSH-Win64> .\install-sshd.ps1
警告: 発行元 OpenSSH のリソースが見つからなかったか、EventLog サービス アカウント
(NT SERVICE\EventLog) にアクセスできません。
[SC] SetServiceObjectSecurity SUCCESS
[SC] ChangeServiceConfig2 SUCCESS
[SC] ChangeServiceConfig2 SUCCESS
sshd and ssh-agent services successfully installed

PS C:\OpenSSH-Win64> Get-ExecutionPolicy
RemoteSigned

インストーラを実行します。

PS C:\app\OpenSSH-Win64> .\install-sshd.ps1
警告: 発行元 OpenSSH のリソースが見つからなかったか、EventLog サービス アカウント
(NT SERVICE\EventLog) にアクセスできません。
[SC] SetServiceObjectSecurity SUCCESS
[SC] ChangeServiceConfig2 SUCCESS
[SC] ChangeServiceConfig2 SUCCESS
sshd and ssh-agent services successfully installed

必要に応じてssh-agentをサービスを起動します
※ Windowsサービスのため、対象フォルダ(C:\OpenSSH-Win64)が暗号化されていると起動できないので注意。

PS C:\OpenSSH-Win64> Set-Service ssh-agent -StartupType Automatic
PS C:\OpenSSH-Win64> Start-Service ssh-agent
PS C:\OpenSSH-Win64> Get-Service ssh-agent
Status Name DisplayName
------ ---- -----------
Running ssh-agent OpenSSH Authentication Agent

以上で完了です。必要に応じて変更したセキュリティ設定を元に戻します。

PS C:\OpenSSH-Win64> Set-ExecutionPolicy Restricted
実行ポリシーの変更
実行ポリシーは、信頼されていないスクリプトからの保護に役立ちます。実行ポリシーを変更すると、about_Execution_Policies
のヘルプ トピック (https://go.microsoft.com/fwlink/?LinkID=135170)
で説明されているセキュリティ上の危険にさらされる可能性があります。実行ポリシーを変更しますか?
[Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] すべて無視(L) [S] 中断(S) [?] ヘルプ (既定値は "N"): y

参考
https://mimimopu.com/windows_powershell_ssh/
https://code.visualstudio.com/docs/remote/troubleshooting

タイトルとURLをコピーしました