Windows 10でのcygwinでのsshの実行は、長年の安定したログインの後、最近失敗し始めました。 Xwindowsのminttyでのsshからの関連出力:
% ssh -tt -vvv <user@Host>
debug3: Failed to open file:C:\\ProgramData\\ssh/ssh_known_hosts error:2
debug3: Failed to open file:C:\\ProgramData\\ssh/ssh_known_hosts2 error:2
debug3: failed to open file:/dev/tty error:3
debug1: read_passphrase: can't open /dev/tty: No such file or directory
debug3: spawning /usr/X11R6/bin/ssh-askpass
CreateProcessW failed error:2
ssh_askpass: posix_spawn: No such file or directory
Host key verification failed.
特別なファイル/ dev/ttyがあります:
% ls -la /dev/tty
crw-rw-rw- 1 jpmattia None 5, 0 May 22 15:04 /dev/tty
Cygwinを更新して、すべてのバイナリが最新であることを確認しました。また、ウィンドウは今週初めに更新されました。
私は何が起こっているのかについて少し困惑しています。手がかりはありがたく受け入れました。
他の誰かが問題を抱えている場合の私の解決策の文書化:OpenSSHのWindowsバージョンが2018年春のアップデートで導入されたようで、Cygwinのsshの代わりに呼び出されています。 (例 https://www.zdnet.com/article/openssh-arrives-in-windows-10-spring-update/ を参照)
% which ssh
/cygdrive/c/WINDOWS/System32/OpenSSH/ssh
Sshで突然問題が発生する理由は、cygwin PATHに/ usr/bin /よりも前に/ cygdrive/c/WINDOWS/System32があるためです。または、少なくとも、私はそうしました。
したがって、この問題は/ usr/bin/sshを明示的に呼び出すことで解決されます。 (PATHを並べ替えることも可能な解決策ですが、私の環境ではできません。)
Cygwinの新規インストールで同じ問題が発生する場合は、インストールの一部としてopensshパッケージを選択してください。
SshクライアントにはWindows 10のみが付属しており、cygwin端末ではなくcmd.exeを介してのみ使用できます。