Gestión de correo con roundcube

Hace unos días vimos como instalar y configurar un servidor de correo en GNU Linux, utilizando una distribución Ubuntu, con los servicios POSTFIX, DOVECOT y SPAMASSIN. Todas las operaciones las realizamos desde la línea de comandos, terminal o shell. Y también vimos la configuración de un cliente de correo Thunderbird. Una parte importante que quedo pendiente fue instalar un webmail o panel web, para acceder al propio servidor desde cualquier dispositivo vía navegador. Para ello hoy hablaremos de Roundcube, en que consiste, su instalación, configuración y uso.

roundube-logo-1

Sobre Roundcube

Se trata de un proyecto de software libre y open source. Consiste en un panel webmail que funciona sobre un servidor con un servicio LAMP instalado. Funciona con diferentes “skins” que cumplen con los últimos estándares web para hacer una interfaz de usuario funcional y personalizable. Roundcube incluye otras librerías open source sofisticadas como PEAR, una biblioteca IMAP derivada de IlohaMail, un editor de texto enriquecido TinyMCE, la biblioteca Googiespell para la corrección ortográfica y WasHTML que provee un HTML seguro. El proyecto utiliza una licencia GNU GPL v.3 Podéis visitar su web oficial aquí.

Características principales:

  • Disponible en 70 idiomas.
  • Arrastrar y soltar para gestionar los correo.
  • Soporte completo para mensajes MIME y HTML.
  • Un sistema sofisticado para salvaguardar la privacidad.
  • Redactar mensajes con ficheros adjuntos.
  • Interfaz de administrador. (próxima versión)
  • Módulo de calendario. (próxima versión)
  • Atajos de teclado.
  • Vista previa de los adjuntos.
  • Múltiples identidades de remitente.
  • Opción de utilizar HTML enriquecido.
  • Reenvío de mensajes con ficheros adjuntos.
  • Opciones de búsqueda y contactos.
  • Corrección ortográfica.
  • Soporte para la administración de carpetas IMAP.
  • Compatibilidad para servidores SMTP externos.
  • Caché de acceso al buzón rápido.
  • Número ilimintado de usuarios y mensajes.
  • Plantillas de skins personalizables.
  • Soporte IDNA.
  • Funciones de Importación y Exportación.
  • Se puede utilizar una API para crear extensiones.

 

Instalación de Roundcube

Antes de proceder a la instalación nuestro servidor debe cumplir con unos requisitos mínimos:

  • Servidor web, se puede utilizar Apache, Nginx, Lighttpd entre otros.
  • Versión de PHP 5.3.7 o superior.
  • Servicio de base de datos con MYSQL, MariaDB, PostgreSQL, SQLite, MSSQL o Oracle.
  • Un servidor IMAP con soporte IMAP4
  • Un servidor SMTP (recomendado) o un configurar envíos con PHP

Se puede utilizar un script para Debian para realizar la instalación, pero creo que es mejor ir paso por paso y así ver que se cuece.

El servidor a utilizar será el mismo en DigitalOcean que utilizamos para instalar el servidor de correo. Instalaré primero el servicio web Apache, la instalación en Ubuntu es bien sencilla.

  1. apt-get -y update
  2. apt-get -y install apache2

Instalamos PHP

  1. apt-get -y install php5 php-pear php5-mysql
  2. apt-get -y install php5-mcrypt php5-intl

La instalación utilizará por defecto la «Timezone» del servidor, las podemos definir en el fichero php.ini para saber cual añadir podéis consultar el siguiente enlace.

  1. sed -i -e "s/^;date\.timezone =.*$/date\.timezone = 'UTC'/" /etc/php5/apache2/php.ini

El servidor MYSQL ya lo teníamos instalado.

Una vez realizados estos pasos nos descargamos la última versión de Roundcube, la última estable a fecha de éste artículo es la 1.1.3, que os podéis descargar desde su web.

roundcube-web-001

Descargaremos la última versión utilizando wget:

  1. wget https://downloads.sourceforge.net/project/roundcubemail/roundcubemail/1.1.3/roundcubemail-1.1.3-complete.tar.gz

Es recomendable trabajar desde el directorio /tmp. Lo descomprimimos en el directorio /var/www/

  1. tar -xzvf roundcubemail-1.1.3-complete.tar.gz
  2. #Movemos el directorio resultante a /var/www
  3. mv roundcubemail-1.1.3 /var/www/

Modificamos el propietario de la carpeta, para asignarla al grupo www-data de Apache

  1. chown nuestro-usuario:www-data /var/www/roundcubemail-1.1.3 -R

Y los permisos de las carpetas /temp y /logs

  1. chmod -R 775 /var/www/roundcubemail-1.1.3/temp
  2. chmod -R 775 /var/www/roundcubemail-1.1.3/logs

