
# Installation de rainloop (webmail)

Télécharger la version communautaire sur le site, et la décompresser dans votre répertoire web (/home/www/ pour moi.)

## La documentation d'installation est ici

  [Documentation de l'installation de rainloop][8595ed87]

  [8595ed87]: http://www.rainloop.net/docs/installation/ "Rainloop: installation"

## Installation des dépendances: librairies et programmes

*Partie à améliorer .....*

Rainloop repose sur le language PHP et il y a beaucoup de librairies nécessaires à son fonctionnement. J'ai installé la base et regardé les erreurs pour charger au fur et à mesure les paquets nécessaires.

Je vais plutôt faire la liste de tous les paquets installés avec php; ce sera plus simple. Vous aurez aussi besoin de **unzip** pour dé-archiver rainloop.

    apt install unzip

    root@atom:/var/www/html/yaziknet# dpkg -l | grep php
    ii  libapache2-mod-php7.0        7.0.33-0+deb9u1                i386         server-side, HTML-embedded scripting language (Apache 2 module)
    ii  php-common                   1:49                           all          Common files for PHP packages
    ii  php7.0                       7.0.33-0+deb9u1                all          server-side, HTML-embedded scripting language (metapackage)
    ii  php7.0-cli                   7.0.33-0+deb9u1                i386         command-line interpreter for the PHP scripting language
    ii  php7.0-common                7.0.33-0+deb9u1                i386         documentation, examples and common module for PHP
    ii  php7.0-curl                  7.0.33-0+deb9u1                i386         CURL module for PHP
    ii  php7.0-json                  7.0.33-0+deb9u1                i386         JSON module for PHP
    ii  php7.0-opcache               7.0.33-0+deb9u1                i386         Zend OpCache module for PHP
    ii  php7.0-readline              7.0.33-0+deb9u1                i386         readline module for PHP
    ii  php7.0-sqlite3               7.0.33-0+deb9u1                i386         SQLite3 module for PHP
    ii  php7.0-xml                   7.0.33-0+deb9u1                i386         DOM, SimpleXML, WDDX, XML, and XSL module for PHP
    root@atom:/var/www/html/yaziknet#

## Création du répertoire où sera installé rainloop:

Nous installerons rainloop dans le répertoire par défaut de apache:

    /var/www/html/

    root@atom:/home/www# cd /var/www/html
    root@atom:/var/www/html# mkdir rainloop
    root@atom:/var/www/html# cd rainloop

## Téléchargement du programme et décompression dans son répertoire d'accueil

        wget http://www.rainloop.net/repository/webmail/rainloop-community-latest.zip
        unzip rainloop-latest.zip -d /var/www/html/rainloop

Il existe dans la documentation une approche différente **tout en un**, qui fait appel à un script **qui fait tout**. Voyez la documentation correspondante. Remplacez bien sûr **repository** dans les commandes suivantes par le répertoire dans lequel vous avez installé rainloop.

        url -sL https://repository.rainloop.net/installer.php | php

ou

        wget -qO- https://repository.rainloop.net/installer.php | php

## Configuration des permissions

Voilà les étapes à suivre:

• Donner les droits de lecture/écriture correspondants et nécessaires à l'application:

        cd /var/www/html/rainloop
        find . -type d -exec chmod 755 {} \;
        find . -type f -exec chmod 644 {} \;

• Déterminer l'utilisateur (pour nous, www-data du groupe www-data):

        cd /var/www/html/rainloop
        chown -R www-data:www-data .

## Mise en route du webmail dans apache

Un example de site web apache (dans /etc/apache2/sites-available), que j'ai appelé **webmail.conf**:

    <VirtualHost *:80>

    ServerAdmin webmaster@yojik.net
    ServerName webmail.yojik.net

    DocumentRoot /var/www/html/rainloop/

    <Directory "/var/www/html/rainloop/">
            Options Indexes MultiViews
            AllowOverride FileInfo AuthConfig Indexes
            Order allow,deny
            allow from all
            Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    </VirtualHost>

Le webmail sera accessible sous: **webmail.yojik.net**

## Validation du site dans apache et rechargement de apache:

    root@atom:/etc# a2ensite webmail
    root@adara:/home/www/rainloop# service apache2 restart

## Installation de l'interface sqlite de php

Pour certaines parties de rainloop, une base de données est nécessaire; il y a le choix entre plusieurs bases de données, comme mysql, postgresql et sqlite, que j'ai choisie.

Il nous faut donc installer les dépendances php correspondantes:

    root@adara:/home/www/rainloop# apt install php7.0-sqlite3
    etc...

On relance apache:

        root@adara:/home/www/rainloop# service apache2 restart
        root@adara:/home/www/rainloop#

## Ajout de l'accès en **https** de notre webmail (avec le programme certbot de letsencrypt):

    root@adara:/home/www/rainloop# certbot --apache

et suivre les instructions.

Relancez apache:

    root@adara:/home/www/rainloop# service apache2 restart
    root@adara:/home/www/rainloop#

Votre webmail est maintenant accessible. Il nous reste à le configurer.

### Configuration de notre webmail

Le panneau de configuration est acessible à cette adresse:

    http://webmail.yojik.net/?admin

Les identifiants **d'usine** sont les suivants:

* login: admin
* password: 12345

Ils ont à changer d'urgence(!) dans le panneau de configuration.

Vous pouvez ensuite ajouter vos domaines ainsi que les comptes de messagerie. Les images suivantes sont celles de la documentation officielle.

![Image du panneau de configuration: les domaines](../../Images/tutostretch/domain-11.png)

![Image du panneau de configuration: les comptes](../../Images/tutostretch/domain-12.png)

Vous pouvez parcourir le menu gauche pour adapter votre webmail à vos convenance: plugins, thèmes, language d'affichage etc ...
