Tuve este problema y lo resolví.
Inicialmente seguí la respuesta de Константин Брызгалов y pude iniciar sesión con una contraseña, pero no pude hacer funcionar la autenticación de clave pública. (Había creado una cuenta de administrador local cyg_server manualmente).
En una investigación adicional, estaba leyendo esta página y decía que debía evitar tener tanto un dominio como una cuenta local. Lo comprobé y tuve ambos; aparentemente alguien más en mi organización está ejecutando un servidor cygwin y ya había creado un cyg_server en el dominio, que se confundía con mi cuenta local.
Eliminé mi cuenta local de cyg_server, desinstalé el servicio sshd y reinstalé como se describe en esa página, y todo funcionó a la perfección. El truco consistía en decir "no" para usar la cuenta cyg_server existente y decirle a ssh-host-config que creara una cuenta "cyg_server1". Creó una cuenta local y configuró todo correctamente. Específicamente:
- cygrunsrv --stop sshd
- cygrunsrv --remove sshd
- Panel Ctrl> Cuentas de usuario> Cuentas de usuario del administrador> (eliminar cuenta local de cyg_server)
- mkpasswd -l -d> / etc / passwd
- mkgroup -l -d> / etc / group
- ssh-host-config
- sobrescribir = sí
- estricto = sí
- CYGWIN = ntsec
- usuario para ejecutar = cyg_server1
- contraseña = {...}
Al verificar las cuentas de usuario, verá que cyg_server1 es de hecho una cuenta local pero tiene una configuración adicional.