3. Instalación de qmail

Este proceso es algo extenso, pero en general involucra tareas muy sencillas que difícilmente podrían fallar si se realizan con cuidado.

3.1. Crear el directorio de qmail

Lo primero que debemos hacer es crear el directorio de trabajo para qmail. La sugerencia de los creadores es el directorio /var/qmail (hay pocos motivos para cambiarlo.) Así que el administrador ejecutará algo como:

                 # mkdir /var/qmail
         
Si se desea emplear otra ubicación, esta se debe registrar en el archivo conf-qmail. En lo que sigue, asumiremos la ruta arriba indicada.

3.2. Usuarios para qmail

Qmail requiere la creación de diversos usuarios para su correcta ejecución. Estos son: alias, qmaild, qmaill, qmailp, qmailq, qmailr, y qmails. Si por algún motivo no se puede emplear estos pseudo-usuarios (por ejemplo, si algún usuario real coincide con los mencionados), entonces se deberá especificar los nuevos valores en el archivo conf-users. Igualmente se requiere de la creación de dos grupos (especificados en el archivo conf-groups.)

Para crear los usuarios y grupos usar:

# groupadd nofiles
# useradd -g nofiles -d /var/qmail/alias alias
# useradd -g nofiles -d /var/qmail qmaild
# useradd -g nofiles -d /var/qmail qmaill
# useradd -g nofiles -d /var/qmail qmailp
# groupadd qmail
# useradd -g qmail -d /var/qmail qmailq
# useradd -g qmail -d /var/qmail qmailr
# useradd -g qmail -d /var/qmail qmails
	

3.3. Compilar y configurar el directorio de trabajo

En este paso se generan los ejecutables de qmail y se prepara el directorio de trabajo de qmail:

# make setup check
	

3.4. Especificar el nombre del host

Luego se deberá especificar el nombre de nuestro host (incluyendo el dominio completo) mediante el comando config-fast del siguiente modo:

# ./config-fast marquesa.unima.edu.pe
	

3.5. Establecer los "alias" del sistema

En qmail, el correo para los usuarios especiales postmaster, MAILER-DAEMON y root, es redirigido hacia el pseudo-usuario alias. Esto requiere de la existencia de ciertos archivos en el "home directory" del pseudo-usuario alias:

# (cd ~alias; touch .qmail-postmaster \
         .qmail-mailer-daemon .qmail-root)
# chmod 644 ~alias/.qmail*
	

3.6. Especificar el agente de procesamiento de correo

El correo dirigido a los usuarios locales debe ser almacenado en algún archivo o directorio (el mailbox.) Esto normalmente NO lo realiza el MTA, sino que lo delega a un programa auxiliar. Sendmail normalmente emplea a procmail para este fin. A fin de realizar una rápida puesta a punto, mantendremos el uso de procmail (luego veremos el agente alternativo que proporciona qmail llamado qmail-local.) Para esto tan sólo es necesario efectuar el siguiente comando:

# cp /var/qmail/boot/proc /var/qmail/rc
	

Sin embargo, procmail en este caso será ejecutado mediante un usuario no privilegiado, por lo que es menester cambiar los permisos del directorio de los mailbox (que se mantendrá en /var/spool/mail.) Para RedHat 7.1:

# chmod 1777 /var/spool/mail
	
Nótese que qmail recomienda cambiar el mailbox; sin embargo, esto requiere algunos pasos adicionales que no veremos aquí. Lea la documentación respectiva (archivo INSTALL.mbox) para más detalles.

3.7. Eliminar Sendmail

Lo primero que debemos hacer es asegurarnos de que sendmail no está en ejecución, por lo que habremos de buscarlo en la tabla de procesos:

# ps ax | grep sendmail
  698 ?        S      0:00 sendmail: accepting connections
  787 pts/0    S      0:00 grep sendmail
	
La primera línea indica que sendmail está en ejecución, por lo que debemos hacer que termine. Para esto usaremos cualquiera de los siguientes comandos (basta con uno) en orden de preferencia:
# service sendmail stop

# /etc/rc.d/init.d/sendmail stop

# kill 698
	
El "698" del último comando corresponde al PID del proceso y se obtiene del comando anterior. En su sistema deberá presentarse otro valor. Asegúrese (volviendo a lanzar "ps") de que sendmail ya no esté en ejecución.

Luego debemos asegurarnos de que sendmail no se vuelva a ejecutar. La manera más sencilla consiste en desinstalarlo mediante:

	# rpm -e sendmail
	
Probablemente deberá desinstalar otros paquetes (como fetchmail y mutt.) Para forzar la desinstalación de sendmail:
	# rpm -e --nodeps sendmail
	
El archivo REMOVE.sendmail muestra otras maneras de trabajar sin necesidad de eliminar el paquete sendmail, aunque lo anterior es más recomendable.

3.8. Instalar el "reemplazo" de sendmail

Diversos programas asumen la existencia de sendmail y lo invocan ciegamente. Por esto, qmail proporciona un "reemplazo" básico para sendmail, a fin de mantener operativas a las aplicaciones mencionadas.

# ln -s /var/qmail/bin/sendmail /usr/lib/sendmail
# ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
	

3.9. Instalar los manuales

Qmail proporciona páginas de manual para diversas utilidades. Estas se instalan en /var/qmail/man. Sin embargo, el sistema "man" debe ser configurado para acceder a éste.

Para esto, añada el directorio de los manuales mediante el la directiva MANPATH en el archivo /etc/man.config:

...
MANPATH /usr/share/man
MANPATH /usr/man
MANPATH /usr/X11R6/man
MANPATH /usr/lib/perl5/man
MANPATH /usr/kerberos/man
MANPATH /usr/local/man

# Añadido para qmail
MANPATH /var/qmail/man
...
Luego, Ud. deberá probar algo como man qmail-send.