有没有办法将 OpenSSH 配置为使用非 Windows 帐户进行身份验证?我想创建一种虚拟用户,我可以使用专门创建的凭据登录到我的 Windows SSH 服务器。
这可能吗?我正在使用安装在 Cygwin 中的 OpenSSH,Windows 帐户身份验证工作得非常好。
答案1
不,这不可能。
Cygwin 模仿 Unix 并提供/etc/passwd
和/etc/group
,但请不要误会,Cygwin 需要并使用标准 Windows 用户帐户。/etc/passwd
和/etc/group
的填充反映了这一点。
useradd
Cygwin 中没有。
Cygwin 作为一个类似 Linux 的环境做得很好,但它不是一个操作系统。它使用 Windows 用户/组和标准 Windows 安全模型(请参阅http://cygwin.com/cygwin-ug-net/ntsec.html):
(...) Cygwin 使用 Windows 安全模型来实现类似 POSIX 的权限 (...) Windows 身份验证模型用于允许 cygwin 应用程序以类似 POSIX 的方式切换用户。
例如,在在 Windows 服务器上配置 Cygwin我们可以读到:
创建能够 [使用 CYGWIN sshd] 登录计算机的帐户:
- 首先创建 Windows 帐户。单击开始 > 设置 > 控制面板 > 用户帐户。使每个用户成为管理员组的成员。(...)
这一切都意味着您只能使用 Windows 帐户进行身份验证,也只能使用sshd
。