You need to make sure only the cyg_server user can access those keys.
chown cyg_server /etc/ssh*
chmod 600 /etc/ssh*
Those commands do just that, and will allow your sshd to run correctly.
Pergunta
I want to use cygwin to install sshd in windows. But when I start the sshd service, it says:
The CYGWIN sshd service is starting.
The CYGWIN sshd service could not be started.
The service did not report an error.
More help is available by typing NET HELPMSG 3534.
And the sshd.log
says:
Permissions 0660 for '/etc/ssh_host_dsa_key' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
bad permissions: ignore key: /etc/ssh_host_dsa_key
Could not load host key: /etc/ssh_host_dsa_key
So how to deal with it?
Solução
You need to make sure only the cyg_server user can access those keys.
chown cyg_server /etc/ssh*
chmod 600 /etc/ssh*
Those commands do just that, and will allow your sshd to run correctly.
Outras dicas
My /var/log/sshd.log had this in the end:
Disabling protocol version 2. Could not load host key
sshd: no hostkeys available -- exiting.
/var/empty must be owned by root and not group or world-writable.
/var/empty must be owned by root and not group or world-writable.
/var/empty must be owned by root and not group or world-writable.
/var/empty must be owned by root and not group or world-writable.
Looking at /var i saw this:
$ ls /var -All
total 0
drwxrwxr-x+ 1 xxxx None 0 Dec 8 15:59 cache
drwxrwxr-x+ 1 cyg_server root 0 Dec 8 16:21 empty
drwxrwxr-x+ 1 xxxx None 0 Dec 8 15:58 lib
drwxrwxrwx+ 1 xxxx None 0 Dec 8 16:27 log
drwxrwxrwx+ 1 xxxx None 0 Dec 8 15:48 run
drwxrwxrwt+ 1 xxxx None 0 Dec 8 15:48 tmp
So i just did chmod 600 /var/empty
and that fixed it!