GNU/Linux >> Tutoriels Linux >  >> Debian

Utilisation de la messagerie Web RoundCube avec ISPConfig 3 sur Debian Wheezy (Apache2)

Ce guide explique comment installer l'application de messagerie Web RoundCube sur un serveur Debian Wheezy exécutant ISPConfig et Apache2, et comment activer les plug-ins ISPConfig 3 pour RoundCube afin que les utilisateurs puissent effectuer des actions telles que la modification de leurs mots de passe de messagerie depuis RoundCube. Le webmail Roundcube est un client IMAP multilingue basé sur un navigateur avec une interface utilisateur de type application; il est livré avec des fonctions telles que la prise en charge MIME, le carnet d'adresses, la manipulation de dossiers, la recherche de messages et la vérification orthographique.

Je n'émets aucune garantie que cela fonctionnera pour vous !

1 Remarque préliminaire

Ce didacticiel suppose que vous utilisez Apache2 comme serveur Web sur votre serveur ISPConfig 3 ; ce tutoriel ne fonctionnera pas pour nginx. Je vais installer RoundCube à partir des dépôts Debian Wheezy - c'est une version relativement récente (0.7.2.9 vs 0.9.1 (version stable actuelle)).

RoundCube sera configuré de manière à être accessible depuis chaque vhost via l'alias /webmail (par exemple, http://www.example.com/webmail).

Si vous utilisez déjà une autre application de messagerie Web comme SquirrelMail, assurez-vous de la désactiver complètement ou au moins l'alias /webmail. Si vous avez installé SquirrelMail en tant que paquet Debian, vous pouvez trouver l'alias dans /etc/apache2/conf.d/squirrelmail.conf; commentez l'alias pour simplement désactiver l'alias /webmail ou commentez l'ensemble du fichier pour désactiver complètement SquirrelMail. N'oubliez pas de redémarrer Apache par la suite.

2 Création d'un utilisateur distant dans ISPConfig

Les plugins ISPConfig 3 pour RoundCube fonctionnent via l'API distante d'ISPConfig. Pour utiliser cette API, nous avons besoin d'un utilisateur distant. Pour créer un tel utilisateur, allez dans Système> Gestion des utilisateurs> Utilisateurs distants et cliquez sur le bouton Ajouter un nouvel utilisateur :

Indiquez un nom d'utilisateur et un mot de passe pour l'utilisateur...

... et activez les fonctions suivantes :

  • Fonctions serveur
  • Fonctions client
  • Fonctions utilisateur de messagerie
  • Fonctions d'alias de messagerie
  • Fonctions utilisateur du filtre anti-spam
  • Fonctions de la politique de filtrage des courriers indésirables
  • Fonctions de récupération de courrier
  • Fonctions de liste blanche du filtre anti-spam
  • Fonctions de liste noire du filtre anti-spam
  • Fonctions de filtrage des utilisateurs de messagerie

Cliquez ensuite sur Enregistrer.

3 Installer RoundCube

Nous pouvons installer RoundCube comme suit :

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

Vous verrez les questions suivantes :

Configurer la base de données pour roundcube avec dbconfig-common ? <-- Oui
Type de base de données à utiliser par roundcube :<-- mysql
Mot de passe de l'administrateur de la base de données :<-- yourrootsqlpassword (le mot de passe de l'utilisateur root MySQL)
Application MySQL mot de passe pour roundcube :<-- roundcubesqlpassword
Confirmation du mot de passe :<-- roundcubesqlpassword

Cela créera une base de données MySQL appelée roundcube avec l'utilisateur MySQL roundcube et le mot de passe roundcubesqlpassword.

Ouvrez ensuite /etc/apache2/conf.d/roundcube...

vi /etc/apache2/conf.d/roundcube

