(与这个问题有关)
在 Windows 上使用 sshd 服务器(Win32-OpenSSH)时(使用基于密钥的身份验证进行自动化),除非它具有 STDIN(或 PTY),否则它不起作用。例如,运行这个(从 Debian Jessie openssh 客户端)可以正常工作(返回 windows 用户名):
ssh -4 -T -o Batchmode=yes winserver whoami
但是,这两个没有(它们只是在不执行命令且不返回任何输出的情况下终止):
ssh -4 -T -o Batchmode=yes winserver whoami < /dev/null
ssh -4 -n -T -o Batchmode=yes winserver whoami
这会带来问题,因为无法从没有打开 STDIN 的程序(如cron(8)或atd(8))运行非交互式 ssh 命令。
当使用 Debian openssh 服务器时,它当然可以正常工作。问题只发生在 windows ssh 服务器上(Win32-OpenSSH和FreeSSHD失败。但是Bitvise SSHD似乎工作正常,但我们正在寻找 windows ssh 服务器的免费解决方案;开源、简单和维护是奖励)
这已经被报道了,但是在此期间有人有解决方案或解决方法吗?