Cómo montar un servidor Webmail
Indice de Documentación
c) Guillermo Ballester Valor, 2003
[email protected]
Ogijares, Granada, España
Version 0.1 (01-Ene-2003)
Este documento tiene licencia GPL.
Sumario:
1-Introducción
2-Requisitos previos
2.1-Apache
2.2- Servidor IMAP
3-Instalación de Squirrelmail
3.1-Instalación desde RPMs.
3.2-Instalación desde tar.gz.
4-Ajuste final.
4.1- Configuración con PERL.
4.2- Configuración editando ficheros.
5-Instalando plugins
6- Prueba
1.-Introducción.
Este pequeño documento pretende ayudar a la instalación de un servidor Webmail. Está basado en el paquete Squirrelmail.
En algunas ocasiones, queremos acceder a nuestro servidor de correo desde sitios donde solamente es posible acceder a la Red
desde el puerto 80 (por donde circulan habitualmente las páginas web) . Si no se dispone de un servidor Webmail no podremos
hacerlo. Con Squirrelmail podemos consultar nuestro correo, gestionarlo, mandar correo desde nuestro servidor etc...
Es evidente que necesitamos tener previamente montados el servidor Web (normalmente apache) y un servidor de correo (
postfix o sendmail, entre otros). También hay que tener instalados necesariamente el módulo PHP4 en el servidor apache, un
servidor IMAP y resulta muy conveniente instalar PERL para configurar Squirrelmail. Veremos todo esto con detalle.
En lo que se refiere a la instalación de algunos paquetes mediante, utilizaremos como ejemplo la disposición de ficheros de
SuSE 8.0 . Normalmente, para otras distribuciones Linux, hay que hacer muy pocas modificaciones, menos aún si utilizamos
paquetes RPM.
2.- Requisitos previos.
Como sa ha indicado anteriormente, es necesario tener instalado un servidor Web (en lo que sigue supondremos Apache), un
agente de correo (Mail Transfer Agent: Sendmail, Postfix, qmail ...), un sevidor IMAP (imap, Cyrus-imap, ....). También es
necesario instalar los módulos PHP4 para apache y muy convenientemente PERL. En la distribución SuSE serían :
apache
apache-doc (*)
mod_perl (*)
mod_php4
perl (*)
postfix (**)
imap (***)
(*) Recomendables, pero no obligatorios.
(**) Puede intercambiarse por sendmail.
(***) Puede intercambiarse por cyrus-imap
No vamos a entrar en los detalles de cómo instalar cada uno de los paquetes anteriores, simplemente detallaremos algunas
modificaciones que hay que hacer a sus ficheros de configuración para que funcionen bien con squirrelmail.
2.1- Apache.
En cuanto al servidor Apache, resulta conveniente que las paginas del tipo index.php sean vistas por defecto en el directorio.
Así pues como superusuario habría que editar el fichero de apache, normalmente /etc/httpd/httpd.conf. En la línea donde
figura
<IfModule mod_dir.c>
DirectoryIndex index.html
</IfModule>
deberíamos añadir algunas entradas más
<IfModule mod_dir.c>
DirectoryIndex index.html index.htm index.php index.php3
</IfModule>
2.2- Servidor IMAP
En cuanto al agente de correo (MTA), no hace falta modificar nada de lo que se tenía si estaba funcionando correctamente.
El servidor IMAP más aconsejable según parece es imap, el cual incluye también los servicios POP2 y POP3 que pueden
activarse opcionalmente con ayuda del superdemonio inetd.
Si el servidor IMAP no estaba funcionando (podría tenerse activado POP3 pero no IMAP) entonces hay que activarlo. En el
fichero /etc/inetd.conf hay que descomentar la linea que activa el servidor IMAP (puerto 143).
Donde dice
# Imapd - Interactive Mail Access Protocol server
# Attention: This service is very insecure
# imap stream tcp nowait root /usr/sbin/tcpd imapd
hay que dejar
# Imapd - Interactive Mail Access Protocol server
# Attention: This service is very insecure
imap stream tcp nowait root /usr/sbin/tcpd imapd
Los desarrolladores del Paquete IMAP de la Universidad de Washington insisten en que el paquete es muy seguro, así que no
deberíamos preocuparnos demasiado por la advertencia que aparece en las lineas anteriores. Si somos paranoicos en exceso,
mejor dejamos la instalación del Webmail para otra ocasión ;-)
No nos olvidemos de activar el servicio IMAP
# rcinetd reload
3.- Instalación de squirrelmail.
En primer lugar, debemos bajarnos el paquete squirrelmail. Podemos hacerlo en formato tar.gz,rpm o deb (dependiendo de
qué distribución tengamos). Deberíamos elegir la última version estable. Para Debian es más sencillo elegir el formato deb,
para Red Hat el formato rpm es el adecuado. Los que tengan la distribución SuSE 8.1 pueden instalar el paquete squirrelmail
de forma habitual. Para los que tengan una SuSE 8.0, pueden intentar estos rpm construidos por el autor.
3.1 Instalación desde RPMs.
Con los paquetes en formato rpm, el procedimiento de instalación es el habitual
#) rpm -U el_paquete.rpm
Pero todavía hay que dar los últimos retoques.
3.2 Instalación desde ficheros fuente.
Con el paquete en formato tar.gz la cosa es un poco más complicada, pero solo un poco, no se preocupen. En primer lugar hay
/srv/www/htdocs/
que saber donde está el directorio raíz para los documentos en el servidor WWW. (Los más habituales son
y /usr/local/httpd/htdocs/). Con el servidor apache, esto puede consultarse en el fichero /etc/httpd/httpd.conf. Hay que
buscar una línea como la siguiente
DocumentRoot "/usr/local/httpd/htdocs"
que es la que nos indica dicho directorio. En ese directorio, como superusuario, deberemos descomprimir el paquete.
Suponiendo el directorio del ejemplo:
#) cp squirrelmail-1.xx.xx.tar.gz /usr/local/httpd/htdocs
#) cd /usr/local/httpd/htdocs
#) tar -xvzf squirrelmail-1.xx.xx.tar.gz
Se creará el directorio squirrelmail-1.xx.xx (aquí xx.xx son el número de revisión el parche que nos hayamos bajado).
Como medida de seguridad deberemos crear además un directorio para los datos temporales (ficheros adjuntos) a los que
sólamente tenga acceso el servidor web. Necesitaremos saber el usr / group bajo el que corre nuestro servidor. De nuevo, se
puede consultar en el fichero /etc/httpd/httpd.conf . Nos encontramos líneas como
User wwwrun
Group nogroup
que nos indican qué usuario es Apache y a qué grupo pertenece. Una opción puede ser crear el siguiente directorio
#) mkdir -p /var/lib/squirrelmail/attach
ahora tenemos que cambiar los permisos de los directorios creados. Suponiendo el user y group del ejemplo anterior:
#) chmod 730 /var/lib/squirrelmail/attach
#) chown -R wwwrun /var/lib/squirrelmail
#) chgrp -R nogroup /var/lib/squirrelmail
Ahora tenemos que hacer un pequeño cambio en squirrelmail. Cambiamos el directorio donde hemos desmpaquetado
squirrelmail. Si queremos que la página de inicio del servidor Webmail figure en una direccion como
http://www.mi_dominio.com/squirrelmail/
tenemos que cambiar el nombre del directorio
#) mv squirrelmail-1.xx.xx squirrelmail
por último, hay que hacer los ajustes finales.
4.- Ajuste final.
Es muy aconsejable tener instalado el paquete Perl. Con él vamos a poder hacer una buena configuración final con ayuda de
menus etc. De otra forma hay que editar un fichero y es bastante más engorroso.
4.1 Configuración con ayuda de Perl.
Si tenemos instalado Perl, la configuración a placer es extremadamente sencilla. Desde el directorio raíz para los documentos
en Apache vamos al directorio de squirrelmail
#) cd squirrelmail
Ahora invocamos el script de configuración
#) ./configure
Esto llamara al script config/conf.pl escrito en perl que nos ayudará a configurar squirrelmail. Aparecerá un menu como el
que sigue:
SquirrelMail Configuration : Read: config.php (1.2.0)
---------------------------------------------------------
Main Menu --
1. Organization Preferences
2. Server Settings
3. Folder Defaults
4. General Options
5. Themes
6. Address Books (LDAP)
7. Message of the Day (MOTD)
8. Plugins
9. Database
D. Set pre-defined settings for specific IMAP servers
C. Turn color on
S Save data
Q Quit
Command >>
Cada opción tiene a su vez otros menús y suelen estar documentados. Las opciones fundamentales que hay que ajustar
correctamente son:
1->El Nombre de tu organización, empresa o dominio
El lenguaje por defecto. Para el español es_ES
2-> Aquí todo es importante. El tipo de servidor imap que viene con el paquete imap es uw
3-> Importancia menor, pero se puede cambiar si se desea.
4-> Default character set iso-8859-1
Data directory ../data
Attachment directory /var/lib/squirrelmail/attach/ (o cualquier otro que se haya habilitado)
....
La versatilidad es muy grande, se pueden añadir todos los plugins con la opción 8.
Una vez finalizado, se salva la configuración.
4.2 Configuración editando ficheros.
Si no se tiene instalado Perl, entonces hay que editar el fichero de configuración. Desde el directorio raíz para los documentos
en Apache vamos al directorio de configuración de squirrelmail
#) cd squirrelmail/config
#) cp config_default.php config.php
En el fichero config.php deben figurar las siguientes asignaciones, si se ha seguido los ejemplos de este documento (se
sustityen si figura otra asignación):
$squirrelmail_default_language = ’es_ES’;
$data_dir = ’../data/’;
$attachment_dir = "/var/lib/squirrelmail/attach/";
Hay una larga serie de opciones que se pueden ajustar. Debería considerar instalar Perl y despues instalar con la ayuda de
conf.pl
5.Instalando plugins
Es aconsejable instalar de momento solamente los plugins que vienen en el paquete básico, ver si hay algún problema en la
instalación, y despues ir añadiendo los plugins que necesitemos. Eso se puede hacer fácilmente como se indica aquí.
No obstante, hay muchos cola
Comentarios de: Cómo montar un servidor Webmail (0)
No hay comentarios