punycode, dominios con ñ

Bueno, ya hace bastante tiempo que los IDN o Nombres de Dominio Internacionalizados están en funcionamiento. Para lo que a nosotros nos interesa son dominios que incluyen ñ ( hay muchos más caracteres UTF8 que están incluidos). Si administras algún servidor de correo, web o dns y te encuentras ante la situación de tener que configurar un dominio de este tipo, sólo tienes que tener en cuenta un par de cosas. Realmente lo que hace tu navegador, si es que es compatible, es hacer una conversión de UTF8 a punycode. Es decir, si quisieses entrar en españa.com, tu navegador convertiría la ñ automáticamente a una serie de caracteres, de forma transparente, que al leerlos te parecerían raros, pero que los servicios de resolución de nombres y demás, si entienden. Por ejemplo, españa quedaría así:

En UTF-8: españa.com
En Punycode: xn--espaa-rta.com

En tu navegador relamente no vas a ver nada. Se va a mantener la versión UTF8. Algunos navegadores más antiguos te hacen la conversión automáticamente y muestran la versión punycode, lo que te puede despistar.
Entonces qué hay que hacer. Primero pasar el dominio con eñes a punycode.¿Cómo? Puedes usar cualquier conversor a punycode online, por ejemplo…. Una vez que tienes la cadena en punycode das de alta tu dominio en tu servicio dns usando el dominio en punycode. Si tienes un script hecho…antes ponias ./altaDominio.sh españa.com y te fallaba todo, ahora pones ./altaDominio.sh xn--espaa-rta.com . ¿Y cómo creamos un virtual host para este dominio punycode?. Pues igual. Si usas apache, el ServerName o un ServerAlias seria:

ServerName xn--espaa-rta.com

Y lo mismo al crear el dominio de correo. Ahora sólo tenemos que confiar en que los clientes web, clientes de correo, etc, te hagan la conversión correctamente. Para los clientes de correo y compañias de webmail aún suele haber problemas. Pero usando la versión punycode directamente del dominio IDN no debería haber ningún problema.

Hay un montón de caracteres de diferentes lenguas soportados:
Latín; griego; alfabeto cirílico; armenio; hebreo; árabe; Syriac; Thaana; Devanagari; bengalí; Gurmukhi; Oriya; tamil; Telegu; Kannada; Malayalam; Sinhala; tailandés; Lao; Tibetano; Myanmar; georgiano; Hangul; Etíope; Cherokee; Aborigen canadiense Syllabics; Ogham; Rúnico; Khmer; mongol; Han (japonés, chino, ideogramas coreanos); Hiragana; Katakana; Bopomofo y Yi….. y según la extensión del dominio puede que acepten unos caracteres u otros. Por ejemplo un dominio .cn de China, puede que sólo acepte caracteres Chinos.

Amavis , Spamassassin y auto-whitelist gigante

Mi servidor de correo estuvo volviendose bastante lento  estas semanas después de meterle bastantes correos para que aprendiese con sa-learn.
Mirando en /var/lib/amavis/.spamassassin veo que el fichero de auto-whitelist pesa más de 600 Mb y bayes_seen casi lo mismo. También hay muchos ficheros auto-whitelist.lock.
El fichero de auto-whitelist pone a cada entrada una puntuación, las veces que ha entrado correo de esta dirección y una ip asociada, cogiendo solamente los dos primeros octetos de la dirección (por si nos estan enviando spam desde varias ips de la misma subred.)
Usando esta herramienta, check_whitelist , pude ver que había mas de 1,5 millones direcciones de correos de los que sólo había entrado un mensaje de spam en mi sistema.
Con check_whitelist –clean –min 3 auto-whitelist , eliminé todos las entradas de esta base de datos que tuvieran 2 o 1 ocurrencias, ya que no hay muchas probabilidades de que me vuelvan a enviar spam y cuando amavis va a hacer el chequeo se vuelve más lenta y va encolando los mensajes.
Aún así el fichero sigue pesando casi lo mismo. Para compactarlo existe otra herramienta trim_whitelist .

trim_whitelist auto-whitelist

y el fichero acaba pesando 8M.
Reinicio los servicios y la cola de correo baja de 2700 correos a 15.

La versión de spamassasin que uso no me permite dar parámetros para que determinadas entradas vayan expirando. Diversos sitios dicen que puedes eliminarlo y que empiece desde 0 o que uses determinadas “plantillas”.

A mi, compactado en auto-whitelist me fue suficiente.