Inicio arrow Artículos arrow Linux arrow Sistema de correo con Postfix, Cyrus y MySQL (XII - Squirrelmail)
Menú Principal
Lo más leído
Consigue Firefox
Usuarios
993 registrados
1 hoy
5 esta semana
138 este mes
Último: gabity...
Formulario de acceso



... Regenerar clave
... Registro
Sistema de correo con Postfix, Cyrus y MySQL (XII - Squirrelmail) Imprimir E-Mail
viernes, 12 de mayo de 2006

Con el servidor de correo ya funcionando, atenderemos a la parte del frontend del usuario. Ya sea porque no queremos usar un gestor de correo o bien porque necesitamos acceder al correo vía web, la instalación de un programa como Squirrelmail que nos permita realizar las tareas más comunes se hace casi imprescindible. A través de este potente programa de webmail y además de poder acceder a todas las posibilidades del servidor de correo, el usuario podrá construir filtros de Sieve de forma casi automática, gestionar su contraseña, preparar mensajes de auto respuesta y muchas otras cosas de utilidad. Todo ello bajo un entorno seguro con cifrado de la conexión.


Configuración de Squirrelmail

La instalación por defecto del paquete de Squirrelmail queda bajo la ruta /usr/share/squirrelmail. Y es ahí donde nos dirigiremos para comenzar con la configuración del programa. Aunque podríamos modificar el fichero de configuración a mano, tenemos a nuestra disposición un script escrito en Perl que nos facilitará enormemente la tarea. Ejecutaremos dicho script tecleando lo siguiente en nuestra consola:

# /usr/share/squirrelmail/config/conf.pl

Lo cual nos devolverá una interfaz de texto bastante intuitiva que se parecerá bastante a lo siguiente:

SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Main Menu --
1.  Organization Preferences
2.  Server Settings
3.  Folder Defaults
4.  General Options
5.  Themes
6.  Address Books
7.  Message of the Day (MOTD)
8.  Plugins
9.  Database
10. Languages

D.  Set pre-defined settings for specific IMAP servers

C   Turn color off
S   Save data
Q   Quit

Command >>

A continuación, vamos a repasar los puntos del menú que requieren alguna explicación. Se acompañará con la pantala de configuración por defecto para el funcionamiento del servidor de correo instalado a partir de las indicaciones de este manual.

La primera opción del menú principal se refiere a los datos de nuestra compañía y generelmente sirve para  rellenar los datos de la página de bienvenida:

SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Organization Preferences
1.  Organization Name      : servermail.com
2.  Organization Logo      : http://www.servermail.com/LT.gif
3.  Org. Logo Width/Height : (135/94)
4.  Organization Title     : Webmail de servermail.com $version
5.  Signout Page           :
6.  Top Frame              : _top
7.  Provider link          : http://www.servermail.com
8.  Provider name          : servermail.com

R   Return to Main Menu
C   Turn color off
S   Save data
Q   Quit

Command >>

El segundo punto se refiere a la configuración del servidor de correo:

SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Server Settings

General
-------
1.  Domain                 : servermail.com
2.  Invert Time            : false
3.  Sendmail or SMTP       : SMTP

A.  Update IMAP Settings   : localhost:993 (cyrus)
B.  Update SMTP Settings   : localhost:25

R   Return to Main Menu
C   Turn color off
S   Save data
Q   Quit

Command >>

El punto 3 se refiere a la configuración de las carpetas de correo. El autor recomienda dejar la configuración como sigue:

SquirrelMail Configuration : Read: config.php (1.4.0)
---------------------------------------------------------
Folder Defaults
1.  Default Folder Prefix         :
2.  Show Folder Prefix Option     : false
3.  Trash Folder                  : INBOX.Trash
4.  Sent Folder                   : INBOX.Sent
5.  Drafts Folder                 : INBOX.Drafts
6.  By default, move to trash     : true
7.  By default, move to sent      : true
8.  By default, save as draft     : true
9.  List Special Folders First    : true
10. Show Special Folders Color    : true
11. Auto Expunge                  : true
12. Default Sub. of INBOX         : true
13. Show 'Contain Sub.' Option    : false
14. Default Unseen Notify         : 2
15. Default Unseen Type           : 1
16. Auto Create Special Folders   : true
17. Folder Delete Bypasses Trash  : false
18. Enable /NoSelect folder fix   : false