... et ajoutez la ligne Alias ​​/webmail /var/lib/roundcube. En plus de cela, ajoutez la configuration PHP à la section (j'ai mis en évidence les changements) :

# Those aliases do not work properly with several hosts on your apache server
# Uncomment them to use it or adapt them to your configuration
Alias /roundcube/program/js/tiny_mce/ /usr/share/tinymce/www/
Alias /roundcube /var/lib/roundcube
Alias /webmail /var/lib/roundcube

# Access to tinymce files
<Directory "/usr/share/tinymce/www/">
      Options Indexes MultiViews FollowSymLinks
      AllowOverride None
      Order allow,deny
      allow from all
</Directory>

<Directory /var/lib/roundcube/>
  Options +FollowSymLinks
  DirectoryIndex index.php

  <IfModule mod_php5.c>
    AddType application/x-httpd-php .php

    php_flag magic_quotes_gpc Off
    php_flag track_vars On
    php_flag register_globals Off
    php_value include_path .:/usr/share/php
  </IfModule>

  # This is needed to parse /var/lib/roundcube/.htaccess. See its
  # content before setting AllowOverride to None.
  AllowOverride All
  order allow,deny
  allow from all
</Directory>

# Protecting basic directories:
<Directory /var/lib/roundcube/config>
        Options -FollowSymLinks
        AllowOverride None
</Directory>

<Directory /var/lib/roundcube/temp>
        Options -FollowSymLinks
        AllowOverride None
        Order allow,deny
        Deny from all
</Directory>

<Directory /var/lib/roundcube/logs>
        Options -FollowSymLinks
        AllowOverride None
        Order allow,deny
        Deny from all
</Directory>

Redémarrez ensuite Apache :

/etc/init.d/apache2 restart

4 Configuration de RoundCube

Ouvrez /etc/roundcube/main.inc.php...

vi /etc/roundcube/main.inc.php

... et définissez $rcmail_config['default_host'] ='localhost' ; (ou le nom d'hôte ou l'adresse IP de votre serveur de messagerie s'il se trouve sur une machine distante) :

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

Sinon, RoundCube demandera un nom d'hôte avant chaque connexion, ce qui pourrait surcharger vos utilisateurs - nous voulons rendre l'utilisation aussi simple que possible.

Installez ensuite les plugins 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

Ouvrez ispconfig3_account/config/config.inc.php...

vi ispconfig3_account/config/config.inc.php

... et remplissez les informations de connexion de votre utilisateur distant ISPConfig et l'URL de l'API distante - mon installation ISPConfig s'exécute sur https://192.168.0.100:8080, donc l'URL de l'API distante est https://192.168 .0.100:8080/distant/ :

<?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/';
?>

Enfin ouvrez à nouveau /etc/roundcube/main.inc.php...

vi /etc/roundcube/main.inc.php

... et activez le plugin jquerui plus les plugins ISPConfig 3...

[...]
// ----------------------------------
// 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 changez le skin par défaut en classique (sinon les plugins ISPConfig 3 ne fonctionneront pas) :

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

C'est ça; vous pouvez maintenant accéder à RoundCube sous l'alias /webmail (par exemple, www.example.com/webmail). Connectez-vous avec l'adresse e-mail et le mot de passe d'un compte e-mail créé via ISPConfig :

Voici à quoi ressemble RoundCube :

Sous Paramètres> Compte, vous pouvez utiliser les plugins ISPconfig 3 pour RoundCube pour modifier vos paramètres, par exemple...

... vous pouvez définir un nouveau mot de passe pour votre compte de messagerie sans utiliser ISPConfig :

  • RoundCube :http://roundcube.net/
  • Plug-ins ISPConfig 3 pour RoundCube :https://github.com/w2c/ispconfig3_roundcube
  • ISPConfig :http://www.ispconfig.org/
  • Debian :http://www.debian.org/

Debian
  1. Comment compiler PHP 5.6 (PHP-FPM &FastCGI) avec Zend OPcache et APCu pour ISPConfig 3 sur Debian 7 (Wheezy)

  2. Comment installer Nextcloud avec ISPConfig 3.1

  3. Mise à niveau de Debian 6 Squeeze avec ISPConfig et courrier/postfix vers Debian 7 Wheezy

  4. Mettre à jour Apache2 de Debian Wheezy vers Jessie

  5. Comment installer RoundCube Webmail sur Debian 9

Utilisation de la messagerie Web RoundCube avec ISPConfig 3 sur Debian Wheezy (Apache2)

Utilisation de ngx_pagespeed avec nginx sur Debian Jessie/testing

Utilisation de mod_spdy avec Apache2 sur CentOS 6.4

Comment utiliser PHP 4.4.9 (FastCGI) avec Apache et ISPConfig 3 (Debian Wheezy)

Le serveur parfait - Debian Wheezy (Apache2, BIND, Dovecot, ISPConfig 3)

Utilisation de la messagerie Web RoundCube avec ISPConfig 3 sur Debian Wheezy (nginx)