Rainloop

De Wiki doc


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 https://www.rainloop.net/repository/webmail/rainloop-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

rainloop_admin_fr.png

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"

rainloop_admin_domaine.png

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

rainloop_admin_domaine_d%c3%a9faut.png

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

  1. Télécharger la dernière version de Rainloop
  2. Là décompresser dans le /tmp
  3. Copier le dossier "rainloop/v/N°VERSION" dans le même répertoire que la version de production (à coté de la version actuelle)
  4. Remplacer le numéro de version dans /var/www/rainloop/index.php
  5. Remplacer le numéro de version dans /var/www/rainloop/data/VERSION
  6. 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 :

rainloop_admin_contacts.png

Il est maintenant possible d'accéder au menu dédié depuis les réglages d'un compte utilisateur.