Roundcube | Tutoriel

Installation de Rouncube

Utilisation RoundCube Webmail Avec ISPConfig 3 sur Debian Wheezy (nginx)

Source de Tutoriel

Ce guide vous indique que vous installer l’application webmail RoundCube sur un serveur Debian Wheezy avec le panel dec configuration web, ISPConfig sous le serveur web Nginx, et comment activer les plugins ISPConfig plugins pour RoundCube afin que les utilisateurs peuvent effectuer des actions comme changer leurs mot de passe à partir de RoundCube. Roundcube Webmail est un client IMAP multilingue avec une interface utilisateur avec des fonctions comme le support MIME, carnet d’adresses, la manipulation des dossiers, la recherche de messages et la vérification orthographique.

1 Note préliminaire

Ce tutoriel vous suppose que vous utilisez nginx comme serveur Web et non pas Apache2. Je vais installer RoundCube depuis les dépôts Debian Wheezy – c’est une version stable récente (0.7.2.9 vs 0.9.1 (version actuelle)).

Je vais vous montrer comment configurer un serveur virtuel pour RoundCube afin qu’il puisse être accessible par l’alias / webmail (par exemple http://www.example.com/webmail).

2 Création d’un utilisateur

Les plugins pour ISPConfig et pour RoundCube travaillent via l’API à distance avec ISPConfig. Pour utiliser cette API, nous avons besoin d’un utilisateur distant. Pour créer un tel utilisateur, sélectionnez System > User Management > Remote Users et cliquez sur le bouton Add new user pour ajouter cette utilisateur :

image81

Créer un nom d’utilisateur et mot de passe …

image80

… Et activer les fonctions suivantes:

  • Server functions
  • Client functions
  • Mail user functions
  • Mail alias functions
  • Mail spamfilter user functions
  • Mail spamfilter policy functions
  • Mail fetchmail functions
  • Mail spamfilter whitelist functions
  • Mail spamfilter blacklist functions
  • Mail user filter functions

Ensuite, cliquez sur Enregistrer.

image85

3 Installer RoundCube

Installer RoundCube comme ceci :

apt-get install roundcube roundcube-plugins roundcube-plugins-extra

Activer les functions suivantes  :

image84

image83

image82

Cela va créer une base de données MySQL appelée roundcube Roundcube avec l’ utilisateur roundcube et le mot de passe roundcubesqlpassword

Ensuite, allez vers votre site dans ISPConfig. Dans l’onglet Options, et dans le champ nginx Directives :

Remplissez les directives suivantes et cliquez sur enregistré sur le bouton Save (il n’a pas d’importance si vous avez activé PHP pour ce serveur virtuel ou pas parce que ce bout de code utilise par défaut le PHP du système qui fonctionne sous l’utilisateur et le groupe www-data qui est important parce que RoundCube est installé en dehors de la racine de l’hôte virtuel – dans /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;
}

Avec cette configuration, RoundCube sera accessible dans les URL http://www.example.com/webmail et http://www.example.com/roundcube.

4 Configurer Roundcube

Editer le fichier /etc/roundcube/main.inc.php

nano /etc/roundcube/main.inc.php

et définir $rcmail_config['default_host'] = 'localhost'; (ou le nom d’hôte ou l’adresse IP de votre serveur de messagerie si elle est sur ​​une machine distante) :

[...]
$rcmail_config['default_host'] = 'localhost';
[...]

Sinon RoundCube demandera un nom d’hôte avant chaque connexion de vos utilisateurs.

Ensuite, installez les plugins de ISPConfig 3 pour RoundCube :

cd /tmp
git clone https://github.com/w2c/ispconfig3_roundcube.git
cd /tmp/ispconfig3_roundcube/
mv ispconfig3_* /var/lib/roundcube/plugins
cd /var/lib/roundcube/plugins
mv ispconfig3_account/config/config.inc.php.dist ispconfig3_account/config/config.inc.php

Editer le fichier ispconfig3_account/config/config.inc.php...

nano ispconfig3_account/config/config.inc.php

.. Et remplir les informations de connexion de votre utilisateur distant ISPConfig et l’URL de l’API à distance – l’installation d’ISPConfig fonctionne sur https://192.168.0.100:8080, si l’URL de l’API à distance est https://192.168.0.100:8080/remote/ :

[...]
$rcmail_config['identity_limit'] = false;
$rcmail_config['remote_soap_user'] = 'roundcube';
$rcmail_config['remote_soap_pass'] = 'roundcube';
$rcmail_config['soap_url'] = 'http://192.177.167.44:8080/remote/';
[...]

Enfin éditer à nouveau le fichier /etc/roundcube/main.inc.php …

nano /etc/roundcube/main.inc.php

… Et activer le plugin de jquerui

[...]
// ----------------------------------
// 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");
[...]

…et changer le skin par défaut (sinon le plugins ISPConfig 3 ne fonctionnent pas) :

[...]
// skin name: folder from skins/
$rcmail_config['skin'] = 'classic';
[...]

C’est tout; maintenant vous pouvez accéder à RoundCube sous l’alias /webmail (par exemple www.example.com/webmail). Connectez-vous avec l’adresse e-mail et mot de passe de votre compte de messagerie créé avec ISPConfig :

image93

image92

image91

image90//