Usando RoundCube Webmail con ISPConfig 3 en Debian Wheezy (nginx)
Esta guía explica cómo instalar la aplicación de correo web RoundCube en un servidor Debian Wheezy que ejecuta ISPConfig y nginx, y cómo habilitar los complementos ISPConfig 3 para RoundCube para que los usuarios puedan realizar acciones como cambiar sus contraseñas de correo electrónico desde RoundCube. Roundcube webmail es un cliente IMAP multilingüe basado en navegador con una interfaz de usuario similar a una aplicación; viene con funciones como compatibilidad con MIME, libreta de direcciones, manipulación de carpetas, búsqueda de mensajes y revisión ortográfica.
¡No emito ninguna garantía de que esto funcione para usted!
1 nota preliminar
Este tutorial asume que está utilizando nginx como servidor web en su servidor ISPConfig 3; este tutorial no funcionará para Apache. Voy a instalar RoundCube desde los repositorios de Debian Wheezy:es una versión razonablemente reciente (0.7.2.9 frente a 0.9.1 (versión estable actual)).
Mostraré cómo configurar un host virtual para RoundCube para que se pueda acceder a través del alias /webmail (por ejemplo, http://www.example.com/webmail).
2 Creando un usuario remoto en ISPConfig
Los complementos ISPConfig 3 para RoundCube funcionan a través de la API remota de ISPConfig. Para usar esta API, necesitamos un usuario remoto. Para crear dicho usuario, vaya a Sistema> Administración de usuarios> Usuarios remotos y haga clic en el botón Agregar nuevo usuario:
Proporcione un nombre de usuario y una contraseña para el usuario...
... y habilitar las siguientes funciones:
- Funciones del servidor
- Funciones de cliente
- Funciones de usuario de correo
- Funciones de alias de correo
- Funciones de usuario del filtro de spam de correo
- Funciones de la política de filtro de spam de correo
- Funciones de recuperación de correo
- Funciones de la lista blanca del filtro de spam de correo
- Funciones de la lista negra del filtro de spam de correo
- Funciones de filtrado de usuarios de correo
Luego haga clic en Guardar.
3 Instalación de RoundCube
Podemos instalar RoundCube de la siguiente manera:
apt-get install roundcube roundcube-plugins roundcube-plugins-extra
Verá las siguientes preguntas:
¿Configurar la base de datos para roundcube con dbconfig-common? <-- Sí
Tipo de base de datos que usará roundcube:<-- mysql
Contraseña del usuario administrativo de la base de datos:<-- yourrootsqlpassword (la contraseña del usuario root de MySQL)
Aplicación MySQL contraseña para roundcube:<-- roundcubesqlpassword
Confirmación de contraseña:<-- roundcubesqlpassword
Esto creará una base de datos MySQL llamada roundcube con el usuario de MySQL roundcube y la contraseña roundcubesqlpassword.
A continuación, vaya a su sitio web en ISPConfig. En la pestaña Opciones, verá el campo Directivas nginx:
Complete las siguientes directivas y haga clic en Guardar (no importa si tiene PHP habilitado para este vhost o no porque este fragmento de código usa el PHP predeterminado del sistema que se ejecuta bajo los datos de www del usuario y del grupo, lo cual es importante porque RoundCube está instalado fuera de la raíz del documento de vhost - en /var/lib/roundcube):
client_max_body_size 100M; location /roundcube { root /var/lib/; index index.php index.html index.htm; location ~ (.+\.php)$ { try_files $uri =404; include /etc/nginx/fastcgi_params; # To access SquirrelMail, the default user (like www-data on Debian/Ubuntu) must be used #fastcgi_pass 127.0.0.1:9000; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_intercept_errors on; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; } location ~* /.svn/ { deny all; } location ~* /README|INSTALL|LICENSE|SQL|bin|CHANGELOG$ { deny all; } } location /webmail { rewrite ^ /roundcube last; } |
[...] $rcmail_config['default_host'] = 'localhost'; [...] |
<?php $rcmail_config['identity_limit'] = false; $rcmail_config['remote_soap_user'] = 'roundcube'; $rcmail_config['remote_soap_pass'] = 'Sw0wlytlRt3MY'; $rcmail_config['soap_url'] = 'https://192.168.0.100:8080/remote/'; ?> |
[...] // ---------------------------------- // PLUGINS // ---------------------------------- // List of active plugins (in plugins/ directory) //$rcmail_config['plugins'] = array(); $rcmail_config['plugins'] = array("jqueryui", "ispconfig3_account", "ispconfig3_autoreply", "ispconfig3_pass", "ispconfig3_spam", "ispconfig3_fetchmail", "ispconfig3_filter"); [...] |
[...] // skin name: folder from skins/ $rcmail_config['skin'] = 'classic'; [...] |