R   Return to Main Menu
C   Turn color off
S   Save data
Q   Quit

Command >>

El punto 8 nos va a servir para la instalación/desinstalación de los plugins que añadirán distintas funcionalidades a Squirrelmail. Tecleando el número correspondiente al plugin, lo instalaremos o desinstalaremos, según sea su estado. Cualquier plugin para Squirrelmail se instalará bajo la rama /usr/share/squirrelmail/plugins/<nombre_del_plugin>.

El resto de puntos se dejarán con su valor por defecto o, en su caso, los adaptaremos a nuestras necesidades concretas (por ejemplo, el punto 10 se adaptará a nuestras preferencias de idioma). Para terminar con la configuración, grabaremos los datos mediante la opción S y saldremos a la consola con la opción Q.

Suponiendo lanzado el servidor de apache, probaremos que Squirrelmail esté configurado de forma adecuada (el paquete por defecto deja instalada la extensión para apache, así que, de momento, no tenemos que modificar ningún fichero del servidor de web para lanzar Squirrelmail). Para ello, teclearemos la dirección del servidor en el navegador seguida de /webmail, lo cual nos dejará una pantalla similar a esta:

Squirrelmail Intro

Podemos terminar de probar la configuración de Squirrelmail mediante el añadido de /webmail/src/configtest.php a la dirección del servidor, lo cual realizará una conexión al servidor de correo y dará una información de estado del programa.


Instalación y configuración de avelsieve

Para instalar el plugin, nos situaremos a la altura de /usr/share/squirrelmail/plugins y descomprimiremos el archivo tar:

# tar xvzf avelsieve-1.9.6.tar.gz

El programa creará un directorio llamado avelsieve con todos los ficheros necesarios para su ejecución. Tendremos que cargar el plugin en Squirrelmail desde la opción correspondiente del programa de configuración y, posteriormente, borrar la extensión .sample al fichero ../avelsieve/config/config.php.sample. Hecho esto, ejecutaremos Squirrelmail desde nuestro navegador y, tras validarnos como un usuario de correo, veremos como una nueva opción llamada Filtros se ha añadido al menú superior de nuestro gestor de mail. Si pulsamos sobre esta opción, tendremos una pantalla parecida a esta:

avelsieve first time

Pulsando sobre el botón "Añadir una nueva regla" entraremos al menú de edición de reglas.

avelsieve add rule

El menú, como puede observarse en la imagen, es muy intuitivo. En el apartado Condición introduciremos los campos sobre los que aplicaremos las distintas condiciones. Podemos añadir tantos campos como sea necesario. El campo Acción ejecutará la acción correspondiente si las reglas se cumplen. Por último, con Acciones adicionales, tendremos la opción de seguir comprobando reglas sobre el mismo mensaje, almacenarlo, etc. Una vez terminada la definición de la regla, pulsaremos sobre el botón Añadir una nueva regla y la regla quedará añadida y habilitada.

avelsieve added rule


Instalación y configuración de change_sqlpass

Con change_sqlpass permitiremos que un usuario de nuestro sistema de correo gestione su propia contraseña. Esto es muy útil si no queremos tener que estar accediendo a web-cyradm constantemente o deseamos que el usuario cree su propia contraseña para cumplir con determinados requisitos legales.
La instalación del plugin es similar al anterior, por lo que descomprimiremos el archivo tar a la altura de /usr/share/squirrelmail/plugins:

# tar xvzf change_sqlpass-3.3-1.2.tar

Para el correcto funcionamiento de este plugin, es necesaria la descarga y aplicación del parche compatibility, que asegurará la compatibilidad de change_sqlpass con nuestra versión de Squirrelmail. La instalación de este plugin empezará con la extracción del correspondiente archivo tar sobre /usr/share/squirrelmail/plugins de la misma forma que hicimos con change_sqlpass. Seguidamente, aplicaremos el parche de la forma siguiente:

# patch -p0 < compatibility/patches/compatibility_patch-1.4.6.diff

