Rainloop
Rainloop est un client de messagerie WEB libre écrit en PHP. Il supporte le POP, l'IMAP, les filtres Sieve, les identités alternatives ainsi que GPG et CardDav. Son interface est adaptative (compatible mobile) et épurée.
De part ses qualités, c'est un client tout choisi pour aller de pair avec une installation auto-hébergée.
Installation d'Apache2
INFORMATION
Dans la mesure où un service WEB est généralement placé en amont d'un mandataire inversé gérant le chiffrement à son niveau, la mise en place d'HTTPS ne sera pas abordée.Installation du serveur WEB et des dépendances du site
apt install --no-install-recommends apache2 php php-curl php-xml unzip
Création du répertoire destiné au site
mkdir /var/www/rainloop
Copie du fichier d'hôte virtuel par défaut pour Rainloop
cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/rainloop.conf
La ligne DocumentRoot /var/www/html
doit être remplacée par DocumentRoot /var/www/rainloop
sed -i '12 s/html/rainloop/' /etc/apache2/sites-available/rainloop.conf
ASTUCE
Il est également recommandé d'interdire l'accès WEB au répertoire data. Pour ce faire, il faut ajouter la directive suivante à l'hôte virtuel Apache rainloop.conf :<Directory /var/www/rainloop/data>
Require all denied
</Directory>
Déactiver l'hôte virtuel par défaut
a2dissite 000-default.conf
Activer le nouvel hôte virtuel
a2ensite rainloop.conf
Application de la configuration
systemctl restart apache2.service
Mise en œuvre
Installation de Rainloop
Téléchargement de l'archive
wget http://repository.rainloop.net/v2/webmail/rainloop-community-latest.zip -P /tmp/
Extraction de l'archive dans le répertoire du site
unzip /tmp/rainloop-community-latest.zip -d /var/www/rainloop/
Attribution des droits Apache2 à ce dernier
chown -R www-data: /var/www/rainloop
Configuration de Rainloop
Il faut ouvrir un navigateur et aller à l'adresse de votre serveur sur la page d'administration en ajoutant /?admin
à la fin de l'URL :
http:/mail.exemple.fr/?admin
Les identifiants sont admin/12345 (pensez changer le mot de passe).
Dans la section "General", changer la langue de l'interface client et administrateur en Français
Aller dans la section "Domaines" > Supprimez tout les domaines présents par défaut si vous n'en avez pas l'utilité > "Ajouter un domaine" > "Nom" : Ce que vous voulez mais je trouve propre de mettre le domaine MX > "IMAP" > "Serveur" > "mail.exemple.fr" et "Port" 993 > "Sécurité" "SSL/TTLS" et cochez la case "Utiliser l'identifiant court" > Pour le "SMTP", un bogue empêche d'ouvrir une sessions au dessus de TLSv1 donc il faut mettre "STRATTLS", le port est mis automatiquement quand vous sélectionnez la case "STARTTLS" (587) et vous cochez la même case pour l'identifiant court > "Ajouter"
Si vous avez un service Sieve, vous pouvez le renseigner dans la section "Configuration sieve".
Dans la section "Identifiant" > "Domaine par défaut" > exemple.fr (ça permettra de ne pas avoir à se taper le "@exemple.fr" à chaque fois qu'on veut se connecter
Une fois terminé, déconnectez-vous à l'aide du bouton en haut à droite et revenez à la page de d'identification des clients pour vous connecter à votre compte
http:/mail.exemple.fr
Mise à jour de Rainloop
La mise à jour de l'outil s'effectue en suivant les quelques étapes suivantes
- Télécharger la dernière version de Rainloop
- Là décompresser dans le
/tmp
- Copier le dossier "rainloop/v/N°VERSION" dans le même répertoire que la version de production (à coté de la version actuelle)
- Remplacer le numéro de version dans
/var/www/rainloop/index.php
- Remplacer le numéro de version dans
/var/www/rainloop/data/VERSION
- Donner la propriété à Apache2 sur la nouvelle version
chown -R www-data:www-data /var/www/rainloop/rainloop/v/N°VERSION
Configuration de CardDav
Une gestion centralisée par le réseau de vos contacts via CardDav est possible nativement. Il faut activer la fonctionnalité via l'interface d'adminstration afin de permettre aux utilisateurs d'y accéder dans leurs réglages.
ASTUCE
L'usage de Baïkal côté serveur est possible.Je fais le choix de Sqlite car il est inutile de déployer plus lourd pour un usage personnel. Il faut prendre soin d'installer le module PHP correspondant :
apt install --no-install-recommends php-sqlite3
Activez ensuite la fonction dans l'interface d'administration comme suit :
Il est maintenant possible d'accéder au menu dédié depuis les réglages d'un compte utilisateur.