El Vidente

Viendo el más allá de las noticias.

Problemas entre MTU y sistemas VPN.

Desde hace algún tiempo me consultan acerca de problemas que se presentan en redes VPN IPSec con el MTU (La unidad máxima de transferencia o Maximum Transfer Unit) y trataré de explicar por qué se producen estos problemas.

Ejemplos de MTU para distintos protocolos usados en Internet:

Ethernet: 1518 bytes
PPPoE: 1492 bytes
ATM (AAL5): 8190 bytes
FDDI: 4470 bytes
PPP: 576 bytes

Para el caso de IP (Protocolo de Internet), el máximo valor de la MTU es 65.536 bytes pero este es en realidad un valor teórico. El tamaño del datagrama IP por defecto es 576 bytes y esto tiene que ver con el hecho de que un datagrama IP atravesará varios tipos de red IP antes de llegar hasta su destino y se debería estar seguro de que puede atravesar toda red en su camino. En la actualidad casi todas las redes están basadas en productos Ethernet y sus derivados por lo que se ha fijado de hecho el tamaños del MTU en 1500 bytes.

El protocolo ICMP es necesario para que PMTUD (Path MTU Discovery) funcione. Esto consiste en una serie de mensajes ICMP que establecen el tamaño maximo del MTU de destino y por lo tanto el tamaño máximo del datagrama que podemos enviar al destino.

Para descubrir el MTU hasta algún destino, se utiliza una técnica conocida como PMTU-D “Path MTU – Discovery”, la cual depende de un paquete icmp de tipo “destination-unreachable” con código “Fragmentation needed but DF set” (tipo 3, código 4).

Cada vez más administradores de red con poco conocimiento real del protocolo IP y para evitar ataques de negación de servicio (DoS) se dedican a bloquear el pineo en general (ping) o protocolo ICMP (de capa cuatro según el modelo OSI) y esto trae problemas en la interoperabilidad de las redes al no funcionar PMTUD y no poder determinar el maximo MTU del destino.

El problema con las VPN IPSEC

Los datagramas IPSEC no deben ser fragmentados para preservar la integridad de los datos cifrados. Cuando un datagrama llega a un Gateway IPSec se le suman a los 1500 bytes que trae los datos de encabezamiento IPSec por lo que el datagrama sobrepasa los 1500 bytes. Como el administrador de la red cerró los pines es decir bloqueó el protocolo ICMP en su totalidad, los equipos carecen de una herramienta que les permite averiguar el MTU de destino y son bloqueados al no poder disminuirse el tamaño del datagrama según sea necesario.

La solución en Linux y Openswan:

Los sistemas linux vienen por defecto con el PMTUD desactivado y debe ser activado agregando al archivo /etc/sysctl.conf lo siguiente:

net.ipv4.ip_no_pmtu_disc=0

No bloquer los mesajes de PING o ICMP de icmp de tipo “destination-unreachable” con código “Fragmentation needed but DF set” (tipo 3, código 4).

Spam de origen peruano.

Viendo los logs de mis servidores de correo he encontrado muchos dominios que son usados únicamente para enviarnos SPAM.  Son dominios casi descartables o los reutilizan despues de algún tiempo.  Todos son ".info" seguramente porque registradores como Godaddy los venden a menos de un dolar el primer año.

Me parece que el spam es de origen peruano, no lo sé en realidad porque a mi no me llega, le llega a mis clientes pero he visto algunos de los Asuntos de los e-mails y parece dirigido objetivamente a Perú.  Este SPAM es bastante bien elaborado ya que burla perfectamente al SpamAssasin logrando puntajes de 1, 2 ó incluso -2.5 ó por el estilo.  Estos Spammers tampoco están registrados en Spamhaus, Spamcop u otras listas negras importantes.

Aquí un ejemplo logs del servidor de correo donde un mensaje de estos obtiene apenas 2.3 como Score de SPAM en SpamAssasin; un puntaje así no suele considerarse SPAM.

2009-08-13 13:17:38 1Mberj-0001vh-PT H=(server1.nestorcanales.info) [67.228.89.172] Warning: "SpamAssassin as cclamor detected message as NOT spam (2.3)"
2009-08-13 13:17:38 1Mberj-0001vh-PT <= minas34@elvavillavicencio.info H=(server1.nestorcanales.info) [67.228.89.172] P=esmtps

2009-08-13 13:17:38 1Mberj-0001vh-PT H=(server1.nestorcanales.info) [67.228.89.172] Warning: "SpamAssassin as cclamor detected message as NOT spam (2.3)"
2009-08-13 13:17:38 1Mberj-0001vh-PT <= minas34@elvavillavicencio.info H=(server1.nestorcanales.info) [67.228.89.172] P=esmtps X=TLSv1:AES256-SHA:256 S=139189 id=002101ca1ca4$a4cd18ac$e0a2cfa9@xotcwle

Les dejo algunos de los dominios detectados:

elvavillavicencio.info
nestorcanales.info
adrianacuba.info
waltercampos.info
danielariveros.info
maximovillanueva.info
antoniacortez.info
joanrodriguez.info
fiorellacastro.info

Y como yo uso Exim 4 como servidor de correo, he puesto temporalmente este filtro hasta que encuentre una mejor forma de detener este SPAM.

if $header_from: contains "@adrianacuba.info" or

$header_from: contains "@waltercampos.info" or

$header_from: contains "@nestrocorrales.info" or

$header_from: contains "@elvavillavicencio.info"

$header_from: contains "@danielariveros.info" or

$header_from: contains "@joanrodriguez.info" or

$header_from: contains "@fiorellacastro.info"

then

seen finish

endif

RCP, el NIC.PE y los RFC

Los RFC son las reglas que determinan como se implementa un servicio en Internet.  Se supone que las organizaciones de máximo nivel en Internet manejan y aplican los RFC correctamente.  RCP ( Red Científica Peruana ) gobierna o maneja todos los dominios “.pe” pero no aplica los RFC. RCP tiene un whois por web pero la regla (RFC) dice que debe ser por puerto tcp 43.

Hay un sitio web que he descubierto hoy (al parecer aun me queda algo de sitios por descubir ) que se denomina RFC Ignorant www.rfc-ignorant.org

Ellos listan a sitios que no aplican  los RFC.

Bueno, me encontre todo el “.pe” listado en RFC-Ignorant por no tener un whois.

Los RFC referentes al whois está aquí: http://www.rfc-ignorant.org/policy-whois.php

Y el “.pe” está aquí: http://www.rfc-ignorant.org/tools/detail.php?domain=pe&submitted=1047954047&table=whois

Cuándo podremos tener un whois decente en Perú para que todos los softwares y sistemas que requieren un whois server (tcp 43) puedan funcionar correctamente.