Usar o DKIM para validar emails enviados de seu domínio personalizado
Dica
Você sabia que pode experimentar os recursos no Microsoft 365 Defender para Office 365 Plano 2 gratuitamente? Use a avaliação de Defender para Office 365 de 90 dias no hub de avaliações do portal Microsoft 365 Defender. Saiba mais sobre quem pode inscrever e testar termos aqui.
Este artigo lista as etapas de uso do DKIM (DomainKeys Identified Mail) com o Microsoft 365 para garantir que os sistemas de email de destino confiem em mensagens enviadas de seu domínio personalizado.
Neste artigo:
- Como o DKIM funciona melhor do que o SPF para evitar a falsificação maliciosa
- Passos para criar, habilitar e desabilitar DKIM do portal Microsoft 365 Defender
- Etapas para atualizar manualmente suas chaves de 1024 bits para chaves de criptografia DKIM de 2048 bits
- Etapas para configurar o DKIM manualmente
- Etapas para configurar o DKIM para mais de um domínio personalizado
- Desabilitar a política de assinatura do DKIM para um domínio personalizado
- Comportamento padrão para o DKIM e o Microsoft 365
- Configurar o DKIM de forma que um serviço terceirizado possa enviar, ou fazer spoof de, emails em nome de seu domínio personalizado
- Próximas etapas: após configurar o DKIM para o Microsoft 365
Observação
O Microsoft 365 configura automaticamente o DKIM para domínios iniciais de “onmicrosoft.com”. Isso significa que não é preciso fazer nada para configurar o DKIM para qualquer nome de domínio inicial (por exemplo, litware.onmicrosoft.com). Para saber mais sobre domínios, confira Perguntas frequentes sobre domínios.
DKIM é um dos três métodos de autenticação (SPF, DKIM e DMARC) que ajudam a evitar que os invasores enviem mensagens que parecem vir de seu domínio.
O DKIM possibilita adicionar uma assinatura digital no cabeçalho de mensagens de email enviadas. Quando você configura o DKIM, autoriza seu domínio a associar ou assinar seu nome a uma mensagem de email usando a autenticação de criptografia. Os sistemas de email que recebem emails do seu domínio podem usar essa assinatura digital para ajudar a verificar se o email de entrada é legítimo.
No básico, uma chave privada criptografa o cabeçalho no email de saída de um domínio. A chave pública é publicada nos registros DNS do domínio, e os servidores de recebimento podem usar essa chave para decodificar a assinatura. A verificação DKIM ajuda os servidores de recebimento a confirmar se o correio está realmente vindo de seu domínio e não de alguém falsificando o domínio.
Dica
Você também pode optar por não fazer nada sobre o DKIM em relação ao seu domínio personalizado. Se o DKIM não for configurado para o seu domínio personalizado, o Microsoft 365 criará um par de chaves privada e pública, habilitará a assinatura do DKIM e configurará a política padrão do Microsoft 365 para o seu domínio personalizado.
A configuração de DKIM interna do Microsoft-365 é cobertura suficiente para a maioria dos clientes. No entanto, você deve configurar manualmente o DKIM para seu domínio personalizado nas seguintes circunstâncias:
- Você tem mais de um domínio personalizado no Microsoft 365
- Você também vai configurar o DMARC (recomendado)
- Quiser ter controle sobre sua chave privada
- Quiser personalizar seus registros CNAME
- Configure as chaves do DKIM para emails provenientes de um domínio de terceiros, por exemplo, se você usar um programa de email em massa terceirizado.
Como o DKIM funciona melhor do que o SPF para evitar a falsificação maliciosa
O SPF adiciona informações a um envelope de mensagem, mas o DKIM criptografa uma assinatura no cabeçalho da mensagem. Ao encaminhar uma mensagem, partes de seu envelope podem ser removidas pelo servidor de encaminhamento. Como a assinatura digital permanece com a mensagem de email porque faz parte do cabeçalho do email, o DKIM funciona mesmo quando uma mensagem é encaminhada conforme mostrado no exemplo a seguir.
Neste exemplo, se você tivesse apenas publicado um registro TXT SPF do seu domínio, o servidor de email do destinatário poderia ter marcado seu email como spam e gerado um resultado positivo falso. A adição de DKIM nesse cenário reduz o relatório de spam falso positivo . Como o DKIM depende de criptografia de chave pública para autenticar, e não apenas de endereços IP, é considerado uma forma muito mais forte de autenticação que o SPF. Recomendamos usar o SPF e o DKIM, bem como o DMARC, em sua implantação.
Dica
O DKIM usa uma chave privada para inserir uma assinatura criptografada nos cabeçalhos de mensagens. A domínio que assina, ou domínio de saída, é inserido como o valor do campo d= no cabeçalho. O domínio que verifica, ou o domínio do destinatário, usa esse campo d= para procurar a chave pública no DNS e autenticar a mensagem. Se a mensagem for verificada, a verificação do DKIM passará.
Etapas para Criar, habilitar e desabilitar o DKIM a partir do portal do Microsoft 365 Defender
Todos os domínios aceitos do seu locatário serão mostrados no portal Microsoft 365 Defender na página DKIM. Se você não o vir, adicione seu domínio aceito a partir da página de domínios. Depois que seu domínio for adicionado, siga as etapas conforme mostrado abaixo para configurar o DKIM.
Etapa 1: Na página DKIM, selecione o domínio que você deseja configurar.
Etapa 2: deslize o botão de alternância para Habilitar. Você verá uma janela pop-up informando que precisa adicionar registros CNAME.
Etapa 3: Copie os CNAMES exibidos na janela de pop-up
Etapa 4: Publique os registros CNAME copiados para seu provedor de serviços de DNS.
No site do seu provedor de DNS, adicione registros CNAME para o DKIM que você deseja habilitar. Verifique se os campos estejam definidos para os seguintes valores para cada:
Record Type: CNAME (Alias)
> Host: Paste the values you copy from DKIM page.
Points to address: Copy the value from DKIM page.
TTL: 3600 (or your provider default)
Etapa 5: retorne à página do DKIM para habilitar o DKIM.
Se você vir que o registro CNAME não possui erro, isso pode ser devido a:
- A sincronização com o servidor DNS, que pode levar de alguns segundos a horas, se o problema persistir, repita novamente as etapas
- Verifique se há erros ao copiar e colar, como espaço ou guias adicionais, etc.
Se você deseja desativar o DKIM, alterne de volta para o modo desabilitado
Etapas para atualizar manualmente suas chaves de 1024 bits para chaves de criptografia DKIM de 2048 bits
Observação
O Microsoft 365 configura automaticamente o DKIM para domínios onmicrosoft.com. Nenhuma etapa é necessária para usar o DKIM para qualquer nome de domínio inicial (como litware. onmicrosoft.com). Para saber mais sobre domínios, confira Perguntas frequentes sobre domínios.
Já que tanto o número de bits 1024 e o 2048 têm suporte para chaves DKIM, estas instruções mostrarão como atualizar sua chave de 1024 para 2048 bits em Exchange Online PowerShell. As etapas abaixo são para dois casos de uso, favor escolher o que melhor se encaixa em sua configuração.
Se você já tiver configurado o DKIM, altere a configuração de bits executando o seguinte comando:
Rotate-DkimSigningConfig -KeySize 2048 -Identity <DkimSigningConfigIdParameter>
ou
Para uma nova implementação de DKIM, execute o seguinte comando:
New-DkimSigningConfig -DomainName <Domain for which config is to be created> -KeySize 2048 -Enabled $true
Mantenha-se conectado ao Exchange Online PowerShell para verificar a configuração executando o seguinte comando:
Get-DkimSigningConfig -Identity <Domain for which the configuration was set> | Format-List
Dica
Essa nova chave de 2048 bits entra em vigor no RotateOnDate e enviará emails com a chave 1024 bits provisoriamente. Após quatro dias, você poderá testar novamente com a chave de 2048 bits (ou seja, quando a rotação entrar em vigor no segundo seletor).
Se você quiser girar para o segundo seletor, após quatro dias e confirmar que a 2048-bitsness está em uso, gire manualmente a segunda chave do seletor usando o cmdlet apropriado listado acima.
Para informações detalhadas de sintaxe e parâmetro, confira os seguintes artigos: Rotate-DkimSigningConfig, New-DkimSigningConfig, e Get-DkimSigningConfig.
Etapas para configurar o DKIM manualmente
Para configurar o DKIM, execute estas etapas:
- Publicar dois registros CNAME para o seu domínio personalizado no DNS
- Habilitar a assinatura DKIM para o seu domínio personalizado
Publicar dois registros CNAME para o seu domínio personalizado no DNS
Para cada domínio para o qual você deseja adicionar uma assinatura de DKIM no DNS, é preciso publicar dois registros CNAME.
Observação
Se você não leu o artigo completo, pode ter perdido esta informação de conexão do PowerShell que economiza tempo: Conectar-se ao Exchange Online PowerShell.
Execute os seguintes comandos no Exchange Online PowerShell para criar os registros do seletor:
New-DkimSigningConfig -DomainName <domain> -Enabled $false
Get-DkimSigningConfig -Identity <domain> | Format-List Selector1CNAME, Selector2CNAME
Se provisionou domínios personalizados além do domínio inicial no Microsoft 365, é necessário publicar dois registros CNAME para cada domínio adicional. Portanto, se tem dois domínios, deve publicar dois registros CNAME no total, e assim por diante.
Use o seguinte formato para os registros CNAME.
Importante
Se você for um dos nossos clientes GCC High, calcularemos customDomainIdentifier diferente! Em vez de pesquisar o registro MX para seu initialDomain para calcular customDomainIdentifier, em vez disso, calculamos isso diretamente do domínio personalizado. Por exemplo, se o domínio personalizado for "contoso.com" seu customDomainIdentifier se tornará "contoso-com", todos os pontos serão substituídos por um traço. Portanto, independentemente de qual MX grave seu initialDomain aponta, você sempre usará o método acima para calcular o customDomainIdentifier para usar em seus registros CNAME.
Host name: selector1._domainkey
Points to address or value: selector1-<customDomainIdentifier>._domainkey.<initialDomain>
TTL: 3600
Host name: selector2._domainkey
Points to address or value: selector2-<customDomainIdentifier>._domainkey.<initialDomain>
TTL: 3600
Onde:
Para o Microsoft 365, os seletores sempre serão "seletor1" ou "seletor2".
customDomainIdentifier é o mesmo que o customDomainIdentifier no registro MX personalizado para seu domínio personalizado que aparece antes de mail.protection.outlook.com. Por exemplo, no seguinte registro MX para o domínio contoso.com, o customDomainIdentifier é contoso-com:
contoso.com. 3600 NO MX 5 contoso-com.mail.protection.outlook.com
O initialDomain foi o domínio usado quando se inscreveu no Microsoft 365. Os domínios iniciais sempre terminam em onmicrosoft.com. Para saber mais sobre como determinar seu domínio inicial, confira Perguntas frequentes sobre domínios.
Por exemplo, se você tiver o domínio inicial cohovineyardandwinery.onmicrosoft.com e dois domínios personalizados, cohovineyard.com e cohowinery.com, precisará configurar dois registros CNAME para cada domínio adicional, totalizando quatro registros CNAME.
Host name: selector1._domainkey
Points to address or value: selector1-cohovineyard-com._domainkey.cohovineyardandwinery.onmicrosoft.com
TTL: 3600
Host name: selector2._domainkey
Points to address or value: selector2-cohovineyard-com._domainkey.cohovineyardandwinery.onmicrosoft.com
TTL: 3600
Host name: selector1._domainkey
Points to address or value: selector1-cohowinery-com._domainkey.cohovineyardandwinery.onmicrosoft.com
TTL: 3600
Host name: selector2._domainkey
Points to address or value: selector2-cohowinery-com._domainkey.cohovineyardandwinery.onmicrosoft.com
TTL: 3600
Observação
É importante criar o segundo registro, mas apenas um dos seletores pode estar disponível no momento da criação. Em essência, o segundo seletor pode apontar para um endereço que ainda não foi criado. Ainda recomendamos que você crie o segundo registro CNAME, pois a rotação de chaves será contínua.
Etapas para habilitar a assinatura DKIM do seu domínio personalizado
Após publicar os registros CNAME no DNS, você está pronto para habilitar a assinatura de DKIM através do Microsoft 365. É possível fazer isso por meio do centro de administração do Microsoft 365 ou usando o PowerShell.
Para habilitar a assinatura DKIM para seu domínio personalizado no Microsoft 365 Defender
No portal do Microsoft 365 Defender em https://security.microsoft.com, acesse políticas de ameaças Email &Políticas>&> de Colaboração >Email Configurações de Autenticação na seção >RegrasDKIM. Para ir diretamente para a página DKIM, use https://security.microsoft.com/dkimv2.
Na página DKIM, selecione o domínio clicando no nome.
No flyout de detalhes exibido, altere as mensagens de sinal para este domínio com a configuração de assinaturas DKIM para Habilitado (
)
Quando terminar, clique em Chaves de rotação DKIM.
Repita essas etapas para cada domínio personalizado.
Se você estiver configurando o DKIM pela primeira vez e vir o erro “Nenhuma chave DKIM salva para este domínio”, será necessário usar o Windows PowerShell para habilitar a assinatura DKIM, conforme explicado na próxima etapa.
Para habilitar a assinatura DKIM para o seu domínio personalizado usando o PowerShell
Importante
Se você estiver configurando o DKIM pela primeira vez e ver o erro 'Nenhuma tecla DKIM salva para esse domínio' conclua o comando na etapa 2 abaixo (por exemplo,
Set-DkimSigningConfig -Identity contoso.com -Enabled $true
) para ver a chave.
Use a seguinte sintaxe:
Set-DkimSigningConfig -Identity <Domain> -Enabled $true
<Domínio> é o nome do domínio personalizado para o qual você deseja habilitar a assinatura do DKIM.
Este exemplo habilita a mensagem DKIM de assinatura para o domínio contoso.com:
Set-DkimSigningConfig -Identity contoso.com -Enabled $true
Para confirmar que a assinatura de DKIM está configurada adequadamente no Microsoft 365
Aguarde alguns minutos antes de prosseguir com essas etapas para confirmar que você configurou o DKIM corretamente. Isso permite que as informações do DKIM sobre o domínio sejam distribuídas por toda a rede.
Envie uma mensagem de uma conta do seu domínio do Microsoft 365 habilitado com DKIM para outra conta de email, como outlook.com ou Hotmail.com.
Não use uma conta aol.com para fins de teste. A AOL pode ignorar a verificação de DKIM se a verificação de SPF passar. Isso anula o teste.
Abra a mensagem e examine o cabeçalho. Instruções para exibir o cabeçalho da mensagem variam dependendo do seu cliente de mensagens. Para obter instruções sobre como exibir cabeçalhos de mensagens no Outlook, consulte Exibir cabeçalhos de mensagens na Internet no Outlook.
A mensagem assinada com DKIM conterá o nome do host e o domínio definidos quando você publicou as entradas CNAME. A mensagem terá uma aparência similar à do exemplo:
From: Example User <example@contoso.com> DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=selector1; d=contoso.com; t=1429912795; h=From:To:Message-ID:Subject:MIME-Version:Content-Type; bh=<body hash>; b=<signed field>;
Procure pelo cabeçalho Authentication-Results. Embora cada serviço receptor use um formato ligeiramente diferente para carimbar as mensagens recebidas, o resultado deve incluir algo parecido com DKIM=pass ou DKIM=OK.
Importante
A assinatura DKIM é omitida em qualquer uma das seguintes condições:
- Os endereços de email do remetente e do destinatário estão no mesmo domínio.
- Os endereços de email do remetente e do destinatário estão em domínios diferentes controlados pela mesma organização.
Em ambos os casos, o cabeçalho será semelhante a este:
Authentication-Results: dkim=none (message not signed) header.d=none;
dmarc=none action=none header.from=<sender_domain>;
Para configurar o DKIM em mais de um domínio personalizado
Se em algum momento no futuro você decidir adicionar outro domínio personalizado e quiser habilitar o DKIM para o novo domínio, deve executar as etapas deste artigo para cada domínio. Especificamente, execute todas as etapas em O que é necessário fazer para configurar manualmente o DKIM.
Desabilitar a política de assinatura do DKIM para um domínio personalizado
Desabilitar a política de assinatura não desabilita completamente o DKIM. Após um período de tempo, Microsoft 365 aplicará automaticamente a política padrão para seu domínio, se a política padrão ainda estiver no estado habilitado. Se você quiser desabilitar completamente o DKIM, será necessário desabilitar o DKIM nos domínios personalizado e padrão. Para saber mais, confira Comportamento padrão do DKIM e do Microsoft 365.
Para desabilitar a política de assinatura do DKIM usando o Windows PowerShell
Execute um dos seguintes comandos para cada domínio para o qual você deseja desabilitar a assinatura de DKIM.
$p = Get-DkimSigningConfig -Identity <Domain> $p[0] | Set-DkimSigningConfig -Enabled $false
Por exemplo:
$p = Get-DkimSigningConfig -Identity contoso.com $p[0] | Set-DkimSigningConfig -Enabled $false
Ou
Set-DkimSigningConfig -Identity $p[<number>].Identity -Enabled $false
Em que o número é o índice da política. Por exemplo:
Set-DkimSigningConfig -Identity $p[0].Identity -Enabled $false
Comportamento padrão do DKIM e do Microsoft 365
Se você não habilitar o DKIM, o Microsoft 365 criará automaticamente uma chave pública DKIM de 2048 bits para o domínio inicial do MOERA (Endereço de Roteamento de Email Online) da Microsoft e a chave privada associada que armazenamos internamente em nosso datacenter. Por padrão, o Microsoft 365 usa uma configuração de assinatura padrão para domínios que não tem uma política aplicada. Isso significa que se você não configurar o DKIM, o Microsoft 365 usará a política e as chaves padrão que ele cria para habilitar o DKIM em seu domínio.
Além disso, se você desabilitar a assinatura DKIM em seu domínio personalizado depois de habilitá-lo, após um período de tempo, o Microsoft 365 aplicará automaticamente a política de domínio MOERA/inicial para seu domínio personalizado.
No exemplo a seguir, suponha que o DKIM de fabrikam.com foi habilitado pelo Microsoft 365, não pelo administrador do domínio. Isso significa que os CNAMEs necessários não existem no DNS. Assinaturas DKIM para email deste domínio terão uma aparência similar a esta:
From: Second Example <second.example@fabrikam.com>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
s=selector1-fabrikam-com; d=contoso.onmicrosoft.com; t=1429912795;
h=From:To:Message-ID:Subject:MIME-Version:Content-Type;
bh=<body hash>;
b=<signed field>;
Neste exemplo, o nome de host e o domínio contêm os valores para os quais o CNAME apontaria se a assinatura de DKIM para fabrikam.com tivesse sido ativada pelo administrador do domínio. Eventualmente, cada mensagem enviada do Microsoft 365 será assinada com DKIM. Se você mesmo habilitar o DKIM, o domínio será o mesmo que o do campo de endereço From:, neste caso fabrikam.com. Caso contrário, os domínios não corresponderão entre si e, em vez disso, será usado o domínio inicial da sua organização. Para saber mais sobre como determinar seu domínio inicial, confira Perguntas frequentes sobre domínios.
Configurar o DKIM de forma que um serviço terceirizado possa enviar, ou fazer falsificar, emails em nome de seu domínio personalizado
Alguns provedores de serviço de email em massa, ou provedores de software como serviço, permitem que você configure as chaves DKIM para o email originado de seu serviço. Isso requer coordenação entre você e o terceiro para configurar os registros DNS necessários. Alguns servidores de terceiros podem ter seus próprios registros CNAME com seletores diferentes. Não há duas organizações que fazem isso exatamente da mesma maneira. Em vez disso, o processo depende totalmente da organização.
Um exemplo de mensagem mostrando um DKIM configurado adequadamente para contoso.com e bulkemailprovider.com pode parecer com este:
Return-Path: <communication@bulkemailprovider.com>
From: <sender@contoso.com>
DKIM-Signature: s=s1024; d=contoso.com
Subject: Here is a message from Bulk Email Provider's infrastructure, but with a DKIM signature authorized by contoso.com
Neste exemplo, para obter este resultado:
O provedor de email em massa deu à Contoso uma chave pública de DKIM.
A Contoso publicou a chave de DKIM em seu registro DNS.
Ao enviar emails, o Provedor de Email em Massa assina a chave com a chave privada correspondente. Ao fazer isso, o Provedor de Email em Massa anexa a assinatura DKIM ao cabeçalho da mensagem.
Sistemas de recebimento de email executam uma verificação de DKIM autenticando o valor DKIM-Signature d=<domínio> em relação ao domínio no campo de endereço From: (5322.From) da mensagem. Neste exemplo, os valores são correspondentes:
remetente@contoso.com
d=contoso.com
Identificar domínios que não enviam email
As organizações devem declarar explicitamente se um domínio não envia email especificando v=DKIM1; p=
estes domínios no registro DKIM. Isto sugere aos servidores receptores de email que não há chaves públicas válidas para o domínio, e que qualquer email que declara ser desse domínio deve ser rejeitada. Você deve fazer isto para cada domínio e subdomínio usando um DKIM curinga.
Por exemplo, o registro DKIM ficaria assim:
*._domainkey.SubDomainThatShouldntSendMail.contoso.com. TXT "v=DKIM1; p="
Próximas etapas: depois de configurar o DKIM no Microsoft 365
Embora o DKIM tenha sido projetado para ajudar a evitar a falsificação, ele funciona melhor com SPF e DMARC.
Depois que você configurar o DKIM, se já não tiver configurado o SPF, deve fazê-lo. Para obter uma introdução rápida ao SPF e configurá-lo rapidamente, consulte Configurar o SPF no Microsoft 365 para ajudar a evitar falsificações. Para compreender melhor como o Microsoft 365 usa a SPF, para solucionar problemas ou para implantações fora do padrão, como as implantações híbridas, comece com Como o Microsoft 365 usa a estrutura de política do remetente (SPF) para evitar a falsificação.
A seguir, consulte Use DMARC para validar email. Cabeçalhos de mensagem antispam inclui a sintaxe e os campos de cabeçalho usados pelo Microsoft 365 para verificações de DKIM.
Este teste irá validar se a configuração da assinatura DKIM foi configurada corretamente e se as entradas DNS adequadas foram publicadas.
Observação
Esse recurso requer uma conta de administrador do Microsoft 365. Esse recurso não está disponível para o Microsoft 365 Government, Microsoft 365 operado pela 21Vianet ou Microsoft 365 Alemanha.
Mais informações
Rotação de chaves pelo PowerShell: rotate-DkimSigningConfig
Usar DMARC para validar emails
Usar Remetentes ARC confiáveis para fluxos de email legítimos