Suponiendo que estamos situados en el directorio plugins de Squirrelmail. El archivo diff a cargar debe de corresponderse con nuestra versión de Squirrelmail, en este caso la 1.4.6. Esto aplicará el parche y ya podremos crear nuestro archivo config.php en el directorio /usr/share/squirrelmail/plugins/change_sqlpass. Para una configuración similar a la seguida por este manual, el archivo config.php quedaría como sigue:

<?php
   global $csp_dsn, $password_update_queries, $lookup_password_query,
          $force_change_password_check_query, $password_encryption,
          $csp_salt_query, $csp_salt_static, $csp_secure_port,
          $csp_non_standard_http_port, $csp_delimiter, $csp_debug,
          $min_password_length, $max_password_length, $include_digit_in_password,
          $include_uppercase_letter_in_password, $include_lowercase_letter_in_password,
          $include_nonalphanumeric_in_password;
   $csp_dsn = 'mysql://useradmin:password@localhost/mail';
   $lookup_password_query = 'SELECT count(*) FROM accountuser WHERE username = "%2" AND password = %4';
   $password_update_queries = array(
            'UPDATE accountuser SET password = %4 WHERE username = "%2"',
                                   );
   $force_change_password_check_query = '';
   $password_encryption = 'MYSQLENCRYPT';
   $csp_salt_static = '';
   $csp_salt_query = 'SELECT SUBSTRING_INDEX(password, "$", 1) FROM accountuser WHERE username = "%2"';
   $csp_secure_port = 443;
   $csp_non_standard_http_port = 0;
   $min_password_length = 6;
   $max_password_length = 0;
   $include_digit_in_password = 0;
   $include_uppercase_letter_in_password = 0;
   $include_lowercase_letter_in_password = 0;
   $include_nonalphanumeric_in_password = 0;
   $csp_delimiter = '@';
   $csp_debug = 0;
?>

Para una mejor comprensión de todos los parámetros, deberíamos abrir y leer las indicaciones que se dan en el fichero de ejemplo config.php.sample, por si nuestra configuración difiere de la aquí mostrada.

Una vez creado y guardado el archivo, añadiremos el plugin en el menú de configuración de Squirrelmail, como explicamos al principio de este capítulo. Con esta acción, tendremos, una vez en el interior de Squirrelmail y bajo el menú Opciones, un link llamado Cambiar Contraseña. Tras introducir la contraseña anterior y la nueva, el cambio de clave quedará realizado sobre la base de datos.


Conclusión

Como hemos visto, la verdadera potencia de Squirrelmail reside en la capacidad de adoptar plugins de terceros que añadirán casi cualquier tipo de funcionalidad a nuestro gestor webmail. Aquí hemos explicado la instalación de dos de ellos, pero es recomendable visitar la página oficial del proyecto (http://www.squirrelmail.org/ ) y rebuscar por el directorio de plugins a nuestra disposión. En él encontraremos casi cualquier cosa que permitirá adaptar el programa a nuestras necesidades.

Con la puesta en funcionamiento de Squirrelmail, nuestro sistema de correo queda configurado por completo y ofrece funcionalidad a los usuarios para poder acceder vía web. Sin embargo, en el último capítulo de este manual, veremos cómo añadir una nueva funcionalidad a nuestro sistema de correo: aprenderemos a crear un sistema de listas para dar soporte a los usuarios o crear plataformas de información que repartirán correo y comentarios a todo aquel que esté registrado y se una a dicha lista.

Comentario[s]
avelsieve no conecta con el servidor
Escrito por qrt el 2007-03-25 21:40:23
Al acceder a avelsieve aparece el siguiente mensaje de error: 
 
Could not log on to timsieved daemon on your IMAP server localhost:2000. 
Error Encountered: 255 
Please contact your administrator.  
 
¿A que puede deverse? 
 
Gracias
avelsieve no conecta
Escrito por juan el 2007-03-27 12:21:00
Lo primero, mira a ver si el servicio está corriendo (# netstat -an|grep LISTEN|grep 2000). 
Si el puerto es distinto al 2000, tienes que cambiar la configuración del plugin. 
Repasa la configuración de Cyrus-imap y lee bien el capítulo XI del manual, para probar si entras bien en la consola de Sieve con cualquier usuario.

Sólo los usuarios registrados pueden escribir comentarios.
Por favor, valídate o regístrate.

Powered by AkoComment 2.0!

 
< Anterior   Siguiente >