🗝️
Windows11で元のsshだとAgentForwardがうまくいかない
事象
AgentForwardの設定をしても、ssh接続先で ssh-add -l
の結果が空になっている。
原因
sshのバージョンが古い。具体的には下記のバージョンだとうまくいかなかった。
OpenSSH_for_Windows_8.6p1, LibreSSL 3.4.3
下記のバージョンだとうまくいった。
OpenSSH_for_Windows_9.5p1, LibreSSL 3.8.2
対処法
# 対象パッケージの確認
PS > winget search openssh
名前 ID バージョン ソース
------------------------------------------------------
OpenSSH Beta Microsoft.OpenSSH.Beta 9.5.0.0 winget
# インストール
PS > winget install Microsoft.OpenSSH.Beta
# 確認
PS > winget show Microsoft.OpenSSH.Beta
見つかりました OpenSSH Beta [Microsoft.OpenSSH.Beta]
バージョン: 9.5.0.0
公開元: Microsoft Corporation
インストール先は C:\Program Files\OpenSSH
なので、これをシステム環境変数に設定する。そのあと ssh -V
にてバージョンを確認する。
(もともとのsshは C:\Windows\System32\OpenSSH\ssh.exe
にあるが、システム環境変数から除外しなくても、また ssh.exe
自体を削除しなくてもうまく動くみたい)
Discussion