Creamos el apache-site y su configuración:

  1. nano /etc/apache2/sites-available/roundcube.ochobitsunbyte.pw

Y añadimos:

roundube-config-apache-01

Y :

roundube-config-apache-02Al final del fichero añadimos:

roundube-config-apache-03

Os podéis descargar el fichero de configuración aquí.

Ahora añadimos la configuración de la web a Apache:

  1. a2ensite roundcube.ochobitsunbyte.pw
  2. service apache2 reload

En la siguiente parte crearemos la base de datos y el usuario:

  1. mysql -u root -p

Desde la consola creamos el usuario que administrará la base de datos:

  1. CREATE DATABASE roundcubemail;
  2. GRANT USAGE ON roundcubemail.* TO blindguardian@localhost IDENTIFIED BY 'password-que-escogamos';
  3. GRANT ALL PRIVILEGES ON roundcubemail.* TO blindguardian@localhost;
  4. FLUSH PRIVILEGES;

Saludos del gestor con ‘exit’ y vamos a crear el fichero de configuración config.inc.php

Copiaremos el fichero de ejemplo:

  1. cp /var/www/roundcube/config/config.inc.php.sample /var/www/roundcube/config/config.inc.php

Y lo editamos con nuestros datos:

  1. nano /var/www/roundcube/config/config.inc.php

También podemos utilizar un instalador vía web, modificando la línea del fichero y añadir : «$config['enable_installer'] = true» y escribir en el navegador: «http://nuestra-ip/roundcube/installer«

En la primera parte nos mostrará información respecto a los requirimientos del servidor:

roundube-config-installer-01

Y al final:

roundube-config-installer-02

Si cumplimos con los requirimientos pasamos al siguiente paso.

roundube-config-installer-03

Sólo nos falta añadir las credenciales de la configuración IMAP y SMTP

En mi caso me ha fallado el envío, eso es debido a que mi servidor utiliza cifrado LTS por el puerto 587, debemos modificar las siguientes líneas en el fichero /var/www/roundcube/config/config.inc.php, de la siguiente manera:

  1. $config['smtp_server'] = 'tls://correo.ochobitsunbyte.pw';
  2. $config['smtp_port'] = 587;
  3. $config['default_host'] = 'ssl://correo.ochobitsunbyte.pw:993';

En la última línea indicamos que usaremos el puerto 993 en vez del 143 para el servicio IMAP de manera cifrada utilizando SSL.

Al hacer esto último y la preuba de SMTP e IMAP han salido bien, debemos eliminar la línea «$config['enable_installer'] = true» del fichero de configuración.

Trabajando con Rouncube

Al finalizar la instalación ya podemos acceder al panel, escribiendo, en mi caso: http://roundcube.ochobitsunbyte.pw/roundcube

roundcube-web-002

Al acceder veremos la interfaz de trabajo de roundcube:

roundcube-web-003

Si nos fijamos esa exactamente la misma que se utiliza en webmail de www.openmailbox.org

Lo primero que haremos es cambiar el idioma. Nos iremos en la parte superior derecha a «Settings«

roundcube-web-004

A parte del idioma en el mismo apartado, llamado «User Interface«, a parte del idioma podemos definiciar también la zona horaria, el horario, la fecha o el «skin» de la interfaz.

roundcube-web-005

Una vez hemos cambiado el idioma, podemos hacer más cambios, por ejemplo en el apartado «Configuración del servidor» donde podemos indicar por ejemplo que se borre el SPAM de manera automática o bien vaciar la papelera cada vez que cerremos sesión.

roundcube-web-006

Otra opción muy interesante es que podemos gestionar varias identidades de manera fácil.

También incluye una «Libreta de contactos«, con la posibilidad de importar contactos desde un fichero.

Respecto a los plugins

Algunos os habréis dado cuenta que hasta ahora no he hablado de la función de calendario, esto es debido a que necesitamos instalar un plugin para poder tenerlo en nuestro panel. De hecho tenemos una larga lista de funcionalidades adicionales que se pueden añadir mediante plugins. Para poder toda la lista de plugins podemos visitar ésta web. En el próximo capítulo veremos como instalar los plugins, en concreto el de calendario.

Conclusión y correos de prueba

Creo que como conclusión podemos decir que se trata de un magnífico producto, con muy buenas funcionalidades y que cuida mucho el aspecto estético. Si algun lector está interesado le puedo crear un correo de prueba dentro del dominio @ochobitsunbyte.pw, y de ésta manera utilizar su nuevo correo desde el panel http://roundcube.ochobitsunbyte.pw, de manera gratuita. Interesados que me envíen un correo a davidochobits@ochobitsunbyte.pw, con su nombre y el nombe de correo que desean, les enviaré las credenciales en un mensaje. Siempre entendiendo

Hasta la próxima.

Para el artículo me he servido de la documentación oficial encontrado en la página web del proyecto.