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.

21 Respuestas

  1. ssa dice:

    tengo una duda mi estimado y es en esta linea
    sed -i -e «s/^;date\.timezone =.*$/date\.timezone = ‘UTC’/» /etc/php5/apache2/php.ini
    cual es la variable a cambiar para mi zona horaria saludos

    • ssa dice:

      Pude resolver lo anterior
      desde el roundcube puedo recibir los correos y visualizarlos más no puedo realizar el envío desde roundcube al intentarlo aparece lo siguiente
      Error SMTP (530): No se pudo asignar el remitente «ejemplo@dominio.com» (5.7.0 Must issue a STARTTLS command first).

      Lo curioso es que desde el cliente de thunderbird si salen los correos sin inconvenientes agradeceré tu apoyo PD las configuraciones son las mismas que tienes en este tutorial con diferencia de la versión del roundcube de ahí en fuera todo es lo mismo

      • samuel dice:

        para resolverlo tienes que poner lo siguiente en estas lineas

        $config[‘smtp_user’] = ‘%u’;

        $config[‘smtp_pass’] = ‘%p’;

        con eso lograrás que el usuario se pueda autenticar usando los datos que ya ingresaste al iniciar sesión
        yo tenía el mismo problema creo que habrá que leer más espero te ayude

  2. samuel dice:

    hola que tal david hace ya algunos días tuve la oportunidad de comunicarme contigo a travez de correo y telegram y tengo el mismo problema que el chico del comentario anterior e hice lo mismo inclusive tuve que borrar varias veces mi servidor y copiar tal cual tienes tus configuraciones y tengo el mismo inconveniente con el cliente web saludos desde mexico

    • Hola Samuel,

      Es importante remarcar que hay que ceñirse tanto a la versión del sistema operativo como de los programas. Si son diferentes la guía es probable que no funcione.

      Saludos!

      • samuel dice:

        Un saludo david de hecho encontré el modo de utilizarlo en debian así que dentro de mi busqueda logré hacerlo con postfixadmin para administrar los dominios y cuentas nginx como servidor web mariadb como SGBD postfix y dovecot y como webmail roundcube tardé lo suficiente pero lo logré al fin y pues parte de lo debo a tus publicaciones gracias y como siempre saludos desde México

  3. Amiel dice:

    Saludos David, muy útil y sugerente su sitio, buen trabajo con este post en particular. Mira, yo hoy mismo he implementado el roundcube en una pequeña compañía donde comencé a trabajar hace poco más de un mes, lo instalé en una PC que pronto migrará a Software Libre completamente pero que por ahora corre Windows Server 2008, logré que funcionara todo correctamente, todo esto sin haber visto tu post ni haber consultado nada en Internet, pues allí no tengo acceso a la red de redes, pues bien, utilizando como servidor un paquete Wamp, creé la BD para roundcube, su usuario, configuré todo y luego inicié sesión con mi cuenta de corro y sí, me funciona elegantemente pero tengo algunas preguntas: logro acceder a mi usuario y entrar al correo etc, pero ¿cómo importar los usuarios de Mdaemon por ejemplo? Tengo la necesidad de administrarlo todo osea crear, importar los usuarios del Mdaemon para completar la tarea satisfactoriamente. Existe alguna forma de administrar el server de correo, herramienta o algo por el estilo?. Estoy migrando poco a poco los servicios de mi pequeño pero productivo servidor y necesito ayuda. Gracias de antemano.

  4. jose dice:

    Buenas tardes David, como se puede configurar la base de datos de roundcube para agregar usuarios virtuales, dominios, alias etc.. un saludo gracias!

    • Hola Jose,

      Tal y como indico en el primer párrafo del artículo primero tienes que tener un servidor de correo, en la web tengo diferentes artículos al respecto. Si quieres una gestión fácil, que además incluye Roundcube, puedes utilizar NethServer.

      https://www.ochobitshacenunbyte.com/2016/05/30/servidor-de-correo-con-nethserver/

      Un saludo

      • Jose dice:

        Buenas tardes David, pero intento instalar nethserver con los pasos que das en mi servidor de correo y no se instala, saludos

        • Hola Jose,

          Me tendrías que dar más detalles. Piensa que NethServer para instalarlo tienes que utilizar la ISO que te ofrecen.

          Saludos

          • jose dice:

            Hola David, te comento, estoy hacinedo un trabajo para clase, un servidor de correo electronico (en ubuntu server 16.04) con postfix, dovecot y roundcube, ya lo tengo todo instalado y en funcionamiento, pero tengo que gestionar usuarios, alias y dominios virtuales, pensé que una buena idea para gestionar usuarios seria nethserver, porque la verdad no se como gestionar los usuarios en roundcube y no encuentro tutoriales recientes que funciones, un saludo.

  5. Jonathan dice:

    Hola david , buen tutorial ,pero tengo un problema el cual me esta rompiendo la cabeza . Resulta que dentro de roundcubemail las cuentas de correo me aparecen «usuario@localhost». Como puedo hacer para que lo remplace por mi dominio?

  6. Anna dice:

    hola, es posible en roundcube programar el envio de correos?

  7. Fernando dice:

    Hola David, estoy luchando con la configuración de roundcube, logro el login con las cuentas alamcenadas en mysql, me va creando los usuarios en la base de datos de roundcube, pero no me muestra ninguna bandeja y no me deja configurar la sesión, el servidor es un postfix con courier como pop3 e imap, el pop3 anda muy bien, y el imap no puedo verlo aun, te agradecería cualquier sugerencia, oviamente es un tema de configuración pero ya revise muchas web y foros, pero no hay respuesta a este tipo de problema.

    Desde ya gracias

  8. aprendis dice:

    Buenas vi tu pagina y llego hasta la parte de la comprobacion delos usuarios y me da error en la parte de autenticacion y me dice que hay problemas con el IMAP. que se puede hacer

  1. 15 octubre, 2015

    […] En los últimos días hemos visto cómo crear un servidor de correo en nuestro GNU Linux, utilizando un servidor LAMP, junto con DOVECOT y SPAMASSIN. A posteriori vimos la creación de un servicio de listas de correo con mailman y por último la instalación de una interfaz web con roundcube. […]

  2. 4 noviembre, 2015

    […] identificador XMPP. Utiliza como interfaz de webmail el producto Roundcube, del que ya hablamos en su día en la web. Respecto a la parte de almacenamiento utiliza OwnCloud y nos ofrece de manera gratuita 1 […]

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.