Executando o sshd no cygwin: “/ var / empty deve ser de propriedade de root…”

2

Eu instalei o OpenSSH no meu sistema Windows 7 para poder tunelar meu VNC na minha máquina Arch. No entanto, quando executo /usr/sbin/sshd -D na máquina W7, recebo o erro: /var/empty must be owned by root and not group or world-writable.

Esta é a saída do ls -All /var :

$ ls -All /var
total 0
drwxr-xr-x+ 1 {my_usrnm} None           0 Jul 15 21:39 cache
drw-------+ 1 cyg_server Administrators 0 Jul 15 21:43 empty
drwxr-xr-x+ 1 {my_usrnm} None           0 Jul 15 21:39 lib
drwxrwxrwt+ 1 {my_usrnm} None           0 Jul 15 21:45 log
drwxrwxrwt+ 1 {my_usrnm} None           0 Jul 15 23:36 run
drwxrwxrwt+ 1 {my_usrnm} None           0 Jul 15 21:39 tmp

Eu tentei algumas correções de permissões, reiniciei e reinstalei o OpenSSH (executando ssh-host-config ) pelo menos 10 vezes, mas nada corrigiu isso.

Como corrijo esse erro? Obrigado!

    
por ZuluDeltaNiner 16.07.2016 / 08:43

1 resposta

0

O proprietário e a permissão do diretório estão corretos. Durante a configuração, use a opção PrivilegeSeparation.

Comece o demônio como serviço

cygrunsrv -S sshd

Exemplo de permissão de diretório em um sistema funcional

$ icacls $(cygpath -w /var/empty)
E:\cygwin64\var\empty NULL SID:(DENY)(Rc,S,REA,X,DC)
                      MATZERI\cyg_server:(F)
                      BUILTIN\Administrators:(RX)
                      NT AUTHORITY\SYSTEM:(RX)
                      BUILTIN\Administrators:(RX)
                      Everyone:(RX)
                      CREATOR OWNER:(OI)(CI)(IO)(F)
                      CREATOR GROUP:(OI)(CI)(IO)(RX)
                      Everyone:(OI)(CI)(IO)(RX)

Successfully processed 1 files; Failed processing 0 files

Eles são relatados da maneira do cygwin como

$ getfacl /var/empty
# file: /var/empty
# owner: cyg_server
# group: Administrators
user::rwx
group::r-x
group:SYSTEM:r-x
group:Administrators:r-x
mask:r-x
other:r-x
default:user::rwx
default:group::r-x
default:other:r-x

Se houver permissão extra da ACL, o uso de setfacl -b /var/empty/ poderá ser útil.

    
por 16.07.2016 / 16:46

Tags