[Tutorial] Redirigir emails de root a gmail

Para todo lo relacionado con el mundo de la informática que no sea programación ni robótica: linux, seguridad, criptografía, trucos de sistemas operativos, tutoriales, redes, internet, ...

Moderador: nake

Avatar de Usuario
nake
管理者 (Admin)
Mensajes: 1994
Registrado: Vie Jun 04, 2010 4:10 pm
Ubicación: (sin(3t), 0, 0, t+10)
Contactar:

[Tutorial] Redirigir emails de root a gmail

Mensajepor nake » Jue Jun 25, 2015 9:43 pm

Explico esto porque he configurado hoy mis sistemas y servidores de esta forma para que me lleguen enseguida todos los problemas o mensajes importantes a mi email.

Introducción (omitible si no te interesa el por qué he hecho esto en mis sistemas)
La principal razón por la que he tenido que hacer esto es porque uno de los ordenadores que administro, que hace copias de seguridad de los archivos del despacho, se había quedado sin espacio en el disco duro y tenía miles de emails internos escritos a root diciendo que el script de copia había fallado.
Lleva varios meses así, fallando sin que yo me diese cuenta, a pesar de que de vez en cuando entro en ese sistema y miro si tengo un email. La pega era que en debian por defecto los emails de root se reenvían al primer usuario creado, en este caso una cuenta que no es la mía (yo solo tengo el usuario root en ese ordenador), al extrañarme no ver ningún email en tanto tiempo he entrado en dicha cuenta y he visto la burrada de mails que tenía...

¡Así que no más rollos! He configurado el email de root para que se redirija a un email mío a través de otro email que tengo en google. Y este verano montaré scripts que se encarguen de hacerme un resumen de lo que ha pasado en cada sistema en plan, cada mes o cada semana. De esta forma el curso que viene cuando esté en Japón podré adelantarme a los posibles problemas que puedan surgir en los sistemas de aquí.


Requerimientos
Doy por hecho que el sistema es debian (o basado en debian), es decir, que utiliza dpkg para instalar y configurar paquetes .deb. Si no pues tendréis problemas a la hora de configurar exim4.
Por defecto debian viene con exim4 ya instalado así que realmente no hace falta instalar nada.

Configuración
El primer paso es reconfigurar exim4 para que permita reenvío a un servidor smtp. Para ello reconfiguramos el paquete mediante el comando (todo como root):

Código: [Seleccionar todo] [Download] GeSHi © Codebox Plus

# dpkg-reconfigure exim4-config
 


Nos saldrá una ventana en consola en la que se nos hacen varias preguntas. La mayoría están bien con los valores por defecto. Lo único que hay que especificar claramente es:
En la primera pregunta elegir SMARTHOST utilizando SMTP o fetchmail.
Luego, la ruta al smarthost debe ser: smtp.gmail.com::587 (de esta forma se utilizará cifrado para las comunicaciones).
Por seguridad recomiendo que la ip de escucha sea la que viene por defecto (localhost en ipv4 e ipv6 si no recuerdo mal), y dejar en blanco la lista de hosts extra a los que se les permite mandar emails. De esta forma minimizamos la probabilidad de que mandemos spam o que alguien utilice nuestro pc a modo de lanzadera para mandar emails. Únicamente usuarios y servicios locales podrán enviar emails externos.

Luego hay que indicar el usuario y contraseña con el que conectarse al email.

Código: [Seleccionar todo] [Download] GeSHi © Codebox Plus

# vim /etc/exim4/passwd.client
 
Añade la línea siguiente:
*:TU_USUARIO@gmail.com:PASSWORD
 


Le dice a exim que todos los servidores se autentifican utilizando ese usuario y esa contraseña (como solo tenemos el servidor de google configurado no hay problema, y de hecho es mejor porque google utiliza muchos servidores distintos detrás de gmail.com). Recomiendo encarecidamente especificar una contraseña única para ese servicio, es decir, tener activado en google la opción de 2-step security y crear una contraseña que solo será usada para exim. Y recuerda comprobar que el archivo solo puede ser leído por root y por el grupo Debian-exim:

Código: [Seleccionar todo] [Download] GeSHi © Codebox Plus

# ls -al /etc/exim4/passwd.client
-rw-r----- 1 root Debian-exim 242 Jun 25 21:30 /etc/exim4/passwd.client
 


Si no fuese así chmod y chown:

Código: [Seleccionar todo] [Download] GeSHi © Codebox Plus

# chmod 640 /etc/exim4/passwd.client
# chown root:Debian-exim /etc/exim4/passwd.client
 


Actualizamos la configuración y reiniciamos exim:

Código: [Seleccionar todo] [Download] GeSHi © Codebox Plus

# update-exim4.conf
# /etc/init.d/exim4 restart
 


Redirigimos los emails de root a un email externo:

Código: [Seleccionar todo] [Download] GeSHi © Codebox Plus

# vim /etc/aliases
 

La línea importante es la de root, seguramente la única que tengas que cambiar (quitar tu nombre de usuario y poner el email), lo demás déjalo como estaba:

Código: [Seleccionar todo] [Expand] [Download] GeSHi © Codebox Plus



Este email no es el de gmail (aunque podría serlo), si no en el que quieres recibir los mensajes que se le envíen a root. El email desde el que se envían dichos mensajes si es el de gmail. Es decir, si cron tiene un error y manda un email a root, root lo redigirá a example@domain.com utilizando TU_USUARIO@gmail.com. Pero ambos pueden ser el mismo email.

Está bastante bien porque en el campo de a quién se le ha enviado el email dirá root@nombre_del_host, que puede ser especialmente cómodo si, como en mi caso, varios sistemas mandan emails utilizando la misma cuenta. Por ejemplo me llegaría a example@domain.com un email en dirigido a root@maquina1 desde mi_usuario@gmail.com. Es un poco extraño así explicado pero es por cómo funcionan los emails (el campo de "para" no tiene por qué ser quién recibe realmente el email).

Para probar que todo va bien utiliza el comando mail (desde cualquier usuario). CONTROL-D para aceptar, CONTROL-C dos veces para cancelar. Todos estos comandos son válidos:

Código: [Seleccionar todo] [Download] GeSHi © Codebox Plus

$ mail -s 'Hola root!' root
$ mail -s 'Tambien a emails externos!' quiensea@dondesea.com
$ echo 'MUAJAJAJA' | mail -s 'No me gusta ctrl-d' root
 


Recuerda que solo se ha configurado el sistema para redirigir los mensajes del sistema, los usuarios deberían de comprobar su correo interno de vez en cuando (comando: mail sin parámetros).
Mi clave pública de correo electrónico: http://www.nakerium.com/nakerium.gpg (Si no sabes lo que es lee este artículo)
Click aquí para ver mi email.


Programo aplicaciones a la carta (con soporte de por vida, para ingeniería o informática) y doy asesoramiento en seguridad informática. Si quieres más información mándame un email o un mensaje privado.

Volver a “Informática”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado