SSH 错误。安装服务时出错:CreateService:Win32 错误 1057

SSH 错误。安装服务时出错:CreateService:Win32 错误 1057

ssh-host-config 不起作用,我在创建 sshd 作为服务时收到此错误。我正在运行安装了 cygwin 的 Windows 7 32 位。

在安装 cygwin 后,它一开始是可以工作的。我执行了几次 ssh-host-config。我想确保更改 ssh 和 sshd 的配置,所以我卸载了。不记得是否有错误。我用这些卸载和重新安装时的说明。

我按照说明进行操作站点,怀疑更改这些目录的权限会搞乱我的系统。在某个地方,不记得在哪里,我看到了一条关于所有权的错误/警告消息,它会搞乱一切。也许这是一个很好的教程,我不知道。

错误如下:

/usr/bin/cygrunsrv: Error installing a service: CreateService:  Win32 error 1057

这是 ssh-host-config:

 ~
$ ssh-host-config -y

*** Query: Overwrite existing /etc/ssh_config file? (yes/no) yes
*** Info: Creating default /etc/ssh_config file
*** Query: Overwrite existing /etc/sshd_config file? (yes/no) yes
*** Info: Creating default /etc/sshd_config file
*** Info: Privilege separation is set to yes by default since OpenSSH 3.3.
*** Info: However, this requires a non-privileged account called 'sshd'.
*** Info: For more info on privilege separation read /usr/share/doc/openssh/README.privsep.
*** Query: Should privilege separation be used? (yes/no) yes
*** Warning: sshd is in /etc/passwd, but the
*** Warning: local machine's SAM does not know about sshd.
*** Warning: Perhaps sshd is a pre-existing domain account.
*** Warning: Continuing, but check if this is ok.
*** Info: Updating /etc/sshd_config file
*** Query: Overwrite existing /etc/inetd.d/sshd-inetd file? (yes/no) yes
*** Info: Creating default /etc/inetd.d/sshd-inetd file
*** Info: Updated /etc/inetd.d/sshd-inetd

*** Query: Do you want to install sshd as a service?
*** Query: (Say "no" if it is already installed as a service) (yes/no) yes
*** Query: Enter the value of CYGWIN for the daemon: []
*** Info: On Windows Server 2003, Windows Vista, and above, the
*** Info: SYSTEM account cannot setuid to other users -- a capability
*** Info: sshd requires.  You need to have or to create a privileged
*** Info: account.  This script will help you do so.

*** Warning: cyg_server is in /etc/passwd, but the local
*** Warning: machine's SAM does not know about cyg_server.
*** Warning: Perhaps cyg_server is a pre-existing domain account.
*** Warning: Continuing, but check if this is ok.
*** Info: You appear to be running Windows XP 64bit, Windows 2003 Server,
*** Info: or later.  On these systems, it's not possible to use the LocalSystem
*** Info: account for services that can change the user id without an
*** Info: explicit password (such as passwordless logins [e.g. public key
*** Info: authentication] via sshd).

*** Info: If you want to enable that functionality, it's required to create
*** Info: a new account with special privileges (unless a similar account
*** Info: already exists). This account is then used to run these special
*** Info: servers.

*** Info: Note that creating a new user requires that the current account
*** Info: have Administrator privileges itself.

*** Info: The following privileged accounts were found: 'cyg_server' .

*** Info: This script plans to use 'cyg_server'.
*** Info: 'cyg_server' will only be used by registered services.
*** Query: Please enter the password for user 'cyg_server':
*** Query: Reenter:
*** Query: Please enter the password for user 'cyg_server':
*** Query: Reenter:

/usr/bin/cygrunsrv: Error installing a service: CreateService:  Win32 error 1057:
The account name is invalid or does not exist, or the password is invalid for the account name specified.

*** ERROR: Installing sshd as a service failed!

*** Warning: Host configuration exited with 1 errors or warnings!
*** Warning: Make sure that all problems reported are fixed,
*** Warning: then re-run ssh-host-config.

我尝试重新安装 openssh 和 cygrunsrv,但没有帮助,仍然出现错误。

如何删除 ssh、sshd 和 cygrunsrv 的所有配置文件?如何让 ssh 安装 sshd 作为服务?有什么想法吗?谢谢 Kristjan

答案1

我按照答案中的说明进行操作线。

摘抄:

For Windows XP.
To remove Cygwin sshd in the cleanest possible way:

Disclaimer

cygrunsrv -E sshd

cygrunsrv -R sshd

delete the folder c:\cygwin and all its sub-folders

remove the Environment Variable CYGWIN

edit the Environment path accordingly

Start...Run... regedit and delete these two registry trees

"HKEY_CURRENT_USER_Software_Cygnus Solutions"

"HKEY_LOCAL_MACHINE_Software_Cygnus Solutions"

Go to Control Panel, Category View, Performance and Maintenance, Administrative Tools, Computer Management.
or click Start...Run...compmgmt.msc
delete the sshd user if it exists in the "System Tools" - "Local Users and Groups" - "Users" section.
EDIT: These steps were originally for XP, and you may need to re-install cygwin afterwards.

清理re-installcygwin

现在它已经可以正常工作了。

相关内容