Cygwin Openssh无法看到/ etc / sshd_config

时间:2012-09-07 13:36:10

标签: permissions ssh cygwin openssh

我无法让openssh服务器在Windows Server 2008上运行。我让它在其他两台服务器上工作,但其中一台服务器无法工作。

我运行ssh-host-config,然后选择权限分离。创建了两个用户sshdsshd_server

然后我运行net start sshd,我看到了:

The CYGWIN sshd service is starting.
The CYGWIN sshd service could not be started.

The service did not report an error.

然后我运行cat /var/log/sshd.log,我看到了这个输出:

/etc/sshd_config: No such file or directory

然后我检查/etc/sshd_config的权限:

-rw-r--r-- 1 sshd_server root 3344 Sep   7 09:15 /etc/sshd_config

所以现在,似乎sshd无法看到存在且具有正确权限的文件。即使在Windows上,该文件也归sshd_server所有。

1 个答案:

答案 0 :(得分:2)

也发生了这种情况。  一个Procmon会话向我透露,sshd服务试图在根目录c:\ etc而不是c:\ cygwin \ etc中找到/ etc。

进一步的调查显示,sshd正在加载一个不正确的cygwin1.dll,它存在于我的系统PATH环境变量中。

解决方案是要么删除坏的cygwin1.dll,要么从系统变量中删除“坏”路径,并将该路径分配给用户特定的环境变量。

然后在没有这条“坏”路径的专用用户下运行sshd守护进程。

谢谢标记