Instalación RoundCube · 8 min read · Feb 09, 2026

Instalación de RoundCube webmail en Debian 8 (Jessie)

Este tutorial muestra la instalación de la última versión de RoundCube webmail en Debian 8. Roundcube es un cliente de webmail fácil de usar con soporte para IMAP y SMTP que se puede extender con plugins. En Debian 7, RoundCube estaba disponible como paquete .deb, no era la última versión, pero al menos era fácil de instalar con apt. Para la versión actual de Debian, ya no hay disponible un paquete de RoundCube, así que describiré la instalación desde el código fuente aquí. Este tutorial contiene un capítulo opcional que describe los pasos para conectar RoundCube con el Panel de Control de Hosting ISPConfig 3.

Requisitos previos

  • Sistema Operativo Debian 8.
  • Servidor web Apache con mod_php instalado. Si aún no hay apache instalado, entonces echa un vistazo a nuestra guía LAMP o configuración de Servidor Perfecto para instalar un entorno adecuado.
  • Un servidor de correo (SMTP + IMAP) al que Roundcube se conectará. Este puede ser el servidor local (por ejemplo, cuando uses una de las configuraciones de servidor perfecto) o un servidor remoto.
  • El nombre de host del servidor que usaré en este tutorial es server1.example.com con la dirección IP 192.168.1.100. Por favor, reemplaza eso con la IP y el nombre de host de tu servidor.

Instalación de RoundCube

Instalaré RoundCube en el directorio /opt/roundcube para asegurarme de que esta instalación no colisione con ningún paquete del sistema Debian. El primer paso es instalar wget, crear el directorio /opt/roundcube y descargar la última versión de RoundCube con wget en este directorio. La versión actual de RoundCube es 1.1.3 en el momento en que escribo este tutorial, consulta el sitio web de RoundCube para verificar si hay una versión más reciente que puedas usar.

Inicia sesión como usuario root en la consola de tu servidor, luego instala wget y el editor nano:

apt-get install wget nano

Crea el directorio y entra en él con el comando “cd”:

mkdir /opt/roundcube  
cd /opt/roundcube

Descarga el archivo tar.gz de RoundCube y descomprímelo:

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

Los archivos de RoundCube están ahora en la carpeta /opt/roundcube/roundcubemail-1.1.3. El siguiente paso es moverlos un directorio hacia arriba a /opt/roundcube.

