Por que processo sendo executado como Sistema Local acessando um compartilhamento UNC sendo visto como NT AUTHORITY \ ANONYMOUS LOGON?

2

Eu tenho um serviço do Windows em execução como sistema local em SERVER_X que está tentando acessar um script em um compartilhamento UNC hospedado em SERVER_Y.

Pelos links abaixo, concedi a conta de computador do acesso SERVER_X ao UNC em SERVER_Y.

Como conceder acesso à rede à conta LocalSystem?

Como faço para conceder acesso à pasta compartilhada para a conta SYSTEM local na rede de domínio

Mas o serviço do Windows não consegue acessar o arquivo (acesso negado).

dir \SERVER_X\share
Access is denied.

No log de eventos de segurança (em SERVER_Y), vejo que SERVER_X está tentando acessar o compartilhamento UNC como NT AUTHORITY \ ANONYMOUS LOGON. Eu acho que deveria ver a conta do computador (ou seja, DOMAIN \ SERVER_X) no log de eventos de segurança.

Ambos os servidores são o Windows Server 2003 SE SP2.

Qualquer ajuda seria muito apreciada!

    
por Jesse 13.01.2015 / 19:32

3 respostas

2

Eu encontrei este Blog da Microsoft que me levou a usar o nome do host do servidor vs. CNAME.

Especificamente, os snippets abaixo:

If you answered DNS name resolution you would be correct. If name resolution is not working properly in the environment it will cause the application requesting a Kerberos ticket to actually request a Service ticket for the wrong service principal name. So if you remember the remote file server I am attempting to connect to “ltwre-chd-mem1.chd.litwareinc.com”, however the DNS Server found a record for “ltwre-chd-mem1.litware.com”. Since we found the remote file server in the “litwareinc.com” domain the Kerberos client requests a service ticket for “cifs/ltwre-chd-mem1.litwareinc.com” as noted in the Kerberos ticket request, and the KDC responds with KRB5KDC_ERR_S_PRINCIPAL_UNKNOWN.

E ...

Actually, there are several different ways to “fix” the problem:

a. Find out why DNS is resolving the machine name incorrectly.

i. Is there a HOST or CNAME record for this name?

ii. Did you configure the DNS Zone for WINS lookup?

E ...

If you find that fixing the DNS problem is not possible, then the next best solution would be to make the application use the FQDN of the server. Keep in mind that the application vendor would need to be involved to use this fix.

Observação: Quando em um host do Windows Server 2008 eu pude executar o comando dir usando o CNAME com êxito.

SOLUÇÃO 1:

Use o nome do host em vez de CNAME.

Verifiquei se, em um host do Windows Server 2003, acessei o compartilhamento UNC com o nome do host (ou seja, \HOSTNAME\share ) em vez do CNAME (ou seja, \CNAME\share ), o acesso funcionaria bem.

Exemplo - WORKED:

dir \HOSTNAME\share

Exemplo - NÃO TRABALHOU:

dir \CNAME\share
Access is denied.

SOLUÇÃO 2:

Defina um SPN (nome principal de serviço) para o CNAME.

setspn -a HOST/CNAME SERVER

Depois de fazer isso, o dir \CNAME\share funcionou.

Veja também Como configurar Windows Machine para permitir o compartilhamento de arquivos com alias de DNS para obter mais informações.

    
por 14.01.2015 / 21:33
0

Porque quando você acessa um compartilhamento UNC sem credenciais de rede previamente estabelecidas, você acaba sendo anônimo. A conta SYSTEM local obviamente não é um login de rede válido.

    
por 13.01.2015 / 19:53
0

Execute o serviço em uma conta de usuário para ignorar o problema.

    
por 13.01.2015 / 19:56