cygwin sshd 无法为某些用户分配 pty

cygwin sshd 无法为某些用户分配 pty

我(终于)让 sshd 在 Win7 上的 cygwin 下运行了 - 嗯,有点儿像。

sshd 以用户“cyg_server”的身份运行。我能够使用相同的用户名成功 ssh 到我的计算机。

但是,如果我尝试使用我的普通 (Windows) 用户名​​进行 ssh,它会尝试为我的登录会话分配 pty,但失败了。例如,“sshd -D -d -d -d”的输出包含以下内容

debug1: Entering interactive session for SSH2.
debug2: fd 4 setting O_NONBLOCK
debug2: fd 5 setting O_NONBLOCK
debug1: server_init_dispatch_20
debug1: server_input_channel_open: ctype session rchan 0 win 1048576 max 16384
debug1: input_session_request
debug1: channel 0: new [server-session]
debug2: session_new: allocate (allocated 0 max 10)
debug3: session_unused: session id 0 unused
debug1: session_new: session 0
debug1: session_open: channel 0
debug1: session_open: session 0: link with channel 0
debug1: server_input_channel_open: confirm session
debug1: server_input_global_request: rtype [email protected] want_reply 0
debug1: server_input_channel_req: channel 0 request pty-req reply 1
debug1: session_by_channel: session 0 channel 0
debug1: session_input_channel_req: session 0 req pty-req
debug1: Allocating pty.
debug1: session_pty_req: session 0 alloc /dev/pty1

!!! chown(/dev/pty1, 17308, 10513) failed: Invalid argument

debug1: do_cleanup
debug1: session_pty_cleanup: session 0 release /dev/pty1

目前 /dev 由我的普通帐户拥有。我尝试将其所有权更改为 cyg_server 以及 SYSTEM。在这两种情况下,问题仍然存在。我还更改了 /dev 的权限(例如 700 和 777) - 问题仍然存在。

[附注:每当我执行“ls -al /dev”时,pty 都不会显示,这很奇怪。但是,如果我对我知道存在的 pty 执行“ls -l /dev/ptyX”,它就会显示出来。这对于 cygwin 来说正常吗?]

答案1

ssh-host-config删除所有 /etc/ssh* 文件并在以管理员身份打开的 cygwin 窗口中重新运行解决了这个问题,我认为通过更正权限就可以解决。

在让它工作之前我必须做大量的检查和纠正:

  • 密钥/etc/ssh*文件由特权服务器帐户(例如 cyg_server)拥有、读取和写入
  • /dev属于我的(管理员)用户帐户,并且可由管理员、用户和 sshd 用户读写
  • 服务已重启
  • 您已设置环境变量CYGWIN=ntsec

答案2

在通过最初执行“sysprep”克隆原始 Windows VM 后,我遇到了一个奇怪的问题 -
“这会更改计算机的 SID=>所有本地用户的 SID,但 /etc/password 当然保持不变。这导致公钥授权失败,并在 Win' 应用程序事件日志中显示“sshd: fatal: chown(/dev/pty1) failed: Permission denied”消息。

总结运行提升的 Cygwin 控制台(以管理员身份),net stop sshd,执行“mkpasswd -l”并从其输出中替换 /etc/passwd 中的所有本地帐户信息,然后删除 /etc/ssh*、ssh-host-config、net start sshd,这对我来说是解决办法。

相关内容