mv roundcubemail-1.1.3/* .  
mv roundcubemail-1.1.3/.htaccess .

El punto al final de los dos comandos es requerido y parte del comando, ¡no lo olvides! Elimina el directorio vacío y el archivo tar.gz.

rmdir roundcubemail-1.1.3  
rm roundcubemail-1.1.3-complete.tar.gz

Y cambia el propietario de todos los archivos al usuario con el que se ejecuta el servidor Apache.

chown -R www-data:www-data /opt/roundcube

Instalar la base de datos de RoundCube

Roundcube requiere una base de datos para almacenar configuraciones de buzón, contactos, etc. Usaré MySQL (o MariaDB) aquí como backend de base de datos. Ahora crearemos una base de datos con el nombre “roundcubemail” y un usuario con el nombre “roundcube” en MySQL.

Inicia sesión en el servidor MySQL con el siguiente comando:

mysql --defaults-file=/etc/mysql/debian.cnf

Luego ejecuta los siguientes comandos en la consola de la base de datos MySQL para crear la base de datos y el usuario de la base de datos. Reemplaza la palabra “secretpassword” en los comandos a continuación con una contraseña de tu elección.

CREATE DATABASE roundcubemail;  
GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost IDENTIFIED BY 'secretpassword';  
flush privileges;  
quit

Ahora importaremos las tablas de RoundCube desde el archivo mysql.initial.sql en nuestra nueva base de datos.

Ejecuta el siguiente comando en la consola de Linux:

mysql --defaults-file=/etc/mysql/debian.cnf roundcubemail < /opt/roundcube/SQL/mysql.initial.sql

Configurar RoundCube y Apache

En este paso, configuraremos los detalles de la base de datos en RoundCube y añadiremos un archivo de configuración de RoundCube en Apache.

Comenzaré con la configuración de la base de datos en RoundCube. Ejecuta los siguientes comandos para crear un nuevo archivo config.inc.php basado en el archivo de configuración de muestra y ábrelo en el editor nano.

cd /opt/roundcube/config  
cp -pf config.inc.php.sample config.inc.php  
nano config.inc.php

Encuentra la línea de configuración de la base de datos que comienza con $config[‘db_dsnw’] y reemplázala con la siguiente línea:

$config['db_dsnw'] = 'mysql://roundcube:secretpassword@localhost/roundcubemail';

La palabra “secretpassword” debe ser reemplazada con la contraseña que elegiste para la base de datos.

A continuación, busca la línea “smtp_server” y establece el nombre de host de tu servidor SMTP aquí. En mi caso, el servidor de correo es el servidor local, así que estableceré el servidor en “localhost”.

$config['smtp_server'] = 'localhost';

Ahora es el momento de configurar Apache. Crearé un nuevo archivo de configuración roundcube.conf en la carpeta /etc/apache2/conf-available/.

nano /etc/apache2/conf-available/roundcube.conf

Agrega las siguientes líneas a ese archivo y guárdalo.

Alias /roundcube /opt/roundcube  
Alias /webmail /opt/roundcube  
  
  
 Options +FollowSymLinks  
 # AddDefaultCharset UTF-8  
 AddType text/x-component .htc  
   
   
 AddType application/x-httpd-php .php  
 php_flag display_errors Off  
 php_flag log_errors On  
 # php_value error_log logs/errors  
 php_value upload_max_filesize 10M  
 php_value post_max_size 12M  
 php_value memory_limit 64M  
 php_flag zlib.output_compression Off  
 php_flag magic_quotes_gpc Off  
 php_flag magic_quotes_runtime Off  
 php_flag zend.ze1_compatibility_mode Off  
 php_flag suhosin.session.encrypt Off  
 #php_value session.cookie_path /  
 php_flag session.auto_start Off  
 php_value session.gc_maxlifetime 21600  
 php_value session.gc_divisor 500  
 php_value session.gc_probability 1  
   
  
   
 RewriteEngine On  
 RewriteRule ^favicon\.ico$ skins/larry/images/favicon.ico  
 # reglas de seguridad:  
 # - negar acceso a archivos que no contienen un punto o que comienzan con un punto  
 # en todas las ubicaciones excepto el directorio del instalador  
 RewriteRule ^(?!installer)(\.\?[^\.]+)$ - [F]  
 # - negar acceso a algunas ubicaciones  
 RewriteRule ^/?(\.git|\.tx|SQL|bin|config|logs|temp|tests|program\/(include|lib|localization|steps)) - [F]  
 # - negar acceso a algunos archivos de documentación  
 RewriteRule /?(README\.md|composer\.json-dist|composer\.json|package\.xml)$ - [F]  
   
  
   
 SetOutputFilter DEFLATE  
   
  
   
 ExpiresActive On  
 ExpiresDefault "access plus 1 month"  
   
  
 FileETag MTime Size  
  
   
 Options -Indexes  
   
  
 AllowOverride None  
 Require all granted  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  

Las 2 líneas Alias en las dos primeras líneas hacen que RoundCube esté disponible como /roundcube y /webmail en tu servidor.

Habilita la configuración y recarga apache:

a2enconf roundcube  
service apache2 reload

Eso es todo, RoundCube ahora está completamente instalado en tu servidor, y puedes acceder a él en la IP y el nombre de host del servidor a través de los alias /roundcube y /webmail. La IP de mi servidor es 192.168.1.100; por eso puedo abrir RoundCube con http://192.168.1.100/webmail

La pantalla de inicio de sesión de RoundCube.

Roundcube - la primera página.

Instalación del plugin de RoundCube de ISPConfig (opcional)

Cuando tu servidor tiene iSPConfig 3 instalado, se recomienda encarecidamente instalar el plugin de RoundCube de ISPConfig. Esto permite a tus usuarios de correo gestionar sus respuestas automáticas, filtros de correo y otras configuraciones de buzón desde dentro de RoundCube.

El plugin de RoundCube de ISPConfig 3 está conectado a ISPConfig 3 con la API remota de ISPConfig. Para usar esta API, necesitamos un usuario remoto.

Inicia sesión en ISPConfig como usuario “admin”.

Para crear dicho usuario, ve a Sistema > Gestión de Usuarios > Usuarios Remotos y haz clic en el botón Agregar nuevo usuario:

Ingresa un Nombre de usuario y contraseña para el nuevo usuario remoto. Elegiré el nombre de usuario “roundcube” y la contraseña “!fdWEacBOG1d”.

La configuración del usuario remoto permite un control de acceso detallado; las siguientes funciones deben estar habilitadas:

  • Funciones del servidor
  • Funciones del cliente
  • Funciones de usuario de correo
  • Funciones de alias de correo
  • Funciones de usuario de filtro de spam de correo
  • Funciones de política de filtro de spam de correo
  • Funciones de fetchmail de correo
  • Funciones de lista blanca de filtro de spam de correo
  • Funciones de lista negra de filtro de spam de correo
  • Funciones de filtro de usuario de correo

Finalmente haz clic en Guardar.

Los siguientes pasos se realizaron en la consola de tu servidor. Inicia sesión como usuario root.

Ahora instalaremos el certificado SSL de ISPConfig en el almacén de certificados SSL de Debian.

cp /usr/local/ispconfig/interface/ssl/ispserver.crt /usr/local/share/ca-certificates/  
update-ca-certificates

Abre el archivo /etc/php5/cgi/php.ini

nano /etc/php5/apache2/php.ini

Desplázate hacia abajo hasta que veas la sección [openssl] del archivo y allí agrega la siguiente línea:

openssl.cafile=/etc/ssl/certs/ca-certificates.crt

Luego reinicia apache.

service apache2 restart

Para descargar el complemento, primero instala el cliente Git.

apt-get install git

Obtén la última versión del plugin de ISPConfig de RoundCube:

cd /tmp  
git clone https://github.com/w2c/ispconfig3_roundcube.git  
cd /tmp/ispconfig3_roundcube/

Y mueve el plugin al directorio de plugins de roundcube.

mv ispconfig3_* /opt/roundcube/plugins  
cd /opt/roundcube/plugins

Crea un nuevo archivo config.inc.php para el plugin basado en la configuración de muestra y abre el archivo en el editor nano.

mv ispconfig3_account/config/config.inc.php.dist ispconfig3_account/config/config.inc.php  
nano ispconfig3_account/config/config.inc.php

Completa los detalles del usuario remoto y guarda el archivo.

Reemplaza server1.example.com con el nombre de host del servidor. Cuando se utiliza SSL (HTTPS) para la conexión de la API remota, es importante que el nombre de host en la configuración de RoundCube coincida con el nombre de host del certificado SSL de la interfaz de ISPConfig. Puedes verificar el nombre de host del certificado SSL de ISPConfig con el comando:

openssl x509 -in /usr/local/share/ca-certificates/ispserver.crt -text -noout | grep Subject:

El resultado en mi caso es:

Subject: C=DE, ST=Niedersachsen, L=Lueneburg, O=ISPConfig UG, OU=IT, CN=server1.example.com/[email protected]

Así que el nombre de host “server1.example.com” en el archivo de configuración del plugin coincide con el nombre de host en el certificado SSL.

Ahora activaremos los nuevos plugins en RoundCube. Abre el archivo de configuración en un editor:

nano /opt/roundcube/config/config.inc.php

y agrega la siguiente línea al final del archivo:

$rcmail_config['plugins'] = array("jqueryui", "ispconfig3_account", "ispconfig3_autoreply", "ispconfig3_pass", "ispconfig3_spam", "ispconfig3_fetchmail", "ispconfig3_filter");

Ahora puedes iniciar sesión en RoundCube, las nuevas opciones se pueden encontrar en Configuración > Cuenta.

Cuenta general.

Configuración del filtro de correo.

Configuración de fetchmail.

Enlaces

  • Debian
  • Roundcube
  • Plugin de Roundcube ISPConfig
Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.