2012/10/22

EXIM, Debian y Gmail.


Quiero que mi NAS NSLU2 al encender me lo notifique por correo y con los nuevos teléfono móvil se puede consultar los buzones periódicamente, me aparece una buena opción para monitorear.


Googleando encontré varias alternativas entre script bajo python y programitas como SSMTP, cuando fui a instalarlo aptitude me notificaba que entraba en conflicto con EXIM4, que es el MTA que trae por defecto Debian 6.


De nuevo en san google encuentro la información necesaria para configurar usando una cuenta Gmail, para saber sobre la historia de EXIM les recomiendo el excelente articulo del la wikipedia.



Mis necesidades.

¿Que es lo que quiero? cuando se encienda haga un informe mediante un script y que lo mande a mi correo Gmail, mas adelante cuando aprenda mas seguro usare para otras indicaciones, como errores o si la capacidad del disco pudo allegado al limite.



Configuración de Exim.

EXIM ya viene instalado por defecto en Debian, así que pasamos a configurar, pero antes no logemos como root:
$ su

Ahora comenzamos a configurar.
# dpkg-reconfigure exim4-config

Es cual modificara el archivo "/etc/exim4/update-exim4.conf.conf"

La primera ventana seleccione "el correo se envía mediante un smarthost; sin correo local"



En nombre del sistema de correo: localhost (o el nombre de la maquina)



Direcciones IP en las que recibir conexiones SMTP entrante: 127.0.0.1 ; ::1


Otros destinos para los que se acepta el correo: "vació"



Nombre del dominio visible para los usuarios locales se recomiendan gmail.com yo use el nombre del dispositivo.



Dirección IP o nombre de equipo para el saliente: smtp.gmail.com::587 (si con :: si no da problema -53 bla bla bla)



¿Limitar el numero de consultas de DNS?: No (No, si usas una conexión continua. Si, si usas una conexión por demanda como puede ser discado telefónico)



¿Dividir la configuración en pequeños ficheros?: No (lee la descripción y toma la mejor opción según sus requerimientos)



Estas preguntas variaran dependiendo de lo que selecciones en la primera ventana, luego de esto se reiniciara exim y la configuración que se genero fue:

dc_eximconfig_configtype='satellite'
dc_other_hostnames=''
dc_local_interfaces='127.0.0.1'
dc_readhost='gmail.com'
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets=''
dc_smarthost='smtp.gmail.com::587'
CFILEMODE='644'
dc_use_split_config='false'
dc_hide_mailname='true'
dc_mailname_in_oh='true'
dc_localdelivery='mail_spool'



Configuración del correo Gmail.

Ahora vamos a "/etc/exim4/passwd.client" yo lo edito con nano.
# nano /etc/exim4/passwd.client

Y agregamos los siguiente:

gmail-smtp.l.google.com:yourAccountName@gmail.com:y0uRpaSsw0RD
*.google.com:yourAccountName@gmail.com:y0uRpaSsw0RD
smtp.gmail.com:yourAccountName@gmail.com:y0uRpaSsw0RD


Donde:
  • En yourAccountName@gmail.com yo coloque micuenta@gmail.com
  • En y0uRpaSsw0RD pueden usar una contraseña de aplicación en vez de la principal de google, por seguridad.

En la red hay muchas guías de como activar la Verificación en dos paso para Google y usar las contraseñas de aplicación


Ahora reiniciamos exim4 en caso de debian se hace así.
# /etc/init.d/exim4 restart
ó
# service exim4 restart



Como usar EXIM en un script.

Un ejemplo típico es el siguiente:

$ df -h | mail usuarioDestinatario@unDominio.com -s "Espacio en los discos"

Mandara el resultado del comando df.

No se le olvide remplazar usuarioDestinatario@unDominio.com por el corre del destinatario.

Otro ejemplo.



Mandar el contenido de un archivo de texto.





Información extra.

Puede ser que por algún motivo el correo no se puede entregar, por lo tanto se congela para ver los correo congelados y los que están en cola de salida.
# exim -bpu

Para eliminar un correo congelado o en cola de salida.
# exim - Mrm messageID

Para ver o monitorizar el funcionamiento de exim.
# tail -f /var/log/exim4/mainlog

Borrar todos los mensaje congelados.
# exim -bp | awk '/^ *[0-9]+[mhd]/{print "exim -Mrm " $3}' | sh

Si consulta el manual o información en la red encontraremos mas comandos, pero estos son lo mínimos que yo necesito.


Instalación.

En otro dispositivo instale Debian y no marque instalar herramientas básicas, así que debí instalar exim4 .




Fuentes:

[Ultima modificación Sáb 17 May 2014]
5 22XD: EXIM, Debian y Gmail. Quiero que mi NAS  NSLU2 al encender me lo notifique por correo y con los nuevos teléfono móvil se puede consultar los buzones periódicame...
< >