TÍTULO: XMAIL
VERSIÓN LFS: 3.3 hasta CVS20020606
AUTOR: Richard Downing <richard.downing@bcs.org.uk>
TRADUCTOR: Proyecto LFS-ES
SINOPSIS: Cómo instalar xmail-1.8 en lugar de sendmail, postfix, qmail
y demás.
RECETA:
Esta receta explica cómo crear e instalar xmail en tu LFS. Xmail, de Davide
Libenzi, es un único servidor que sustituye, por ejemplo, a sendmail+qpopper+
fetchmail, o como ocurría en mi último sistema LFS, a postfix+procmail+
fetchmail+qpopper.
En dos palabras: ¿Porqué instalar tres o cuatro paquetes cuando uno sólo hace
todo el trabajo?
El gran problema con xmail-1.8 consiste en que Davide no ha terminado de
escribir un guión (script) de configuración o de instalación. Eso nos
proporciona unas cuantas oportunidades interesantes de meter la pata, sobre
todo si, como es mi caso, aún no acabas de sentirte demasiado cómodo en este
mundo de unix y sus derivados. Sin embargo, una vez que el paquete se ha
instalado, parece funcionar bien y hace todo lo que se dice que debe hacer.
Existe una lista de correo bastante activa, pero con un tráfico algo
excesivo.
Obtener y desempaquetar el paquete.
-----------------------------------
Descarga el paquete desde: http://www.xmailer.org
Es un fichero .tar.gz, así que tendrás que desempaquetarlo con el
procedimiento habitual y hacer a continuación cd xmail-1.8.
Lee el fichero readme.txt file, pues es todo lo que tienes disponible
como manual...
Crear los ejecutables.
---------------------
Elige tu Makefile en función de la arquitectura de tu sistema LFS:
make -f Makefile.lnx - para i86
make -f Makefile.slx - para SPARC
make -f Makefile.plx - para PPC
(Ten en cuenta que yo sólo tengo experiencia con el i86)
Puedes eliminar en este momento los ejecutables si tienes problemas de
espacio.
Esto creará Xmail y sus herramientas, que incluyen un guión (script) de
arranque para sistemas SysV que funciona en un LFS, pero volveremos sobre
ello más adelante.
Instalar Xmail.
--------------
Ahora empieza lo bueno. Haz su a root si aún no lo eres.
cp -R MailRoot /var
chmod 700 /var/MailRoot
La mayor parte de los ficheros de XMail se encuentran en /var/MailRoot, al
que sólo root tiene acceso.
cp XMail XMCrypt MkUsers sendmail /var/MailRoot/bin
Sin embargo, el binario CtrlClnt necesita ser accesible para todo aquel que
vaya a administrar el sistema xmail:
cp CtrlClnt /usr/bin
Copia el guión (script) de arranque para SysV y el Manual a algún lugar
adecuado:
cp xmail /etc/rc.d/init.d
cp -p readme.txt /usr/share/xmail/Manual
Reemplazar o crear un guión (script) sendmail
---------------------------------------------
Si tus interfaces MUA (Kmail, por ejemplo, cuando envías correo) con el MTA
utilizan SMTP puedes obviar este paso por completo, pero algunos MUA necesitan
un guión de sendmail que puedes crear de la siguiente manera.
El ejecutable de sendmail necesita que el bit SETGUID esté habilitado para
ejecutarse como root, lo que puede constituir un problema de seguridad.
Si ya tienes un guión de sendmail o un programa, quítalo del medio (el tuyo
podría estar en /usr/bin o en algún otro lado):
mv /usr/sbin/sendmail /usr/sbin/sendmail.orig
Copia el ejecutable snedmail de Xmail a un lugar adecuado y activa su bit SETUID
de modo que se ejecute como root.
cp sendmail /usr/sbin/sendmail.xmail
chmod +s /usr/sbin/sendmail.xmail
Crea ahora el guión de sendmail para inicializar el entorno y llamar al
ejecutable:
cat > /usr/sbin/sendmail << "EOF"
#!/bin/bash
# Este guión inicializa el entorno para el sendmail XMail y lo lanza
# a continuación. Hace falta para que aquellos programas que esperan
# comunicarse con sendmail puedan utilizar XMail.
if [ -z $MAIL_ROOT ]; then
export MAIL_ROOT=/var/MailRoot
fi
/usr/sbin/sendmail.xmail $*
# End /usr/sbin/sendmail
EOF
chmod +x /usr/sbin/sendmail
Configurar server.tab de Xmail.
-------------------------------
Es importante dejar claro que todos los ficheros de configuración de xmail
utilizan el caracter de tabulación (tab) como separador. No emplees espacios
o tabuladores adicionales, y cada línea de un fichero, INCLUSO LA ÚLTIMA, deben
finalizar con un retorno de carro (return). Es por eso, aparte de por lo que
se indica a continuación, por lo que no modifico los ficheros tab directamente
y prefiero el interfaz de control, como indicaré después.
Emplea tu editor de textos favorito para modificar /var/MailRoot/server.tab
declarando tu nombre de dominio, e indicar los nombres de los usuarios que
deben recibir los mensajes de error y los dirigidos al administrador de correo
(postmaster).
Tal como se distribuyen, los ficheros constituyen un punto de partida razonable
con un dominio llamado 'xmailserver.test' que puedes emplear para hacer pruebas
si lo deseas.
La configuración de las variables del servidor está bien descrita en la parte
12 del Manual (¡ que guardaste en /usr/share/xmail/Manual !) - o sea que mira
a ver qué necesitas en tu caso. Mi server.tab es:
"RootDomain" "109bean.org.uk"
"POP3Domain" "109bean.org.uk"
"PostMaster" "root@109bean.org.uk"
"ErrorsAdmin" "root@109bean.org.uk"
"DefaultSMTPGateways" "smtp.your-isp.com"
"RemoveSpoolErrors" "0"
"MaxMTAOps" "16"
"ReceivedHdrType" "0"
"FetchHdrTags" "+X-Deliver-To,+Received,To,Cc"
"Pop3SyncErrorAccount" "root@109bean.org.uk"
"DefaultSmtpPerms" "MRVZ"
(nota: No he registrado 109bean.org.uk, ya que nunca aparece fuera de mi red
local)
Configura el fichero domain.tab de modo que contenga el nombre de tu dominio:
"109bean.org.uk"
Crea a continuación una cuenta de 'control'. Yo llamé a la mía 'root'. Elige
una contraseña aparente y lo bastante complicada y busca su forma encriptada
con XMCrypt. Usaré 'ciao' como ejemplo:
/var/MailRoot/bin/XMCrypt ciao
Edita a continuación var/MailRoot/ctrlaccounts.tab para que tenga más o menos
este aspecto, en el que el segundo elemento es la cadena resultado de XMCrypt:
"root" "060c040a"
Ten en cuenta que las comillas están de verdad en el fichero, que el
separador ES un único tabulador, y que la línea termina con un retorno de
carro. Siempre que un fichero en formato 'tab' hace referencia a una
contrseña, se requiere una encriptada con XMCrypt. ¡Esto me dió un montón
de problemas!
Te hará falta al menos un usuario en /var/MailRoot/mailusers.tab, y mientras
lo modificas, aprovecha para borrar la cuenta que se usa como ejemplo denominada
'xmailuser'. Recuerda emplear XMCrypt para encontrar tu contraseña encriptada.
y con eso ya tenemos bastante para hacer que funcione XMail.
Lanzar XMail por primera vez.
-----------------------------
Lanza XMail en modo de depuración con la órden siguiente:
export MAIL_ROOT=/var/MailRoot
/var/MailRoot/bin/XMail -Md -Pl -Sl -Fl -Cl -Ll ...
donde ... indica cualquier otra opción que puedas elegir o necesitar - ver la
parte 19 del Manual. (Ya que estamos, las opciones anteriores acaban con una L
minúscula, ¡algo que no se aprecia demasiado bien con determinados tipos de
letra!).
Verás arrancar las distintas series de procesos (threads) de XMail y, si todo
parece estable, tendrás un XMail en funcionamiento. Si puedes lanzar otra
sesión en un terminal, un segundo xterm o hacer un login en otro tty, podrás
comunicarte con XMail (mira la próxima sesión) y observar la salida de los
mensajes de depuración. Cuando estés satisfecho, pulsa Ctrl-C y detén la
ejecución, contemplando cómo XMail va cerrando sus procesos con elegancia.
Instalar el guión (script) para sistemas SysV.
----------------------------------------------
Copiamos anteriormente el guión de arranque SysV a /etc/rc.d/init.d/xmail.
Modifícalo ahora para indicar los parámetros de la órden que quieras usar
o necesites.
La línea a modificar es la #13, y los parámetros:
XMAIL_CMD_LINE="-Qn 4 -Pl -Sl -Fl -Cl -Ll"
la próxima versión de esta receta tendrá una versión adaptada a LFS usando
las 'funciones'.
Enlaza el guión como te parezca oportuno en el sistema de rc.d. Yo hice:
cd /etc/rc.d
ln -s init.d/xmail rc0.d/K27xmail
ln -s init.d/xmail rc1.d/K27xmail
ln -s init.d/xmail rc2.d/K27xmail
ln -s init.d/xmail rc6.d/K27xmail
ln -s init.d/xmail rc3.d/S43xmail
ln -s init.d/xmail rc4.d/S43xmail
ln -s init.d/xmail rc5.d/S43xmail
si bien en realidad lo llevé a cabo con el editor de SysV-Init de KDE3.
El propósito es cerrar xmail antes que la red, pero después de cualquier
actividad que pueda generar tráfico en el correo, y lanzar xmail después
de poner en marcha la red pero antes de cualquier otra cosa que pueda
generar correo.
Ahora puedes ejecutar el demonio xmail como Dios manda mediante:
/etc/rc.d/init.d/xmail start
lo que te devolverá el pid asignado al demonio. A continuación puedes
instalar el resto de tus cuentas de correo y los enlaces a los servidores
de correo de tu proveedor de acceso a Internet, y ya que le estás pidiendo
a XMail que lo haga por tí, puedes contar con que la configuración sea
coherente.
Configurar otras cuentas de correo
----------------------------------
Teclea lo siguiente, no hace falta que seas 'root':
/usr/bin/CtrlClnt -s 109bean.org.uk -u root -p ciao \
useradd 109bean.org.uk newuser newpassword U
Por descontado, tendrás que emplear tu nombre de dominio, cuenta de
control y contraseña en lugar de las que aparecen en el ejemplo.
En estas órdenes con CtrlClnt (Cliente de Control) NO debes usar
contraseñas encriptadas MKCrypt.
Una vez se hayan creado las cuentas de correo de los usuarios, puedes
probar a enviar correo entre ellas de forma local. Configura tu MUA,
pongamos Mutt o Kmail, para que envíe el correo mediante smtp
localhost:110, y lo descargue con POP3 desde '109bean.org.uk' o como
sea que se llame tu dominio, con el nombre de usuario y la contraseña
apropiada.
Configurar la descarga de correo desde tu proveedor de acceso a Internet
------------------------------------------------------------------------
Suponiendo que tu proveedor de acceso a Internet (ISP) utiliza un servicio
POP3 a la antigua, sin encriptar, necesitas conocer tu nombre de usuario
para entrar en el sistema (login), que será de la forma (tu-en-tu-isp) y
la contraseña (tu-contraseña-en-tu-isp) junto con la dirección del servidor
POP3.
/usr/bin/CtrlClnt -s 109bean.org.uk -u root -p ciao \
poplnkadd 109bean.org.uk richard \
pop3.isp.com you-at-isp your-isp-pop-password CLR
Esto hará que se sincronicen automáticamente XMail y tu cuenta pop3
en pop3.isp.com, cada 2 minutos (120 segundos).
Para cambiar la frecuencia de sincronización a, digamos, cada 5 minutos,
tendrías que indicar el parámetro -Yi 300 (300 segundos) en
/etc/rc.d/init.d/xmail.
Si tu ISP soporta el uso de autorización APOP, pon APOP en lugar de CLR
en el ejemplo anterior.
Esto es todo lo que yo tuve que hacer, y me funciona. Buena suerte.
|