El conjunto de documentos para este producto aspira al uso de un lenguaje no discriminatorio. A los fines de esta documentación, "no discriminatorio" se refiere al lenguaje que no implica discriminación por motivos de edad, discapacidad, género, identidad de raza, identidad étnica, orientación sexual, nivel socioeconómico e interseccionalidad. Puede haber excepciones en la documentación debido al lenguaje que se encuentra ya en las interfaces de usuario del software del producto, el lenguaje utilizado en función de la documentación de la RFP o el lenguaje utilizado por un producto de terceros al que se hace referencia. Obtenga más información sobre cómo Cisco utiliza el lenguaje inclusivo.
Cisco ha traducido este documento combinando la traducción automática y los recursos humanos a fin de ofrecer a nuestros usuarios en todo el mundo contenido en su propio idioma. Tenga en cuenta que incluso la mejor traducción automática podría no ser tan precisa como la proporcionada por un traductor profesional. Cisco Systems, Inc. no asume ninguna responsabilidad por la precisión de estas traducciones y recomienda remitirse siempre al documento original escrito en inglés (insertar vínculo URL).
Este documento describe la implementación de DANE para el flujo de correo saliente ESA.
Conocimiento general de los conceptos y la configuración de ESA.
Requisitos para implementar el DANE:
El DANE se ha introducido en el SEC 12 para la validación de correo saliente.
Autenticación de entidades con nombre (DANE) basada en DNS.
Se requiere la capacidad de DNS para realizar consultas dnssec/DANE para implementar DANE.
Para probar la capacidad de ESA DNS DANE, se puede realizar una prueba sencilla desde el inicio de sesión de ESA CLI.
El comando de CLI 'daneverify' realizará las consultas complejas para verificar si un dominio es capaz de pasar la verificación DANE.
El mismo comando se puede utilizar con un dominio correcto conocido para confirmar la capacidad del ESA para resolver consultas dnssec.
'ietf.org' es una fuente conocida a nivel mundial. Al ejecutar el comando cli 'daneverify' se verificará si la resolución DNS es compatible con DANE o no.
PASO VÁLIDO: RESULTADOS DEL "ÉXITO DE DANE" DEL SERVIDOR DNS COMPATIBLE CON DANE PARA ietf.org
> daneverify ietf.org
SECURE MX record(mail.ietf.org) found for ietf.org
SECURE A record (4.31.198.44) found for MX(mail.ietf.org) in ietf.org
Connecting to 4.31.198.44 on port 25.
Connected to 4.31.198.44 from interface 216.71.133.161.
SECURE TLSA record found for MX(mail.ietf.org) in ietf.org
Checking TLS connection.
TLS connection established: protocol TLSv1.2, cipher ECDHE-RSA-AES256-GCM-SHA384.
Certificate verification successful
TLS connection succeeded ietf.org.
DANE SUCCESS for ietf.org
DANE verification completed.
ERROR NO VÁLIDO: RESULTADOS "FALSOS" DE SERVIDOR DNS NO COMPATIBLE CON DANE PARA ietf.org
> daneverify ietf.org
BOGUS MX record found for ietf.org
DANE FAILED for ietf.org
DANE verification completed.
FALLO VÁLIDO: daneverify cisco.com > cisco no ha implementado DANE. Este es el resultado esperado de una resolución con capacidad para dnssec.
> daneverify cisco.com
INSECURE MX record(alln-mx-01.cisco.com) found for cisco.com
INSECURE MX record(alln-mx-01.cisco.com) found. The command will still proceed.
INSECURE A record (173.37.147.230) found for MX(alln-mx-01.cisco.com) in cisco.com
Trying next MX record in cisco.com
INSECURE MX record(rcdn-mx-01.cisco.com) found for cisco.com
INSECURE MX record(rcdn-mx-01.cisco.com) found. The command will still proceed.
INSECURE A record (72.163.7.166) found for MX(rcdn-mx-01.cisco.com) in cisco.com
Trying next MX record in cisco.com
INSECURE MX record(aer-mx-01.cisco.com) found for cisco.com
INSECURE MX record(aer-mx-01.cisco.com) found. The command will still proceed.
INSECURE A record (173.38.212.150) found for MX(aer-mx-01.cisco.com) in cisco.com
DANE FAILED for cisco.com
DANE verification completed.
Si las pruebas anteriores "VÁLIDO" funcionan:
Las políticas de flujo de correo/grupo de remitentes que tienen configurada la acción "RELAY" realizarán la verificación DANE.
Las políticas de flujo de correo/grupo de remitentes que tienen configurada la acción "ACCEPT" NO realizarán la verificación DANE.
Precaución: si el ESA tiene los controles de destino "DANE" habilitados en la política predeterminada, existe el riesgo de entrega fallida. Si un dominio de propiedad interna como los listados en la RAT, pase a través de las políticas RELAY y ACCEPT mail flow, combinadas con la presencia de una ruta SMTP para el dominio.
DANE fallará en las rutas SMTP a menos que el "Host de destino" esté configurado como "USEDNS".
DANE Opportunistic no entregará los mensajes que los contengan en la cola de entrega hasta que caduque el temporizador del perfil de rebote.
¿Por qué? Se omite la verificación DANE, ya que una ruta SMTP sería una modificación del destino real y es posible que no use DNS correctamente.
Solución: cree perfiles de control de destino para deshabilitar explícitamente la verificación DANE para dominios que contengan rutas SMTP
Las siguientes búsquedas se realizan durante la verificación DANE.
Cada verificación alimenta el contenido para llevar a cabo la verificación posterior.
Seguridad
Inseguro:
Falsos:
NXDOMAIN
Una combinación de la verificación de registro anterior y los resultados de la verificación determinarán el "Éxito DANE | Error de DANE | DANE recurre a TLS".
Por ejemplo, si no se envía un RRSIG para el registro MX de example.com, se comprueba la zona principal (.com) para ver si example.com tiene un registro DNSKEY, lo que indica que example.com debería firmar sus registros. Esta validación continúa hasta la cadena de confianza y finaliza con la verificación de la clave de la zona raíz (.). Se alcanza y las claves de la zona raíz coinciden con lo que el ESA espera (valores codificados en el ESA, que se actualizan automáticamente según RFC5011).
DANÉS OBLIGATORIO
Nota: DANE OPORTUNISTIC NO SE COMPORTA COMO TLS PREFERIDO. La parte de ACCIÓN de los siguientes resultados del gráfico DANE FALLO, no se entregará para Obligatorio u Oportunista. Los mensajes permanecerán en la cola de entrega hasta que caduque el temporizador y, a continuación, la entrega finalizará.
DANÉS OPORTUNISTA
La siguiente figura ilustra el flujo de trabajo cuando se habilita DANE en un entorno de varios dispositivos.
Si el entorno tiene varias capas de dispositivos ESA, una para el análisis y otra para la entrega de mensajes. Asegúrese de que DANE solo se configura en el dispositivo que se conecta directamente a los destinos externos.
Si un ESA tiene varios resolvers DNS configurados, algunos que soportan DNSSEC y otros que no soportan DNSSEC, Cisco recomienda configurar los resolvers compatibles con DNSSEC con una prioridad más alta (Valor Numérico Inferior), para evitar inconsistencias.
Esto evita que la resolución no compatible con DNSSEC clasifique el dominio de destino que admite DANE como "falso".
Cuando la resolución de DNS no es accesible, el DNS vuelve al servidor DNS secundario. Si no configura DNSSEC en el servidor DNS secundario, los registros MX de los dominios de destino compatibles con DANE se clasifican como "falsos". Esto afecta a la entrega del mensaje independientemente de la configuración del DANE (Oportunista u Obligatorio). Cisco recomienda utilizar una resolución con capacidad DNSSEC secundaria.
Estado de entrega
Supervise el informe "Estado de entrega" de WebUI para detectar cualquier acumulación no intencionada de dominios de destino, posiblemente debido a un error de DANE.
Realice esta operación antes de activar el servicio y, a continuación, de forma periódica durante varios días para garantizar el éxito continuado.
ESA WebUI > Monitor > Estado de entrega > marque la columna "Destinatarios activos".
Registros de correo
Registros de correo predeterminados a nivel informativo para el nivel de registro.
Los registros de correo muestran indicadores muy sutiles para los mensajes negociados con éxito por el DANE.
La negociación TLS saliente final incluirá un resultado ligeramente modificado para incluir el dominio al final de la entrada del registro.
La entrada del registro incluirá "TLS success protocol" seguido de la versión/cifrado de TLS "para domain.com".
La magia está en el "por":
myesa.local> grep "TLS success.*for" mail_logs
Tue Feb 5 13:20:03 2019 Info: DCID 2322371 TLS success protocol TLSv1.2 cipher DHE-RSA-AES256-GCM-SHA384 for karakun.com
Depuración de registros de correo
Los registros de correo personalizados en el nivel de depuración mostrarán las búsquedas DANE y dnssec completas, la negociación esperada, partes de la comprobación que superaron/fallaron y un indicador de éxito.
Nota: Los registros de correo configurados para el registro de nivel de depuración pueden consumir recursos excesivos en un ESA, según la carga y la configuración del sistema.
Los registros de correo configurados para el registro de nivel de depuración pueden consumir recursos excesivos en un ESA, según la carga y la configuración del sistema.
Los registros de correo NO se mantienen a nivel de depuración durante largos períodos de tiempo.
Los registros de nivel de depuración pueden generar un enorme volumen de registros de correo en un corto período de tiempo.
Una práctica frecuente es crear una suscripción de registro adicional para mail_logs_d y configurar el registro para DEBUG.
La acción evita el impacto en los mail_logs existentes y permite la manipulación del volumen de logs mantenidos para la suscripción.
Para controlar el volumen de registros creados, restrinja el número de archivos que desea mantener a un número menor, como 2-4 archivos.
Cuando se haya completado la supervisión, el período de prueba o la resolución de problemas, desactive el registro.
Los registros de correo establecidos para el nivel de depuración muestran resultados DANE muy detallados:
Success sample daneverify
daneverify ietf.org
SECURE MX record(mail.ietf.org) found for ietf.org
SECURE A record (4.31.198.44) found for MX(mail.ietf.org) in ietf.org
Connecting to 4.31.198.44 on port 25.
Connected to 4.31.198.44 from interface 194.191.40.74.
SECURE TLSA record found for MX(mail.ietf.org) in ietf.org
Checking TLS connection.
TLS connection established: protocol TLSv1.2, cipher DHE-RSA-AES256-GCM-SHA384.
Certificate verification successful
TLS connection succeeded ietf.org.
DANE SUCCESS for ietf.org
DANE verification completed.
debug level mail logs during the above 'daneverify' exeuction.
Sample output from the execution of the daneverify ietf.org will populate the dns lookups within the mail logs
Mon Feb 4 20:08:47 2019 Debug: DNS query: Q('ietf.org', 'MX')
Mon Feb 4 20:08:47 2019 Debug: DNS query: QN('ietf.org', 'MX', 'recursive_nameserver0.parent')
Mon Feb 4 20:08:47 2019 Debug: DNS query: QIP ('ietf.org','MX','194.191.40.84',60)
Mon Feb 4 20:08:47 2019 Debug: DNS query: Q ('ietf.org', 'MX', '194.191.40.84')
Mon Feb 4 20:08:48 2019 Debug: DNSSEC Response data([(0, 'mail.ietf.org.')], secure, 0, 1800)
Mon Feb 4 20:08:48 2019 Debug: DNS encache (ietf.org, MX, [(8496573380345476L, 0, 'SECURE', (0, 'mail.ietf.org'))])
Mon Feb 4 20:08:48 2019 Debug: DNS query: Q('mail.ietf.org', 'A')
Mon Feb 4 20:08:48 2019 Debug: DNS query: QN('mail.ietf.org', 'A', 'recursive_nameserver0.parent')
Mon Feb 4 20:08:48 2019 Debug: DNS query: QIP ('mail.ietf.org','A','194.191.40.84',60)
Mon Feb 4 20:08:48 2019 Debug: DNS query: Q ('mail.ietf.org', 'A', '194.191.40.84')
Mon Feb 4 20:08:48 2019 Debug: DNSSEC Response data(['4.31.198.44'], secure, 0, 1800)
Mon Feb 4 20:08:48 2019 Debug: DNS encache (mail.ietf.org, A, [(8496573380345476L, 0, 'SECURE', '4.31.198.44')])
Mon Feb 4 20:08:48 2019 Debug: DNS query: Q('mail.ietf.org', 'AAAA')
Mon Feb 4 20:08:48 2019 Debug: DNS query: QN('mail.ietf.org', 'AAAA', 'recursive_nameserver0.parent')
Mon Feb 4 20:08:48 2019 Debug: DNS query: QIP ('mail.ietf.org','AAAA','194.191.40.84',60)
Mon Feb 4 20:08:48 2019 Debug: DNS query: Q ('mail.ietf.org', 'AAAA', '194.191.40.84')
Mon Feb 4 20:08:48 2019 Warning: Received an invalid DNSSEC Response: DNSSEC_Error('mail.ietf.org', 'AAAA', '194.191.40.84', 'DNSSEC Error for hostname mail.ietf.org (AAAA) while asking 194.191.40.84. Error was: Unsupported qtype') of qtype AAAA looking up mail.ietf.org
Mon Feb 4 20:08:48 2019 Debug: DNS query: Q('mail.ietf.org', 'CNAME')
Mon Feb 4 20:08:48 2019 Debug: DNS query: QN('mail.ietf.org', 'CNAME', 'recursive_nameserver0.parent')
Mon Feb 4 20:08:48 2019 Debug: DNS query: QIP ('mail.ietf.org','CNAME','194.191.40.83',60)
Mon Feb 4 20:08:48 2019 Debug: DNS query: Q ('mail.ietf.org', 'CNAME', '194.191.40.83')
Mon Feb 4 20:08:48 2019 Debug: DNSSEC Response data([], , 0, 1800)
Mon Feb 4 20:08:48 2019 Debug: Received NODATA for domain mail.ietf.org type CNAME
Mon Feb 4 20:08:48 2019 Debug: No CNAME record(NoError) found for domain(mail.ietf.org)
Mon Feb 4 20:08:49 2019 Debug: DNS query: Q('_25._tcp.mail.ietf.org', 'TLSA')
Mon Feb 4 20:08:49 2019 Debug: DNS query: QN('_25._tcp.mail.ietf.org', 'TLSA', 'recursive_nameserver0.parent')
Mon Feb 4 20:08:49 2019 Debug: DNS query: QIP ('_25._tcp.mail.ietf.org','TLSA','194.191.40.83',60)
Mon Feb 4 20:08:49 2019 Debug: DNS query: Q ('_25._tcp.mail.ietf.org', 'TLSA', '194.191.40.83')
Mon Feb 4 20:08:49 2019 Debug: DNSSEC Response data(['0301010c72ac70b745ac19998811b131d662c9ac69dbdbe7cb23e5b514b56664c5d3d6'], secure, 0, 1800)
Mon Feb 4 20:08:49 2019 Debug: DNS encache (_25._tcp.mail.ietf.org, TLSA, [(8496577312207991L, 0, 'SECURE', '0301010c72ac70b745ac19998811b131d662c9ac69dbdbe7cb23e5b514b56664c5d3d6')])
fail sample daneverify
[]> thinkbeyond.ch
INSECURE MX record(thinkbeyond-ch.mail.protection.outlook.com) found for thinkbeyond.ch
INSECURE MX record(thinkbeyond-ch.mail.protection.outlook.com) found. The command will still proceed.
INSECURE A record (104.47.9.36) found for MX(thinkbeyond-ch.mail.protection.outlook.com) in thinkbeyond.ch
Trying next A record (104.47.10.36) for MX(thinkbeyond-ch.mail.protection.outlook.com) in thinkbeyond.ch
INSECURE A record (104.47.10.36) found for MX(thinkbeyond-ch.mail.protection.outlook.com) in thinkbeyond.ch
DANE FAILED for thinkbeyond.ch
DANE verification completed.
mail_logs
Sample output from the execution of he danverify thinkbeyond.ch will populate the dns lookups within the mail logs
Mon Feb 4 20:15:52 2019 Debug: DNS query: Q('thinkbeyond.ch', 'MX')
Mon Feb 4 20:15:52 2019 Debug: DNS query: QN('thinkbeyond.ch', 'MX', 'recursive_nameserver0.parent')
Mon Feb 4 20:15:52 2019 Debug: DNS query: QIP ('thinkbeyond.ch','MX','194.191.40.84',60)
Mon Feb 4 20:15:52 2019 Debug: DNS query: Q ('thinkbeyond.ch', 'MX', '194.191.40.84')
Mon Feb 4 20:15:52 2019 Debug: DNSSEC Response data([(10, 'thinkbeyond-ch.mail.protection.outlook.com.')], insecure, 0, 3600)
Mon Feb 4 20:15:52 2019 Debug: DNS encache (thinkbeyond.ch, MX, [(8502120882844461L, 0, 'INSECURE', (10, 'thinkbeyond-ch.mail.protection.outlook.com'))])
Mon Feb 4 20:15:52 2019 Debug: DNS query: Q('thinkbeyond-ch.mail.protection.outlook.com', 'A')
Mon Feb 4 20:15:52 2019 Debug: DNS query: QN('thinkbeyond-ch.mail.protection.outlook.com', 'A', 'recursive_nameserver0.parent')
Mon Feb 4 20:15:52 2019 Debug: DNS query: QIP ('thinkbeyond-ch.mail.protection.outlook.com','A','194.191.40.83',60)
Mon Feb 4 20:15:52 2019 Debug: DNS query: Q ('thinkbeyond-ch.mail.protection.outlook.com', 'A', '194.191.40.83')
Mon Feb 4 20:15:52 2019 Debug: DNSSEC Response data(['104.47.9.36', '104.47.10.36'], insecure, 0, 10)
Mon Feb 4 20:15:52 2019 Debug: DNS encache (thinkbeyond-ch.mail.protection.outlook.com, A, [(8497631700844461L, 0, 'INSECURE', '104.47.9.36'), (8497631700844461L, 0, 'INSECURE', '104.47.10.36')])
Mon Feb 4 20:15:52 2019 Debug: DNS query: Q('thinkbeyond-ch.mail.protection.outlook.com', 'AAAA')
Mon Feb 4 20:15:52 2019 Debug: DNS query: QN('thinkbeyond-ch.mail.protection.outlook.com', 'AAAA', 'recursive_nameserver0.parent')
Mon Feb 4 20:15:52 2019 Debug: DNS query: QIP ('thinkbeyond-ch.mail.protection.outlook.com','AAAA','194.191.40.84',60)
Mon Feb 4 20:15:52 2019 Debug: DNS query: Q ('thinkbeyond-ch.mail.protection.outlook.com', 'AAAA', '194.191.40.84')
Mon Feb 4 20:15:52 2019 Debug: DNSSEC Response data([], , 0, 32768)
Mon Feb 4 20:15:52 2019 Debug: Received NODATA for domain thinkbeyond-ch.mail.protection.outlook.com type AAAA
Mon Feb 4 20:15:52 2019 Debug: DNS query: Q('thinkbeyond-ch.mail.protection.outlook.com', 'CNAME')
Mon Feb 4 20:15:52 2019 Debug: DNS query: QN('thinkbeyond-ch.mail.protection.outlook.com', 'CNAME', 'recursive_nameserver0.parent')
Mon Feb 4 20:15:52 2019 Debug: DNS query: QIP ('thinkbeyond-ch.mail.protection.outlook.com','CNAME','194.191.40.83',60)
Mon Feb 4 20:15:52 2019 Debug: DNS query: Q ('thinkbeyond-ch.mail.protection.outlook.com', 'CNAME', '194.191.40.83')
Mon Feb 4 20:15:53 2019 Warning: Received an invalid DNS Response: SERVER FAILED to IP 194.191.40.83 looking up thinkbeyond-ch.mail.protection.outlook.com
Mon Feb 4 20:15:53 2019 Debug: DNS query: QIP ('thinkbeyond-ch.mail.protection.outlook.com','CNAME','194.191.40.84',60)
Mon Feb 4 20:15:53 2019 Debug: DNS query: Q ('thinkbeyond-ch.mail.protection.outlook.com', 'CNAME', '194.191.40.84')
Mon Feb 4 20:15:54 2019 Warning: Received an invalid DNS Response: SERVER FAILED to IP 194.191.40.84 looking up thinkbeyond-ch.mail.protection.outlook.com
Mon Feb 4 20:15:54 2019 Debug: No CNAME record() found for domain(thinkbeyond-ch.mail.protection.outlook.com)
Revisión | Fecha de publicación | Comentarios |
---|---|---|
1.0 |
26-Aug-2019 |
Versión inicial |