Usando a segurança de domínio: Configurando TLS mútuo
Aplica-se a: Exchange Server 2010 SP2, Exchange Server 2010 SP3
Tópico modificado em: 2009-12-07
Este tópico explica como usar o protocolo TLS mútuo para Segurança de Domínio, o conjunto de funcionalidades contido no Microsoft Exchange Server 2010 e no Microsoft Office Outlook 2007 que é uma alternativa relativamente barata para o S/MIME e outras soluções de segurança no nível de mensagens.
Para exemplificar esse cenário, este tópico explica como os administradores do Exchange, em uma empresa fictícia, Contoso, configuram o ambiente do Exchange 2010 para trocar emails de domínio seguro com seu parceiro, o Woodgrove Bank. Os administradores da Contoso querem garantir que todos os emails enviados e recebidos do Woodgrove Bank estejam protegidos com o protocolo TLS mútuo. Além disso, eles querem configurar a funcionalidade de Segurança de Domínio, de forma que todas as mensagens enviadas para o Woodgrove Bank e dele recebidas sejam rejeitadas se o protocolo TLS mútuo não puder ser usado.
A Contoso tem uma PKI (infra-estrutura de chave pública) interna que gera certificados. O certificado raiz da PKI foi assinado por uma CA (autoridade de certificação) principal de terceiros. O Woodgrove Bank usa a mesma CA para gerar seus certificados. Portanto, a Contoso e o Woodgrove Bank confiam nas CAs raiz um do outro.
Para configurar o TLS mútuo, os administradores do Exchange na Contoso executam os procedimentos a seguir:
Etapa 1: Gerar uma solicitação de certificado para certificados TLS
Etapa 2: Importar certificados para servidores de Transporte de Borda
Etapa 3: Configurar a segurança de domínio de saída
Etapa 4: Configurar a segurança de domínio de entrada
Etapa 5: Testando o fluxo de mensagens de domínio seguro
Pré-requisitos
Este tópico pressupõe que você tenha lido e compreendido Gerar solicitação para serviços de certificado de terceiros.
O serviço Microsoft Exchange EdgeSync deve ser totalmente implantado para Segurança de Domínio. Em geral, as alterações de configuração feitas na funcionalidade de Segurança de Domínio que não usam cmdlets ExchangeCertificate devem ser feitas dentro da organização e sincronizadas nos servidores de Transporte de Borda por meio do serviço Microsoft Exchange EdgeSync.
Para executar com êxito o TLS mútuo em um servidor de Transporte de Borda, é preciso configurar o ambiente do computador e PKI de forma que a validação de certificado e a verificação da lista de certificados revogados fiquem operáveis. Para obter mais informações, consulte Usando PKI no servidor de transporte de borda para a segurança de domínio.
Embora as etapas de configuração individuais nesse cenário possam ser executadas com menos direitos, para concluir todas as tarefas do cenário de ponta a ponta, sua conta precisa ser membro do grupo de funções de gerenciamento Gerenciamento da Organização.
Etapa 1: Gerar uma solicitação de certificado para certificados TLS
A Contoso tem uma PKI interna subordinada a uma CA de terceiros. Nesse cenário, a subordinação refere-se ao fato de que a CA implantada pela Contoso em sua infraestrutura corporativa contém um certificado raiz que foi assinado por uma CA pública de terceiros. Por padrão, a CA pública é um dos certificados raiz confiáveis no armazenamento de certificados do Microsoft Windows. Portanto, qualquer cliente que inclua a mesma CA de terceiros em seu armazenamento raiz confiável e que se conecte à Contoso pode ser autenticada com o certificado apresentado pela Contoso.
A Contoso possui dois servidores de Tranporte de Borda que exigem certificados TLS: mail1.contoso.com e mail2.mail.contoso.com. Portanto, o administrador de email da Contoso deve gerar duas solicitações de certificado, uma para cada servidor.
O exemplo a seguir mostra os comandos que o administrador usa para gerar solicitações de certificado PKCS#10 codificadas em base 64.
O administrador da Contoso deve executar este comando para CN=mail1.contoso.com.
$Data1 = New-ExchangeCertificate -GenerateRequest -FriendlyName "Internet certificate for mail1" -SubjectName "DC=com,DC=Contoso,CN=mail1.contoso.com" -DomainName mail.contoso.com
Set-Content -Path "C:\Certificates\mail1-request.req" -Value $Data1
O administrador da Contoso deve executar este comando para CN=mail2.mail.contoso.com.
$Data2 = New-ExchangeCertificate -GenerateRequest -FriendlyName "Internet certificate for mail2" -SubjectName "DC=com,DC=Contoso,CN=mail2.mail.contoso.com" -DomainName mail.contoso.com
Set-Content -Path "C:\Certificates\mail2-request.req" -Value $Data2
Para obter informações detalhadas de sintaxes e de parâmetros, consulte New-ExchangeCertificate.
Importante
Os detalhes específicos do certificado ou da solicitação de certificado que você cria dependem de muitas variáveis. Se você estiver gerando uma solicitação, trabalhe em contato direto com o administrador de CA ou de PKI que emitirá o certificado. Para obter mais informações sobre como criar uma solicitação de certificado para TLS, consulte Gerar solicitação para serviços de certificado de terceiros.
Voltar ao início
Etapa 2: Importar certificados para servidores de Transporte de Borda
Depois de o administrador de CA da Contoso gerar as solicitações de certificado, ele utilizará as solicitações para gerar os certificados para os servidores. Os certificados resultantes devem ser emitidos como um certificado único ou uma cadeia de certificados e devem ser copiados para os servidores de Transporte de Borda apropriados.
Importante
Não use o snap-in Gerenciador de Certificados no MMC para importar os certificados para protocolo TLS no servidor do Exchange. Usar o snap-in Gerenciador de Certificados para importar certificados em servidores do Exchange não unirá a solicitação criada neste procedimento ao certificado emitido. Portanto, o TLS pode falhar. Você pode usar o snap-in Gerenciador de Certificados para importar os certificados e as chaves armazenadas como arquivos .pfx no repositório de computador local.
Ao importar o certificado para o servidor de Transporte de Borda, também é preciso habilitá-lo para o serviço SMTP. O administrador da Contoso executa o seguinte comando em cada servidor de Transporte de Borda, uma vez para cada certificado respectivo.
Import-ExchangeCertificate -FileData ([Byte[]]$(Get-Content -Path C:\Certificates\mail1-certificate.pfx -Encoding Byte -ReadCount 0)) | Enable-ExchangeCertificate -Services SMTP
O exemplo anterior importa e habilita o certificado de protocolo TLS, canalizando o certificado para o cmdlet Enable-ExchangeCertificate. Você também pode habilitar o certificado depois de importá-lo. Se isso for feito, será preciso especificar a impressão digital do certificado que deseja habilitar.
Para obter informações detalhadas sobre sintaxe e parâmetro, consulte os tópicos Import-ExchangeCertificate e Enable-ExchangeCertificate.
Transportando certificados e chaves relacionadas
Ao receber um certificado do seu provedor de CA ou de PKI, converta o certificado emitido em um arquivo .pfx (PKCS#12), para que possa fazer backup dele como parte de uma contingência de desastre. Um arquivo .pfx contém o certificado e as chaves relacionadas. Em alguns casos, você pode desejar transportar o certificado e as chaves para movê-los para outros computadores. Por exemplo, se você tiver vários servidores de Transporte de Borda em que espera enviar e receber emails que sejam de domínio seguro, poderá criar um único certificado que funcionará em todos os servidores. Nesse caso, você deve ter o certificado importado e habilitado para TLS em cada servidor de Transporte de Borda.
Enquanto você mantiver uma cópia do arquivo .pfx arquivada com segurança, poderá sempre importar e habilitar o certificado. O arquivo .pfx contém a chave privada, portanto é importante proteger fisicamente o arquivo, mantendo-o em mídia de armazenamento em um local seguro.
É importante compreender que o cmdlet Import-ExchangeCertificate sempre marca a chave particular importada do arquivo .pfx como não exportável. Essa funcionalidade é devida ao design.
Ao usar o snap-in Gerenciador de Certificados no MMC para importar um arquivo .pfx, você pode especificar a capacidade de exportação da chave particular e a proteção de chaves.
Importante
Não habilite a proteção de chaves em certificados destinados ao TLS. A proteção de chaves solicita ao usuário sempre que uma chave particular é acessada. Com Segurança de Domínio, o usuário é o serviço SMTP no servidor de Transporte de Borda.
Voltar ao início
Etapa 3: Configurar a segurança de domínio de saída
É necessário executar três etapas para configurar a Segurança de Domínio de saída:
Execute o cmdlet Set-TransportConfig para especificar o domínio com o qual você deseja enviar emails de domínio seguro.
Execute o cmdlet Set-SendConnector para definir a propriedade DomainSecureEnabled no conector de envio que enviará mensagens para o domínio com o qual você deseja enviar emails de domínio seguro.
Execute o cmdlet Get-SendConnector para verificar o seguinte:
Se o conector de envio que enviará mensagens ao domínio com o qual você deseja enviar emails de domínio seguro roteia mensagens com DNS (Sistema de Nome de Domínio).
Se o FQDN está definido para corresponder o Nome de Assunto ou o Nome Alternativo de Assunto dos certificados sendo usados para Segurança de Domínio.
Como as alterações que você faz nessas três etapas são globais, você deve realizá-las em um servidor Exchange interno. As alterações de configuração realizadas serão replicadas nos servidores de Transporte de Borda por meio do serviço Microsoft Exchange EdgeSync.
Etapa 3a: Especificar o domínio do remetente na configuração de transporte
É relativamente simples especificar o domínio com o qual você deseja enviar emails de domínio seguro. O administrador da Contoso executa o seguinte comando em um servidor do Exchange 2010 interno.
Set-TransportConfig -TLSSendDomainSecureList woodgrovebank.com
O parâmetro TLSSendDomainSecureList aceita uma lista com vários valores de nomes de domínio. O comando Set-TransportConfig substitui todo o valor de TLSSendDomainSecureList pelo novo valor fornecido no cmdlet. Por isso, se você tiver outros domínios já configurados e quiser adicionar um novo domínio, será preciso incluir o domínio existente na lista ou sar uma variável temporária. O seguinte exemplo mostra como adicionar o domínio woodgrovebank.com ao parâmetro TLSSendDomainSecureList sem substituir nenhum valor existente.
$TransportConfig = Get-TransportConfig
$TransportConfig.TLSSendDomainSecureList += "woodgrovebank.com"
Set-TransportConfig -TLSSendDomainSecureList $TransportConfig.TLSSendDomainSecureList
Para obter informações detalhadas de sintaxes e de parâmetros, consulte Set-TransportConfig.
Etapa 3b: Configurar o conector de envio padrão
A Contoso usará seu conector de envio de rota DNS padrão denominado Internet para enviar emails de domínio seguro aos seus parceiros. Como o conector de envio de rota DNS padrão é um conector de envio de Internet padrão, ele usa DNS para rotear mensagens e não usa um host inteligente. O FQDN já está definido como mail.contoso.com
. Como os certificados que o administrador da Contoso criou definem o parâmetro DomainName de New-ExchangeCertificate como mail.contoso.com
, o conector de envio pode usá-los sem configurações adicional.
Se você tiver configurado um subdomínio para teste, será preciso atualizar o FQDN do conector de envio para corresponder ao certificado criado (por exemplo, subdomain.mail.contoso.com). Por outro lado, se você tiver criado um certificado que contém o subdomínio nos campos Assunto e Nome de Assunto Alternativo, não será preciso atualizar o FQDN do conector de envio.
Portanto, a única configuração que o administrador da Contoso deve realizar no conector de envio é definir o parâmetro DomainSecureEnabled. Para fazer isso, ele executa o seguinte comando em um servidor do Exchange 2010 interno para o conector de envio de Internet.
Set-SendConnector Internet -DomainSecureEnabled:$true
Para obter informações detalhadas de sintaxes e de parâmetros, consulte Set-SendConnector.
Etapa 3 c: Verificar a configuração do conector de envio
Após concluir as alterações de configuração, o administrador da Contoso precisa verificar se o conector de envio sendo usado para a Segurança de Domínio está configurado corretamente. Para fazer isso, o administrador da Contoso precisa executar o comando a seguir.
Get-SendConnector Internet | Format-List Name,DNSRoutingEnabled,FQDN,DomainSecureEnabled
Esse comando listará os parâmetros relevantes configurados para Segurança de Domínio, permitindo que o administrador da Contoso verifique a configuração.
Para obter informações detalhadas de sintaxes e de parâmetros, consulte Get-SendConnector.
Voltar ao início
Etapa 4: Configurar a segurança de domínio de entrada
É necessário executar duas etapas para habilitar a Segurança de Domínio de entrada:
Execute o cmdlet Set-TransportConfig para especificar o domínio do qual você deseja receber emails de domínio seguro.
No servidor de Transporte de Borda, use o Shell de Gerenciamento do Exchange ou o Console de Gerenciamento do Exchange (EMC) para habilitar a Segurança de Domínio no conector de recebimento do qual você deseja receber emails de domínio seguro. Como a Segurança de Domínio requer autenticação de TLS mútua, também é necessário habilitar TLS no conector de recebimento.
Etapa 4a: Especificar o domínio de recebimento na configuração de transporte
É relativamente simples especificar o domínio com o qual você deseja receber emails de domínio seguro. Para especificar o domínio, o administrador da Contoso executa o seguinte comando no Shell em um servidor do Exchange 2010 interno ou uma estação de trabalho de gerenciamento:
Set-TransportConfig -TLSReceiveDomainSecureList woodgrovebank.com
O parâmetro TLSReceiveDomainSecureList aceita uma lista com vários valores de nomes de domínio. O comando Set-TransportConfig substitui todo o valor do parâmetro TLSReceiveDomainSecureList pelo novo valor fornecido pelo cmdlet Set-TransportConfig. Por isso, se você tiver outros domínios já configurados e quiser adicionar um novo domínio, será preciso incluir o domínio existente na lista ou sar uma variável temporária. O seguinte exemplo mostra como adicionar o domínio woodgrovebank.com ao parâmetro TLSReceiveDomainSecureList sem substituir nenhum valor existente.
$TransportConfig = Get-TransportConfig
$TransportConfig.TLSReceiveDomainSecureList += "woodgrovebank.com"
Set-TransportConfig -TLSReceiveDomainSecureList $TransportConfig.TLSReceiveDomainSecureList
Para obter informações detalhadas de sintaxes e de parâmetros, consulte Set-TransportConfig.
Etapa 4b: Configurar o conector de recebimento
É necessário configurar o conector de recebimento em cada servidor de Transporte de Borda que aceite mensagens do domínio do qual você deseja receber emails de domínio seguro. O ambiente da Contoso é configurado para ter um único conector de recebimento de Internet com um valor de parâmetro Identity de Internet em ambos os servidores de Transporte de Borda. Portanto, para habilitar o TLS, enquanto as mensagens são enviadas ou recebidas do Woodgrove Bank, o administrador da Contoso deve certificar-se de que o TLS esteja habilitado no conector de recebimento de Internet padrão em ambos os servidores de Transporte de Borda. Para fazer isso, o administrador da Contoso executa o seguinte comando em mail1.contoso.com e mail2.mail.contoso.com.
Set-ReceiveConnector Internet -DomainSecureEnabled $true -AuthMechanism TLS
Para obter informações detalhadas de sintaxes e de parâmetros, consulte Set-ReceiveConnector.
Você pode também usar o EMC para configurar o conector de recebimento usando as seguintes etapas.
No servidor de Transporte de Borda, abra o EMC, clique em Transporte de Borda e, no painel de resultados, clique na guia Conectores de Recebimento.
Selecione o conector de recebimento que aceita mensagens do domínio do qual você deseja receber emails de domínio seguro, o conector Internet nesse caso e, no painel de ações, clique em Propriedades.
Na guia Autenticação, selecione Transport Layer Security (TLS) e Habilitar Segurança de Domínio (TLS de Autenticação Mútua) e clique em OK.
Observe que especificar o mecanismo de autenticação como TLS não forçará o TLS em todas as conexões de entrada.
O TLS será forçado para conexões do Woodgrove Bank pelos seguintes motivos:
O Woodgrove Bank está especificado no cmdlet Set-TransportConfig no parâmetro TLSReceiveDomainSecureList.
O parâmetro DomainSecureEnabled está definido como
$true
no conector de recebimento.
Outros remetentes não listados no parâmetro TLSReceiveDomainSecureList no cmdlet Set-TransportConfig só usarão o protocolo TLS se houver suporte no sistema de envio.
Voltar ao início
Etapa 5: Testando o fluxo de mensagens de domínio seguro
Depois de configurar os emails de domínio seguro, você poderá testar a conexão, analisando os logs de desempenho e os logs de protocolo. As mensagens autenticadas com êxito no caminho do fluxo de mensagens de domínio seguro são exibidas no Outlook como mensagens de Domínio Seguro.
Contadores de desempenho
O recurso de Segurança de Domínio inclui o seguinte conjunto de contadores de desempenho em Transporte de Email Seguro MSExchange:
Mensagens do Domínio Seguro Recebidas
Mensagens do Domínio Seguro Enviadas
Falhas de Sessões de Saída do Domínio Seguro
Você pode criar um novo arquivo de log do contador para o fluxo de mensagens de domínio seguro com esses contadores de desempenho para monitorar o número de mensagens enviadas e recebidas e as sessões de TLS mútuas com falha. Para obter mais informações sobre como criar e configurar logs de contador, consulte o arquivo de Ajuda incluído no snap-in Logs de desempenho e alertas do MMC.
Logs de protocolo
Você pode analisar os logs de protocolo de envio e recebimento para determinar se a negociação de TLS foi bem-sucedida.
Para exibir logs detalhados de protocolo, você deve definir o nível de log do protocolo como Verbose
nos conectores que sua organização usa para enviar e receber email de domínio seguro. Para fazer isso, o administrador da Contoso executa o seguinte nos dois servidores de Transporte de Borda.
Set-ReceiveConnector Internet -ProtocolLoggingLevel Verbose
Para habilitar o registro em log no conector de Envio, o administrador da Contoso executa o seguinte em um servidor do Exchange interno ou em uma estação de trabalho de gerenciamento. A alteração de configuração é replicada aos servidores de Transporte de Borda com o uso do serviço Microsoft Exchange EdgeSync.
Set-SendConnector Internet -ProtocolLoggingLevel Verbose
Para obter informações detalhadas sobre sintaxe e parâmetro, consulte os tópicos Set-ReceiveConnector e Set-SendConnector.
Para obter mais informações sobre como exibir logs de protocolo, consulte Configurar Log de Protocolo.
Voltar ao início
© 2010 Microsoft Corporation. Todos os direitos reservados.