Roundcube

Integración de Roundcube con Plesk 10

1

If you prefer to read this post in english, click here.

Como ya hemos comentado en anteriores ocasiones, los webmails incluidos con Plesk 10 no eran de nuestro agrado, así que cuando sustituímos Plesk 9.5 Windows por Plesk 10.3 Linux, decidimos cambiarlo por Roundcube. El problema ha sido que los usuarios han echado de menos cierta funcionalidad de la que disponían con MailEnable, pero lo hemos podido solventar mediante el desarrollo de plugins o drivers para plugins ya existentes, que queremos publicar:

Función Descripción Descarga
Cambio de contraseña Driver para el plugin Password, que permite cambiar la contraseña del buzón utilizando la utilidad CLI mail, provista en Plesk 10.3. Enlace
Mensaje fuera de oficina Driver para el plugin Vacation, que permite establecer una respuesta automática a los correos recibidos, y de forma opcional, reenviar el correo a un tercero, utilizando la utilidad CLI autoresponder, provista en Plesk 10.3. Enlace
Redireccionamiento Plugin nuevo, desarrollado a partir de Vacation, que permite especificar varias direcciones e-mail a las que se reenviarán los correos recibidos, utilizando la utilidad CLI mail, provista en Plesk 10.3. Enlace

Todos los desarrollos asumen que Roundcube se está ejecutando en el mismo servidor que Plesk, y precisan de permisos de ejecución de las utilidades CLI para el usuario que esté ejecutando Apache. La ventaja de llamar nativamente a Plesk es que los cambios realizados en el panel se ven en el webmail, y viceversa, además de que se incluyen en la copia de seguridad de Plesk.

Roundcube and Plesk 10 integration

16

Si prefiere leer esta entrada en castellano, pulse aquí.

As mentioned previously, webmails included with Plesk 10 were not to our liking, so when we switched from Plesk 9.5 Windows to Plesk 10.3, we decided to replace them with Roundcube. The problem was that users have missed some functionality available with MailEnable, but we were able to solve by developing plugins or drivers for existing plugins which we want to publish:

Function Description Download
Password change Driver for Password plugin, which lets users change mailbox password using the CLI utility mail, provided in Plesk 10.3. Link
Vacation message Driver for Vacation plugin, which lets users define an automatic reply to received emails, and optionally, forward emails to third parties, using the CLI utility autoresponder, provided in Plesk 10.3. Link
Forward New plugin, developed from Vacation code, which lets users specify multiple e-mail addresses to which incoming e-mail will be forwarded, using the CLI utility mail, provided in Plesk 10.3. Link

All developments assume that Roundcube is running on the same server as Plesk, and require execute permissions over CLI utilites for user running Apache. The advantage of call natively Plesk through his CLI is that changes made in the panel are shown in the webmail, and vice versa, in addition to being included in the Plesk backup.

Update 23/12/2011: Changed link for Vacation message to GitHub repository, where latest version should be found, with contributions from other authors.

Instalación del webmail Roundcube en Plesk 10

5

La versión 10 de Plesk incluye en su versión Linux dos posibles webmail. Una es Horde, que si bien está bastante avanzada, tiene un skin que le da un toque viejuno bastante desagradable para los usuarios. La otra es Atmail, que si bien mejor algo, cuando quieres ponerle temas personalizables tienes que apoquinar más de $600, según la cantidad de dominios a gestionar. Así pues, buscando otras opciones, decidimos probar Roundcube, que resultó ser el más agradable, fácil de configurar, ligero y con un interfaz AJAX bien majete.

El tema es que a partir de la versión 10.2 de Plesk, han incorporado un sistema para añadir webmails externos, pero o bien somos extremadamente torpes, o simplemente no funciona correctamente. Y como ya conocemos a los amigos de Parallels, casi que me inclino por lo segundo. Además, tengo pruebas.

Sin embargo, es posible instalarlo, o bien como reemplazo de alguno de los webmails existentes, cosa que no termino de recomendar ya que en alguna actualización de Plesk volará todo, o bien desinstalando los dos existentes y dejando como única opción para los clientes el nuevo, cosa que tenemos instalada en producción.

Así pues, empezamos desinstalando los webmails existentes:

apt-get remove psa-horde psa-atmail

Después se descomprime el webmail, en /var/www/roundcube, por ejemplo.

wget http://sourceforge.net/projects/roundcubemail/files/roundcubemail-beta/0.5-RC/roundcubemail-0.5-rc.tar.gz
tar xvfz roundcubemail-0.5-rc.tar.gz
mkdir /var/www/roundcube
mv /roundcubemail-0.5-rc/* /var/www/roundcube

Como alternativa a utilizar el instalador que incorpora el webmail, también se puede seguir este post, lo que otorga mayor control sobre lo que se está haciendo, aunque está algo desfasado, ya que en las últimas versiones se pueden utilizar variables de reemplazo para acceder al domino actual, o al del servidor IMAP. No olvidarse de hacer desaparecer el directorio installer al terminar, para evitar posibles problemas.

Por último, ya que hemos eliminado los webmails conocidos para Plesk, éste no interferirá con el subdomino webmail, así que creamos un VirtualHost común a todos nuestros dominios, creando un fichero roundcube.conf en el directorio /etc/apache2/conf.d, con el siguiente contenido:

<VirtualHost 192.168.0.250:80>
    ServerName webmail
    ServerAlias webmail.*
    DocumentRoot /var/www/roundcube
    <Directory "/var/www/roundcube">
        allow from all
        php_flag magic_quotes_gpc Off
        php_flag register_globals Off
        php_flag include_path /usr/share/awl/inc
    </Directory>
</VirtualHost>

Por supuesto, hay que cambiar la IP por la que toque, así como las rutas, si no son las correctas. Tras un reinicio del Apache podremos acceder al webmail si teníamos los DNS configurados.

service apache2 restart

Por cierto, gracias a Florian Moker por su inestimable ayuda en esto.

Go to Top