SPF, DomainKeys y su implementación

Anuncio
SPF, DomainKeys
y su implementación
Toni de la Fuente Diaz [blyx.com]
30 Octubre'04
HackAndalus
Hackmeeting 2004 - Sevilla
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Contenido:
●
●
●
●
Introducción
Funcionamiento del correo electrónico
SPF (Sender Policy Framework)
– Conceptos, características.
–
Anatomía, sintaxis.
–
Ejemplos, casos prácticos.
–
Implementación
DomainKeys
–
Conceptos, características
–
Ejemplos, casos prácticos
–
Implementación
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Introducción:
●
●
●
¿Que es SPAM?
– Spam es correo no deseado y no solicitado.
– Más del 40% de los correos electrónicos recibidos por
cualquier ISP al día son spam. *
¿Por qué los Spammers hacen SPAM?
– Por dinero.
– Ahorro en anunciar ciertos productos.
– Gusanos con propio motor SMTP
– Phishing Attacks
– ...
Coste del SPAM:
- Pérdida de productividad (4.4s/mensaje) y de recursos del
servidor (ancho de banda y almacenamiento).
* http://www.spamfilterreview.com/spam-statistics.html (2003)
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Métodos utilizados para acabar con el SPAM:
●
SpamAssassin.
●
BlackLists.
●
Filtros “Bayesianos”: Teorema de Bayes.
●
Filtros en los clientes.
●
Control de ancho de banda.
●
Uso intensivo del cortafuegos (tráfico saliente puerto 25/TCP).
●
Y un largo etcétera.
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
¿Cómo funciona el correo electrónico?
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Estructura de un mensaje de correo electronico:
Envelope:
mail from: correo@origen.com (Return-Path)
rcpt to: destinatario@destino.com (Delivered-To)
Header:
From: correo@origen.com
Subject: Asunto
To: destinatario@destino.com
Date:
Reply-To:
Message-ID:
ETC...
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Una sesión especial:
$ telnet smtp.dominio.com 25
Trying 211.35.214.2...
Connected to smtp.dominio.com.
Escape character is '^]'.
220 smtp.dominio.com ESMTP
mail from: pepe@lospepes.com
250 ok
rcpt to: toni@dominio.com
250 ok
data
354 go ahead
From: yomismo@oleoleyole.es
Subject: ayyyy lereee lereee
To: toniblyx@loqueyoquiera.com
Adiooooooosss!!!
.
250 ok 1088708435 qp 3884
quit
221 smtp.dominio.com
Connection closed by foreign host.
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Resultado, fuente del mensaje recibido:
Return-Path: <pepe@lospepes.com>
Delivered-To: toni@dominio.com
Received: (qmail 3884 invoked from network); 1 Jul 2004
18:59:20 -0000
Received: from unknown (231.254.21.33) by 0 with SMTP; 1 Jul
2004 18:59:20 -0000
From: yomismo@oleoleyole.es
Subject: ayyyy lereee lereee
To: toniblyx@loqueyoquiera.com
X-Evolution-Source: pop://toni%40diminio.com@pop3.dominio.com
Date: Thu, 01 Jul 2004 20:57:36 +0200
Message-Id: <1088708256.2240.177.camel@flame>
Mime-Version: 1.0
Adiooooooosss!!!
¿Quien recibe el correo? toni@dominio.com Aunque aparecerá en el
cliente toniblyx@loqueyoquiera.com procedente de
yomismo@oleoleyole.es
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Falsear direcciones de correo es fácil:
SPAMMER
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
SPF = Sender Policy Framework
• SPF (antes llamado Sender Permitted From) permite a
los servidores de correo identificar y bloquear envíos
falsificados haciendo una simple consulta al DNS sobre el
registro TXT del dominio origen.
• Gran parte de las empresas y asociaciones ya publican sus
registros SPF como Google, AOL, gnu.org, oreilly.com,
wanadoo.es, etc.
• ¿Cómo sé si mi proveedor publica SPF?
host –t txt ya.com
Basado en:
RMX: Reverse Mail eXchanger
DMP: Designated Mailers Protocol
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Características para la implementación de SPF
• Implica a los protocolos DNS (sólo TXT) y SMTP
(necesita modificación).
• La adopción de SPF puede ser asimétrica, no es
necesario que otros utilicen SPF.
• Uso de SMTP Autenticado muy recomendable. Usuarios
viajeros con MTA propios, etc.
• Hay otras iniciativas como M$ Caller-ID o M$ SenderID.
SPF es compatible.
• Web del proyecto: http://spf.pobox.com/
RFCs:
http://spf.pobox.com/spf-draft-200406.txt
http://spf.pobox.com/draft-ietf-marid-protocol-00.txt
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Anatomía de un registro SPF:
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Con SPF:
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Sintaxis http://spf.pobox.com/mechanisms.html
Ejemplo:
Sólo los MX de blyx.com pueden enviar correos de @blyx.com:
En BIND:
blyx.com. IN TXT "v=spf1 mx -all"
En tinydns/djbdns:
'blyx.com:v=spf1 mx -all:600
NOTA: all es equivalente a +all
Existen asistentes para configuración de la zona TXT para SPF:
http://spf.pobox.com/wizard.html
http://old.spf.infinitepenguins.net/create.php
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Operadores (mechanism):
Prefijos:
- fail
~ softfail
+ pass
? neutral
v = versión de SPF, actualmente es spf1
a = registros A en DNS
mx = registros MX en DNS
ptr = registros PTR (resolución inversa) en DNS
ip4/ip6 = declaración de ip o rangos Ipv4 o Ipv6
all = redes e IP restantes
include = comprueba registro SPF de otro
dominio y pasa al siguiente operador
exist = si existen registros SPF de otro dominio
Modificadores:
exp = (explanation) respuesta en caso de rechazo
(pj. explicar como utilizar smtp-auth)
redirect = consulta el registro SPF de otro dominio
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Otros ejemplos:
Si blyx.com sólo fuera un dominio de web y no envía
correo:
blyx.com. TXT "v=spf1 -all"
Informe de los fails por IP (no aparece en spf v2):
“v=spf1 mx report=toni@blyx.com -all"
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Registro SPF y comprobación:
http://spf.infinitepenguins.net/register.php
http://spf.infinitepenguins.net/earlyadopters.php
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Comprobación con libspf: (www.libspf.org)
Prueba satisfactoria:
# spfquery -i 212.163.0.2 -s toni@blyx.com -h blyx.com
pass
policy result: (pass) from rule (ip4:212.163.0.0/26)
(null)
Prueba fallida:
# spfquery -i 212.163.0.134 -s toni@blyx.com -h blyx.com
fail
policy result: (fail) from rule (-all)
See
http://spf.pobox.com/why.html?sender=toni@blyx.com&ip=212.163
.0.134&receiver=spfquery
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Comprobación:
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Análisis de algunos registros SPF:
AOL:
aol.com text
"v=spf1 ip4:152.163.225.0/24 ip4:205.188.139.0/24
ip4:205.188.144.0/24 ip4:205.188.156.0/23
ip4:205.188.159.0/24 ip4:64.12.136.0/23
ip4:64.12.138.0/24 ptr:mx.aol.com ?all"
Implementación interesante de SPF:
WANADOO:
wanadoo.es text
"v=spf1 +a:allow.spf.wanadoo.es ?all"
Ejecuta:
# nslookup allow.spf.wanadoo.es
Interesante ¿verdad?
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Desventajas:
- Problemas con los reenvios de correo:
Solución: Protocolo SRS (Sender Rewriting Scheme)
marcas de camino, MTA original: seguimiento de correo.
http://www.libsrs2.org
- Usuarios móviles con MTA propios:
Solución: SMTP-AUTH
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
¿Qué hago en mi servidor SMTP?
Paquetes y parches disponibles para MTAs en:
http://spf.pobox.com/downloads.html
Mail::SPF::Query – Módulo de Perl que permite la implementación con Sendmail,
paquetes RedHat, Fedora y Debian.
Postfix - http://spf.pobox.com/postfix-policyd.txt + Mail::SPF::Query
Sendmail-milter - http://spf.pobox.com/sendmail-milter-spf-1.41.pl
qmail - http://www.saout.de/misc/spf/
Exim - http://spf.pobox.com/exim4.spf.acl-2.09.txt
Courier - http://search.cpan.org/search?query=Courier::Filter::Module::SPF
http://www.libspf2.org/ - Librerias en C para Sendmail y Qmail
http://www.wayforward.net/spf/ - Librerias en Python
https://sourceforge.net/projects/spfjava/ - Librerias en Java
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Caso práctico: implementación con qmail
1- Publicar los registros SPF en el dns:
· Añadir en la zona /var/named/blyx.com.db:
blyx.com. IN TXT "v=spf1 mx -all"
2- Parchear, compilar, instalar:
· Parche simple:
http://www.saout.de/misc/spf/qmail-spf-rc2.patch
· Parche con soporte ldap, smtp-auth, tls:
http://www.saout.de/misc/spf/other/
3- Configurar qmail (/var/qmail/control):
∙ spfbehavior: valor ideal 3
*mas info:
# man 8 qmail-smtpd
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
spfbehavior: Comportamiento de nuestro MTA
Configura el comportamiento del MTA según las
respuestas SPF obtenidas. El valor por defecto es 0 (off).
Los valores son de 0 a 6:
0: Never do SPF lookups, don't create Received-SPF headers
1: Only create Received-SPF headers, never block
2: Use temporary errors when you have DNS lookup problems
3: Reject mails when SPF resolves to fail (deny)
4: Reject mails when SPF resolves to softfail
5: Reject mails when SPF resolves to neutral
6: Reject mails when SPF does not resolve to pass
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Demostración:
En DNS: blyx.com
text = "v=spf1 mx -all"
En MTA: /var/qmail/control/spfbehavior = 6
$ telnet smtp.blyx.com 25
Trying 213.14.251.3...
Connected to 213.14.251.3.
Escape character is '^]'.
220 smtp.blyx.com ESMTP
mail from: atacante@aol.com
250 ok
rcpt to: toni@blyx.com
550 See http://spf.pobox.com/why.html?sender=atacante%
40aol.com&ip=216.89.87.65&receiver=213.14.251.3 (#5.7.1)
quit
221 smtp.blyx.com
Connection closed by foreign host.
Captura del tráfico con tcpdump:
22:37:57.291209 smtp.blyx.com.32771 > chico.rediris.es.domain:
(36) (DF)
22:37:57.708396 chico.rediris.es.domain > smtp.blyx.com.32771:
36152+ [1au] TXT? aol.com.
36152* 1/4/5 TXT[|domain] (DF)
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Análisis de cabeceras:
Caso neutral ?all
Return-Path: <asdfdsf@aol.com>
Delivered-To: toni@blyx.com
Received: (qmail 21460 invoked by uid 508); 9 Sep 2004 15:48:51 -0000
Received: from unknown (HELO fcmx1.nostracom.com) (212.163.0.13) by
pop.nostracom.com with SMTP; 9 Sep 2004 15:48:51 -0000
Received: (qmail 17947 invoked by uid 600); 9 Sep 2004 15:51:56 -0000
Received: from 182.red-80-24-243.pooles.rima-tde.net (80.24.243.182)
by212.163.0.13 with SMTP; 9 Sep 2004 15:51:56 -0000
Received-SPF: neutral (212.163.0.13: 80.24.243.182 is neither
permitted nor denied by SPF record at aol.com)
X-Evolution-Source: pop://toni%40blyx.com@mailbox1.nostracom.com/
From:
Date: Thu, 09 Sep 2004 17:47:46 +0200
Subject: No Subject
Message-Id: <1094744866.2772.496.camel@flame.nostracom.com>
Mime-Version: 1.0
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Análisis de cabeceras:
Caso pass -all
Return-Path: <bo-bz0214fa94ddcqbh1mccmbv7qgpamb@b.info.redhat.com>
Delivered-To: toni@blyx.com
Received: (qmail 18251 invoked by uid 508); 8 Sep 2004 19:59:11 -0000
Received: from unknown (HELO fcmx1.nostracom.com) (212.163.0.13) by
pop.nostracom.com with SMTP; 8 Sep 2004 19:59:11 -0000
Received: (qmail 17466 invoked by uid 600); 8 Sep 2004 20:02:18 -0000
Received: from mta201.info.redhat.com (65.125.54.186) by 212.163.0.13 with
SMTP; 8 Sep 2004 20:02:18 -0000
Received-SPF: pass (212.163.0.13: SPF record at b.info.redhat.com
designates 65.125.54.186 as permitted sender)
Date: Wed, 8 Sep 2004 20:04:12 -0000
Message-ID:
<bz0214fa94ddcqbh1mccmbv7qgpamb.187926463.2492@mta201.info.redhat.com>
List-Unsubscribe:
<mailto:rm-0bz0214fa94ddcqbh1mccmbv7qgpamb@info.redhat.com>
From: "Red Hat" <redhat@info.redhat.com>
To: toni@blyx.com
Subject: Under the Brim | Red Hat | September 2004
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Análisis de cabeceras:
Caso none sin SPF declarado
Return-Path: <fxksjis@iol.ie>
Delivered-To: toni@blyx.com
Received: (qmail 32142 invoked by uid 508); 3 Sep 2004 20:41:21 -00
Received: from unknown (HELO fcmx1.nostracom.com) (212.163.0.13) by
pop.nostracom.com with SMTP; 3 Sep 2004 20:41:21 -0000
Received: (qmail 21366 invoked by uid 600); 3 Sep 2004 20:44:29 000
Received: from 19.red-80-26-109.pooles.rima-tde.net (HELO iol.ie)
(80.26.109.19) by 212.163.0.13 with SMTP; 3 Sep 2004 20:44:29 -0000
Received-SPF: none (212.163.0.13: domain at noconname.org does not
designate permitted sender hosts)
Received: from peron (hugo.iol.ie [192.168.0.2]) by iol.ie(Postfix)
with SMTP id 8521D23 for <toni@blyx.com>; Fri, 3 Sep 2004 22:49:43
+0200 (CEST)
Message-ID: <008d01c491f6$f830b320$0200a8c0@peron>
From: <fxksjis@iol.ie>
To: "Toni dlF. Diaz" <toni@blyx.com>
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
DomainKeys
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
DomainKeys
• DomainKeys crea un entorno de autenticación a nivel de
dominio usando tecnología de clave pública y DNS para
comprobar la procedencia del correo electrónico y el
contenido del mismo de forma que se evita el SPAM.
• Idea desarrollada por Yahoo!© Borrador publicado ante la
IETF para su estandarización como protocolo. (Agosto
2004)
• Autentica la procedencia y su contenido.
• Web oficial:
– http://antispam.yahoo.com/domainkeys
– http://antispam.yahoo.com/domainkeys/draft-delanydomainkeys-base-01.txt
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Arquitectura de clave pública o asimétrica (PKI) ¿qué es?
Basada en el uso de un par de claves, debemos cifrar con una
de ellas y descifrar con la otra (sólo con la otra)
La clave privada solo está en poder del propietario. Debe ser
conservada de forma segura.
La clave pública se deja a disposición de quien quiera
comunicarse con nosotros de modo seguro.
En el caso de DomainKeys se utiliza la arquitectura de PKI para
firmar los mensajes de correo electrónico y comprobar su origen
e integridad.
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Características de DomainKeys
• Implica a los protocolos DNS (sólo TXT) y SMTP
(necesita modificación como con SPF).
• La adopción de DomainKeys puede ser asimétrica, no es
necesario que otros utilicen DomainKeys pero para el
correcto funcionamiento es necesario DK <-> DK.
• Uso de SMTP Autenticado muy recomendable. Usuarios
viajeros con MTA propios, etc.
• No se necesita una CA aunque se puede usar.
• No involucra a los usuarios.
• Multiples claves para el mismo dominio (grandes
entornos)
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Cómo funciona – Envío de correo:
1 – El propietario de un dominio genera 1 o más par de claves
pública y privada (exclusivas para ese dominio)
2 – Se publica la/las clave pública para ese dominio en el DNS.
3 – Se pone a disposición del servidor de correo saliente la clave
privada para firmar los mensajes.
4 – La firma se incluye en la cabecera del correo electrónico y se
envía usando el método tradicional.
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Cómo funciona – Recepción de correo:
1 – El servidor que recibe el correo extrae la firma de la
cabecera del mensaje.
2 – Consulta mediante DNS la clave pública del dominio que
envía el mensaje.
3 – Usa la clave pública del remitente para determinar si la firma
ha sido generada con la correspondiente clave privada y por lo
tanto si ha sido enviado por un servidor autorizado.
4 – El servidor de correo que recibe el mensaje puede
determinar que política aplicar basándose en el resultado de la
comprobación de la firma.
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Creación de las claves - privada:
# openssl genrsa -out rsa.private 1024
Generating RSA private key, 1024 bit long modulus
................................................++++++
........................++++++
e is 65537 (0x10001)
# cat rsa.private
-----BEGIN RSA PRIVATE KEY----MIICXQIBAAKBgQDGayvYWrS0o4bV51vdg6MGP3qkBXvtUFEOxiOxMhwSjW6F+H26
a9fpslH9QKhVB6AiwRyjQhQU4+kJmJg0K7BhXUqq15abxEasDEs5M5QmOAC73M9H
WpUkdRKx/WZCN7sgrjlQ2Yb9A1dR+43D/GwoX5lOAqA/yjIw1+B477acZQIDAQAB
AoGAeB6LVZhcC3tv9nDwqWK2v+KQIVn8k0drOvFyzCQU4JpkjZBItSHyfVTp09Jf
1dIe/MtBxggL1jW/b4LEqdjFFqseqb7vtEOpCO6BvvKI2ic9zUN5uA61/uEvkTW2
cyUcBzo9At+DPlGBj6OhGUmbWpK7jlVkZ1GUJpHdsJSV6qECQQDvT7KLONOEC+wp
4PIknx7xVyLCJPxTSGGpILJCdQEdbFp5r6njX50+Yafv43H1JtPjBuoSh4qh4lHG
9GoNKpn9AkEA1EFwDtOfIJJr2drX+mUBfnnsnbocadWh5qlzpxjQpxk5L4xmdAiO
830lF5QD0gi/Pc7p6PFFtG+xminc8P9EiQJBANMaZtHRayTMr6Oxv2j2xQD4cLz6
i2ucKipboWRmenlOH/HAOAlPSxLAarh+1wP/IGLgspNt5akwUBtFeFftALECQQCK
Ffhc7Pf9LMTVejZARC3wpkl1Y3rQr5cghOUktFQqIZK+iEyu+FJnvea/rB/AKMih
4VbzoOOEO5YDgXCnqKphAkAOp9iJdt+lDfYW6KTNCllh6I1blLvgCAPr+SXd/g5S
0FkscKseXd0g1pZMXcVeLfpA/VTLmi6fr9NuU+vZM/2v
-----END RSA PRIVATE KEY-----
Para firmar
los correos
salientes
Longitud de claves soportadas: 512, 768, 1024, 1536 y 2048
bits. 1024 recomendados.
Tipo de clave por defecto RSA (SHA1 digest)
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Creación de las claves - pública:
# openssl rsa -in rsa.private -out rsa.public -pubout -outform PEM
writing RSA key
# cat rsa.public
-----BEGIN PUBLIC KEY----MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDGayvYWrS0o4bV51vdg6MGP3qk
BXvtUFEOxiOxMhwSjW6F+H26a9fpslH9QKhVB6AiwRyjQhQU4+kJmJg0K7BhXUqq
15abxEasDEs5M5QmOAC73M9HWpUkdRKx/WZCN7sgrjlQ2Yb9A1dR+43D/GwoX5lO
AqA/yjIw1+B477acZQIDAQAB
-----END PUBLIC KEY-----
Para
publicar en
DNS
- A mayor tamaño de la clave mayor consumo de CPU para verificar y
firmar el mensaje.
- Las claves deben ser reemplazadas cada cierto tiempo (semanas o
pocos meses)
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Publicación en DNS:
-----BEGIN PUBLIC KEY----MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDGayvYWrS0o4bV51vdg6MGP3qk
BXvtUFEOxiOxMhwSjW6F+H26a9fpslH9QKhVB6AiwRyjQhQU4+kJmJg0K7BhXUqq
15abxEasDEs5M5QmOAC73M9HWpUkdRKx/WZCN7sgrjlQ2Yb9A1dR+43D/GwoX5lO
AqA/yjIw1+B477acZQIDAQAB
-----END PUBLIC KEY-----
En el archivo de la zona se ha de incluir la siguiente
entrada:
octubre._domainkey
IN
TXT
"t=y; k=rsa;
p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDGayvYWrS0o4bV51vdg6MGP3qkBXvtUFE
OxiOxMhwSjW6F+H26a9fpslH9QKhVB6AiwRyjQhQU4+kJmJg0K7BhXUqq15abxEasDEs5M5Qm
OAC73M9HWpUkdRKx/WZCN7sgrjlQ2Yb9A1dR+43D/GwoX5lOAqA/yjIw1+B477acZQIDAQAB"
Selector
Clave públca
Modo test habilitado
Tipo de clave publicada
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Comprobación
Consulta al DNS:
# host -t txt octubre._domainkey.blyx.com
octubre._domainkey.blyx.com text "t=y\; k=rsa\;
p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDGayvYWrS0o4bV51vdg6MGP3qkBXvtUFEOxiOxMhw
SjW6F+H26a9fpslH9QKhVB6AiwRyjQhQU4+kJmJg0K7BhXUqq15abxEasDEs5M5QmOAC73M9HWpUkdRKx
/WZCN7sgrjlQ2Yb9A1dR+43D/GwoX5lOAqA/yjIw1+B477acZQIDAQAB"
Otros sitios con registros DomainKeys publicados:
# host -t txt beta._domainkey.gmail.com
# host -t txt _domainkey.yahoo.es -> Interim domain policy
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Análisis de la cabecera del correo recibido:
DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta;
d=gmail.com; h=received:message-id:date:from:replyto:to:subject:mime-version:content-type:content-transferencoding;
b=pJJ/h48nPq9YtE3dxM/zWr+3MkMN43Z7HSNTQ3hryKpcyGIINnpqu7O
3AJrlCc+nUy6/QJqTcFKtLfFtVALucamZsNokS3V5TTs/zGjT6a1J4K9R
cSH+HKmNLXbooDpNxHAO3a027rPKL5uHlLqjF3RGyxlSXO7TWTNn5Oxoy
6I=
Dominio
que firma
el
mensaje
Firma
Algoritmo
usado
para la
firma
Campos que
contiene la cabecera
Método
de
consulta
Selector
Método por el que se presentan
los campos de la cabecera para
ser firmados (simple o isfws)
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Software usado para la creación del borrador:
- OpenSSL gracias a la funcionalidad que ofrece.
-Senmail y qmail.
• http://domainkeys.sourceforge.net/
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Soporte de diferentes escenarios:
-Reenvíos de correo electrónico.
-Listas de correo.
-Envío de terceros autorizados.
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Con qmail:
HOWTO disponible en http://blyx.com
dkcreator es una utilidad que nos ayuda a crear las claves para
firmar y los registros TXT para publicarlos en el DNS. Disponible
en http://blyx.com
Parche - http://qmail.org/qmail-1.03-qdk-0.50.patch
libdomainkey - http://sourceforge.net/projects/domainkeys/
Openssl-devel - http://www.openssl.org
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Reflexión:
¿SPF o DomainKeys?
¿Son necesarios los dos?
¿Es realmente el camino a seguir para acabar con el SPAM?
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
Apuntes:
Tipo
Nombre
SOA
Start Of Authority
Define una zona representativa del DNS
NS
A
AAAA
Name Server
Dirección IPv4
Dirección IPv6 original
Identifica los servidores de zona, delega subdominios
Traducción de nombre a dirección
Actualmente obsoleto
Básicos
A6
PTR
DNAME
MX
KEY
Dirección IPv6
Puntero
Redirección
Mail eXchanger
Clave pública
Traducción de nombre a dirección IPv6
Traducción de dirección a nombre
Redirección para las resoluciones inversas IPv6
Controla el enrutado del correo
Clave pública para un nombre de DNS
Seguridad
NXT
SIG
CNAME
LOC
Next
Signature
Canonical Name
Localización
Se usa junto a DNSSEC para las respuestas negativas
Zona autenticada/firmada
Nicks o alias para un dominio
Localización geográfica y extensión
Opcionales
RP
SRV
TXT
Persona responsable
Servicios
Texto
Especifica la persona de contacto de cada host
Proporciona la localización de servicios conocidos
Comentarios o información sin cifrar
Zona
Función
Securizar el Servidor DNS Bind:
http://www.ziries.com/contenido.php?opcion=articulo-bind
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
¿Preguntas?
:P
SPF, DomainKeys y su implementación
Toni dlF. Diaz [blyx.com] – Octubre 2004
¡¡¡GRACIAS!!!
Se permite la copia y difusión total o parcial por cualquier medio y la
traducción a otros idiomas, siempre que se haga referencia al autor
Toni de la Fuente Diaz = http://blyx.com y se incluya esta nota. :wq
Descargar