En este capítulo se ofrece una rápida introducción a la instalación de Exim y un vistazo a su funcionalidad. Aunque Exim es muy compatible con sendmail en su comportamiento, sus ficheros de configuración son completamente diferentes.
El principal fichero de configuración se llama normalmente /etc/exim.conf o /etc/exim/config en la mayoría de las distribuciones de GNU/Linux, o /usr/lib/exim/config en configuraciones más antiguas. Puede averiguar dónde se encuentra el fichero de configuración ejecutando la orden:
$ exim -bP configure_file |
Quizá tenga que editar el fichero de configuración para reflejar los valores específicos de su sistema. En las configuraciones más comunes no hay mucho que cambiar, y una configuración que funcionase raramente tendría que modificarse.
De manera predeterminada, Exim procesa y envía todo el correo al instante. Si sufre un tráfico relativamente alto, también puede hacer que Exim recoja todos los mensajes en la cola de correo y sólo los procese a intervalos regulares.
Cuando gestiona correo en una red TCP/IP, Exim se ejecuta frecuentemente en modo demonio: durante el arranque del sistema /etc/init.d/eximlo invoca.[1] y se coloca en segundo plano, donde espera conexiones TCP entrantes por el puerto SMTP (normalmente el puerto 25). Esto resulta beneficioso cuando se tiene un tráfico significativo porque así Exim no tiene que iniciarse para cada conexión entrante. De manera alternativa, inetd puede gestionar el puerto SMTP y lanzar a Exim cuando haya una conexión en ese puerto. Esta configuración puede resultar útil si dispone de una memoria limitada y volúmenes bajos de tráfico.
Exim posee un complicado conjunto de opciones por línea de órdenes, incluyendo muchas que coinciden con las de sendmail. En vez de intentar reunir todas las opciones que se ajusten exactamente a sus necesidades, puede implementar los tipos más comunes de operaciones invocando órdenes tradicionales como rmail o rsmtp. Se trata de enlaces simbólicos a Exim (y si no, puede enlazarlos fácilmente). Cuando ejecute una de las órdenes, Exim comprobará el nombre que usó para invocarlo y él mismo usará las opciones adecuadas.
Hay dos enlaces a Exim que debería tener bajo cualquier circunstancia: /usr/bin/rmail y /usr/sbin/sendmail.[2] Cuando compone y envía un mensaje de correo electrónico con un cliente como elm, el mensaje se traslada a sendmail o a rmail para que lo envíen, que es por lo que /usr/sbin/sendmail y /usr/bin/rmail deberían apuntar a Exim. La lista de receptores para el mensaje se le pasa a Exim por la línea de órdenes.[3] Lo mismo sucede con el correo que entra por UUCP. Puede configurar los nombres de las rutas requeridas para que apunten a Exim introduciendo lo siguiente en el indicador del intérprete de órdenes:
$ ln -s /usr/sbin/exim /usr/bin/rmail $ ln -s /usr/sbin/exim /usr/sbin/sendmail |
Si quiere profundizar en los detalles de la configuración de Exim, debería consultar la especificación de Exim al completo. Si su distribución de GNU/Linux favorita no la incluye, puede obtenerla de las fuentes de Exim, o leerla en línea desde el sitio web de Exim en: http://www.exim.org.
[1] | Otros lugares posibles son /etc/rc.d/init.d y rc.inet2. El último es común en sistemas que usen una estructura al estilo BSD para los ficheros de administración del sistema en el directorio /etc. |
[2] | Éste es el nuevo lugar estándar de sendmail de acuerdo con el Estándar para el Sistema de Ficheros en GNU/Linux. Otro lugar común es /usr/lib/sendmail, que está más orientado a que lo usen programas de correo que no estén especialmente configurados para GNU/Linux. Puede definir estos dos nombres de ficheros como enlaces simbólicos hacia Exim para que los programas y guiones que invoquen a sendmail invoquen a Exim en su lugar para que haga las mismas cosas. |
[3] | De todos modos, algunos clientes usan el protocolo SMTP para pasarle los mensajes al agente de transporte, llamándole con la opción –bs. |