Éste es el último capítulo de la migración del sistema de correo de eniac2000.com a Google Apps. En los pasos anteriores habíamos visto cómo registrarse en Google Apps y procesar el correo entrante; y cómo hacer que los correos generados en la máquina local fueran enviados a través de los servidores de correo de Google. Pero quedaba una última parte, hacer que los correos generados en la máquina y dirigidos a buzones existentes en la propia máquina fueran dirigidos a cuentas dadas de alta en Google Apps.
Este paso, en realidad, puede considerarse opcional, a gusto del consumidor. ¿De verdad interesa que el correo dirigido a esos buzones locales salga al exterior? En mi caso sí, ya que tengo un sistema de envío de correos electrónicos basado en eventos que usa una cuenta local; cuenta que, al estar ya en Google Apps es la que utilizo, sin tener que acceder al antiguo buzón local. Por otro lado, así puedo revisar los correos dirigidos al root sin ni siquera tener que entrar en la máquina, cosa que resulta útil para ver qué alertas se han podido generar en último lugar, incluso si la máquina está caída. Sin embargo, puede haber quien considere que es más adecuado tener estos correos almacenados en la propia máquina, por aquello de evitar alguna posible fuga de información. También es una postura razonable, pero la primera opción se acomodaba más a mis necesidades.
Los pasos para conseguir enviar el correo de los buzones locales al exterior, a grandes rasgos, son los siguientes: cambiar la configuración de enrutado de los correos, añadir reglas de reescritura de correos, y crear los buzones necesarios en el gestor de correo de Google Apps.
El primer paso es el realmente decisivo: con él se alteran las reglas de enrutado de correos, haciendo que el correo que originariamente se dirigía a los buzones locales pase a ser enviado al exterior. Quizás haya maneras más elegantes de hacerlo (y si alguien sabe alguna, agradeceré enormemente que me la haga saber), pero ésta funciona: uno de los archivos de configuración (en concreto /etc/exim4/conf.d/router/30_exim4-config_remote_smtp_smarthost) es el encargado de discernir qué correos son los que se tienen que dirigir al smarthost, o servidor de correo principal. Por defecto está configurado para que sólo procese aquellos correos que no pertenecen a dominios locales, pero configurándolo de la siguiente manera, se hace que todos los correos vayan hacia el exterior:
smarthost:
debug_print = "R: smarthost for $local_part@$domain"
driver = manualroute
# domains = ! +local_domains
domains = +local_domains : !+local_domains
transport = remote_smtp_smarthost
route_list = * DCsmarthost byname
host_find_failed = defer
same_domain_copy_routing = yes
no_more
Como se puede ver, tan sólo hay que decirle que procese los correos pertenecientes a dominios locales y no locales (en otras palabras, todos). Con tan sólo eso, todos los correos (ojo, todos) son enviados al smarthost.
El segundo paso es crear algunas reglas de reescritura de correos. Dado que todos los correos locales son dirigidos al exterior, resulta no sólo prudente, sino muy aconsejable tratar con un poco de delicadeza algunos buzones, como por ejemplo el de root, redireccionando su correo a una dirección menos llamativa. Para hacer esto, habrá que añadir algunas entradas como la que siguen al fichero /etc/exim4/conf.d/rewrite/31_exim4-config_rewriting:
root@+local_domains un_usuario.EN.eniac2000.com Tt
El formato de las reglas es bastante sencillo: la primera columna indica qué se va a reemplazar (en este caso, cualquier correo con dirigido a root y perteneciente a cualquiera de los dominios locales). La segunda columna contiene la dirección a la que se desea dirigir el correo (en el formato habitual, con su arroba), y la tercera agrupa los flags o disparadores con los que se desea que se active esta regla: Tt indica que se debe aplicar cuando la dirección de destino (o la dirección envoltorio a la dirección de destino) corresponda con el patrón especificado en la primera columna.
Con eso ya estaría todo. ¿Todo? No. Quedaría una cosa: crear en el gestor de correo de Google Appls las direcciones de correo que existan en la máquina local, más aquellas que se hayan configurado en las reglas de reescritura para recibir aquellos correos que se haya necesitado reescribir. ¿Ahora sí? Sí, ahora sí.
Espero que esta serie de entradas sean de utilidad a alguien. Cualquier tipo de sugerencias, mejoras o aclaraciones (así como correcciones ante meteduras de pata) serán bienvenidas.
[...] Tratamiento del correo dirigido a buzones locales Envía esta noticia a:Estos iconos hacen que este artículo sea enviado a sitios web de publicación de noticias. [...]