[HowTo] Enviar mail usando Gmail desde la consola de Linux

Esto tiene tantos usos distintos que me he detenido dos minutos a pensarlo y no sé por donde empezar pero hay una premisa básica:

En Linux tenés que tener un MTA configurado SI O SI. Cuando Linux necesite hacerte saber algo, ponerte al corriente de algún incidente, la mayoría de las veces intentará mandarte un mail. Si nunca te llegó uno de estos mails seguramente es por que te olvidaste de especificar a quien debería llegarle la información pertinente con lo que el dueño de la casilla user en el dominio example.com se entera por ejemplo, que tu fail2ban acaba de banear al tercer intento a un bot sudafricano probando root:god, o que tu microprocesador está trabajando 50 grados por encima de la temperatura de régimen.

Hoy hablando con un amigo, me preguntó:

“¿Y como hacés?”

…Yo le contaba que mis PC y servidores se comunican conmigo usando cuentas de Gmail y prometí escribir al respecto, para explicarle a él, para que me sirva de ayuda memoria en caso de Alzheimer (lo he hecho tantas veces que casi podría tipear todo el setup de memoria, pero uno nunca sabe…) y para toda la posteridad que quiera habitar esta tierra de nadie.

Así que acá esta: Como hacer de una cuenta de Gmail el MTA por defecto de tu Linux para poder enviar mail usando el comando mail (valga la redundancia):

Hay varias formas distintas de poner en marcha un MTA para tu Linux y dependiendo de la complejidad del escenario hasta podrías necesitar de algo como Postfix, Qmail, Sendmail o Exim pero para el caso que nos compete en donde solo necesitamos que nuestra PC nos pueda enviar mails automáticamente desde una cuenta predefinida, con msmtp basta y sobra.

Sigue leyendo

[TIP] Loguear postfix en un archivo separado usando syslog-ng

Mas que TIP, es una nota mental, ya es la segunda vez que tengo que hacer esto y googlear al respecto por no acordarme como mierdas se suponde que debe uno hablarle a syslog-ng en su críptico idioma como se hace:

Por defecto postfix escupe todo su log en syslog, por costumbre uso como syslog la aplicación syslog-ng, cuando se usa syslog-ng toda la salida de postfix va a parar derecho a /var/log/messages.

Esto no tiene nada de malo cuando no se trata de monitorear /var/log/messages con frecuencia, pero cuando varias aplicaciones vuelcan toda su salida al mismo lugar y hay que estar pendiente del log en cuestión, el asunto se pone denso. Postfix en su versión menos verborrágica inunda el log con mensajes cuando el servidor SMTP tiene mucho tráfico. Por esto es que me interesaba separar el log de postfix a un archivo aparte.

Por convención usé /var/log/mail.log, syslog-ng deberá volcar en ese archivo toda la salida de postfix.

Como se hace:

Editar el archivo /etc/syslog-ng/syslog-ng.conf, agregar las siguientes líneas:

destination mail { file(«/var/log/mail.log»); };

filter mail { facility(mail); };

filter notmail { not facility(mail); };

log { source(src); filter(mail); destination(mail); };

Y no me pregunten que significa cada cosa ni por qué funciona, por que no tengo ni idea, ni ganas de investigar al respecto, ni tiempo para hacerlo, pero funciona, doy fe.