O que é Secure Channel?

Olá Pessoal!

Este é mais um post escrito em parceria com o Grupo MTI, Aproveitem!!

Artigo escrito por Fernando Silva

O que é Secure Channel?

Em um ambiente Active Directory, para que a comunicação entre estação de trabalho (requester) e Domain Controller ocorra de forma segura e confiável, é necessário que exista um canal de comunicação criptografado entre estes dois pontos de forma a garantir que os dados transitados nesta comunicação não estejam vulneráveis na rede publica, sob o risco de interceptação. Esta é a definição do modelo de Secure Channel entre clientes e domain controllers, e sua existência fundamental no processo de autenticação de usuários.

O canal criptografado que permite a comunicação entre domain cotrollers do mesmo domínio, ou de domínios onde existe relação de confiança é outro exemplo de Secure Channel.

Como funciona o Secure Channel?

Durante o processo de adição de um computador ao domínio Active Directory, um objeto computador é criado para representar este computador na estrutura lógica do Active Directory. Também durante este processo, o computador adicionado irá criar automaticamente uma senha e sincronizar a mesma com o objeto computador criado no AD, permitindo assim que o Secure Channel seja estabelecido, permitindo assim que transição de dados durante a autenticação de usuário ocorra de forma segura.

Esta senha criada pelo computador e sincronizada com o AD tem o tempo de vida padrão de 30 dias, sendo alterada automaticamente pelo computador após este período, e então sincronizado com o AD novamente. A senha do computador presente no AD não tem tempo de vida, mas uma vez que as senhas relacionadas sejam diferentes, o secure channel não é estabelecido. É função do computador alterar e atualizar esta senha junto ao AD.

Durante o processo de boot, antes da autenticação do usuário, é função do serviço NETLOGON estabelecer o Secure Channel entre a estação e o domain controller, com base na senha compartilhada.

Quando o secure channel não pode ser estabelecido devido a diferença de senhas de computador, ou qualquer outro problema, é comum que a seguinte mensagem seja retornada durante a autenticação de usuários:

Chamamos este tipo de situação de “quebra de Secure Channel“.

Abaixo podemos ver o processo de criação do secure channel de forma resumida:

· O serviço NETLOGON do cliente contacta o Domain controller solicitando estabelecer o Secure Channel, através da operação “trServerReqChallanger()” .

 

· O Domain controller recebe a solicitação, e retorna seu OK para o cliente:

 

· No próximo passo, ambos o cliente e Domain controller geram chaves de sessão com base na senha de computador existente em suas respectivas bases:

 

·

· Através do metodo NetrServerAuthenticate3() o cliente envia uma nova solicitação de autenticação ao Domain Controller, desta vez contendo a session key gerada, que será validada pelo DC.

 

· Após o DC receber a Session key do cliente, a mesma é validada, e o Domain Controller então confirma se o Secure Channel pode ser estabelecida ou não. Caso o retorno da validação seja positivo, o Secure channel é estabelecido.

 

Imagens cedidas de: http://social.technet.microsoft.com/wiki/contents/articles/24644.detailed-concepts-secure-channel-explained.aspx

Os comandos a seguir validam o secure Channel estabelecido entre estações de trabalho e Domain controllers:

Power Shell: test-computerSecureChannel

CMD: nltest /sc_verify:domainname

Reestabelecendo o Secure Channel

Caso por alguma razão a senha de máquina entre estação e DC seja divergente, o Secure Channel não será estabelecido, e a mensagem de erro “the trust relationship between this workstation and the primary domain failed” pode ser exibida durante tentativas de autenticação, entre outros problemas.

Neste caso, os passos a seguir podem auxiliar a corrigir este problema:

· Remover o computador do domínio, e adicionar novamente

· Execução do comando “Reset-ComputerMachinePassword”

Caso o computador afetado seja um domain controller, o processo muda um pouco:

1. Configure o serviço de KDC para ser iniciado manualmente

2. Reinicie o servidor para remover todo o cache e dados da estrutura Kerberos

3. Após reiniciar, execute o comando: resetpwd /s:PDC Name /userd:DomainUser /password:Password (onde PDC é o nome do servidor que detém a FSMO de PDC)

4. Reinicie a máquina, inicie o serviço de KDC e altere-o para ser iniciado automaticamente.

Referências:

· The trust relationship between this workstation and the primary domain failed” error when you log on to a computer that is running Windows 7 – https://support.microsoft.com/en-us/kb/2771040

· Reset-ComputerMachinePassword – https://technet.microsoft.com/en-us/library/hh849751.aspx

· Detailed Concepts: Secure Channel Explained – http://social.technet.microsoft.com/wiki/contents/articles/24644.detailed-concepts-secure-channel-explained.aspx

Typical Symptoms when secure channel is broken – https://blogs.technet.microsoft.com/asiasupp/2007/01/17/typical-symptoms-when-secure-channel-is-broken/

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s