DKIM en Microsoft 365 desde PowerShell

No hay sistema 100% seguro pero las medidas a aplicar para la mejora de la seguridad son continuas, para incrementar la de los correos salientes en dominios personalizados con planes Microsoft 365, debemos añadir 2 registros CNAME a nuestro DNS, sustituyendo «MiDominio» y «MiTenant» por el correspondiente:

selector1._domainkey CNAME 3600 selector1-MiDominio-com._domainkey.MiTenant.onmicrosoft.com
selector2._domainkey CNAME 3600 selector2-MiDominio-com._domainkey.MiTenant.onmicrosoft.com

Para conectar desde PowerShell aprovecharemos para actualizar los modulos EXO V2 (de paso los de Azure) y establecer la política de ejecución…

Install-Module PowershellGet -Force
Update-Module PowershellGet
Set-ExecutionPolicy -scope CurrentUser -executionPolicy RemoteSigned
Install-Module -Name ExchangeOnlineManagement
Install-Module AzureAD
Install-Module AzureRM

Si solo tenemos un tenant asociado:

Connect-ExchangeOnline

Si tenemos permisos para acceder a varios tenants:

Install-Module MSOnline
Connect-MsolService
Get-MsolPartnerContract -All | Select-Object TenantId, Name

$Tenants = Get-MsolPartnerContract -All; $Tenants | foreach {$Domains = $_.TenantId; Get-MsolDomain -TenantId $Domains | fl @{Label="TenantId";Expression={$Domains}},name}

Connect-ExchangeOnline -UserPrincipalName nombre@MiEmail.com -DelegatedOrganization TenantAsociado.onmicrosoft.com

Actualizado: es posible conectar directamente con un comando desde PowerShell y nos pedirá autenticar en un popup:

Connect-ExchangeOnline -DelegatedOrganization TenantAsociado.onmicrosoft.com
Connect-ExchangeOnline -DelegatedOrganization DominioPersonalizado.com

Ahora estaremos conectados a la consola de administración desde PowerShell y podremos (entre otras muchas funciones) activar la configuración DKIM:

Set-DkimSigningConfig -Identity MiDominio.com -Enabled $true
Get-DkimSigningConfig
Get-DkimSigningConfig -Identity MiDominio.com | Format-List

En el caso de no estar creadas o querer actualizar de 1024 a 2048 las claves:

New-DkimSigningConfig -DomainName MiDominio.com -KeySize 2048 -Enabled $true

En el caso de no configurar correctamente las DNS o todavía no se han propagado los cambios, el comando muestra el correspondiente error en pantalla:

Con DKIM activado conforme los usuarios envien nuevos emails se irán añadiendo en las cabeceras las firmas DKIM (DomainKeys Identified Mail), no se firma el contenido por defecto.

Si ya teníamos configurada la entrada SPF por defecto de Microsoft con un registro TXT en el DNS:

v=spf1 include:spf.protection.outlook.com -all

En el caso de obtener errores de comprobación de DKIM en el selector2 pero funcionar en el selector1, podemos forzar rotar las claves del dominio:

Rotate-DkimSigningConfig -KeySize 2048 -Identity MiDominio.com

Dependiendo del número de usuarios del dominio, podemos añadir los registros DMARC (Domain-based Message Authentication, Reporting, and Conformance):

_dmarc 600	TXT v=DMARC1; p=quarantine; pct=100; ruf=mailto:ruf@MiDominio.com; rua=mailto:rua@MiDominio.com

NOTA: acceso alternativo via web desde el panel aquí.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


El periodo de verificación de reCAPTCHA ha caducado. Por favor, recarga la página.