Exim

  • Luego de haber instalado Exim en mi servidor Debian 10 y configurar mi servidor Debian para que el correo a root sea redireccionado a mi casilla de GMail, me encontré con que los mensajes salientes eran rechazados por Google.

    Este artículo demuestra cómo deshabilitar IPv6 en exim4 para evitar problemas con el correo saliente hacia Google y para mejorar la seguridad de la instalación.

  • Al intentar enviar correo a cuentas de GMail desde una aplicación PHP en mi servidor Debian, me encontré con este error en el log de exim4 (/var/log/exim4/mainlog): Our system has detected that this message does not meet IPv6 sending guidelines regarding PTR records and authentication. Please review https://support.google.com/mail/?p=IPv6AuthError for more information.

  • Cuando Exim no puede enviar un correo (entrante o saliente) por alguna razón (por ejemplo, no puede contactar al servidor de correo del destinatario, o el dominio no existe), éste queda en la cola de mensajes del servidor. En artículos anteriores expliqué cómo listar la cola de mensajes de Exim y cómo borrar mensajes, sin embargo Exim no posee una opción o subcomando para vaciar completamente la cola de mensajes pendientes. Por ello, en este artículo explico cómo.

  • Algo tan sencillo como configurar un relay host SMTP para envío de correo (lo que debería resolverse en una línea de configuración) puede convertirse en una tarea tediosa si se utiliza Sendmail. Una de las tantas bostas que utilizan los sistemas Red Hat y derivados. Damn you Red Hat!

  • Muchas veces, servicios como el demonio cron envían un mail al usuario root cuando ocurre un problema o un evento de seguridad, por ejemplo:

    Date: Mon, 31 Mar 2014 04:02:06 -0300
    Message-Id: <201403310702.s2V726KK031219@debian.linuxito.com>
    From: root@debian.linuxito.com (Cron Daemon)
    To: root@debian.linuxito.com
    Subject: Cron <root@debian> run-parts /etc/cron.daily
    X-Cron-Env: <SHELL=/bin/bash>
    X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
    X-Cron-Env: <MAILTO=root>
    X-Cron-Env: <HOME=/>
    X-Cron-Env: <LOGNAME=root>
    X-Cron-Env: <USER=root>
    
    /etc/cron.daily/ntpdate:
    
    31 Mar 04:02:06 ntpdate[31216]: the NTP socket is in use, exiting
    

    En estos casos, la única forma de enterarse que ocurren errores es loguearse como root y verificar si existe correo sin leer:

    root@debian# mail
    No mail for root
    

    Para evitar tener que revisar las cuentas de correo locales de root en todos nuestros servidores, en general se define un alias para que el correo sea redireccionado a una cuenta de correo electrónico externa.

  • Hoy me tocó hacer pruebas de correo saliente con Exim 4 instalado en un servidor Debian 6.0.2. Básicamente tenía que determinar si los mails salían y si eran recibidos o rebotados. El procedimiento es sencillo.

    Primero se debe abrir el log principal de Exim en una consola usando tail con la opción '-f':

    tail -f /var/log/exim4/mainlog
  • En una instalación mínima de Debian, me encontré con que no hay soporte para el envío de correo:

    root@linuxito:~# mail
    -bash: mail: command not found
    

    Esto significa que no se soporta el envío y recepción de ningún tipo de mensaje, ya sea externo o interno, incluyendo los mensajes automáticos generados por aplicaciones y tareas programadas (cron). Especialmente cuando ocurren errores al ejecutar cronjobs.

    Este artículo explica cómo instalar y configurar exim4 para tener servicio de correo y configurar el servidor como sitio de Internet, lo que permite enviar correo electrónico hacia el exterior pero no recibir ni aceptar correo entrante.