E-mail / Debian 10 : 3/3

Mémento 11.3 - Webmail Roundcube

Le service Webmail fera appel au logiciel Roundcube qui est un client de messagerie au même titre que Thunderbird mais s'exécutant sur serveur.

Celui-ci servira d'interface entre le serveur de courrier et n'importe quel navigateur Web connecté à Internet ce qui le rend pratique pour une consultation de son courrier en situation de mobilité.

12 - Roundcube

12.1 - Installation et configuration de base

Comme avec PostfixAdmin l'installateur Roundcube lira le fichier debian.cnf pour se connecter sur MySQL, voir § 7.1 du mémento 11.1.

Installez Roundcube maintenant :

[srvdmz@srvdmz:~$] sudo apt install roundcube

Les dépendances sont ajoutées automatiquement.

Une fenêtre de configuration s'ouvre :
- Faut-il configurer ... roundcube ... -common ? > Oui
- MDP de connexion MySQL ... > roundcubemysql > OK
- Confirmation du MDP > roundcubemysql > OK

L'installation continue.

Une éventuelle autre fenêtre de configuration s'ouvre :
- MDP administrateur MySQL > Votre MDP root > OK

L'installation continue jusqu'à son terme.

Les fichiers ont été installés essentiellement dans :
- /etc/roundcube/ - /var/lib/roundcube/
- /usr/share/roundcube/ - /var/log/roundcube/

Une Bdd de nom roundcube a également été créée ainsi qu'un lien de configuration Apache de nom roundcube.conf dans /etc/apache2/conf-enabled/.

Editez ensuite le fichier de configuration config.inc.php :

[srvdmz@srvdmz:~$] cd /etc/roundcube
[srvdmz@srvdmz:~$] sudo nano config.inc.php

Modifiez le contenu de ces lignes comme suit :

$config['default_host'] = 'ssl://loupvirtuel.fr';
$config['smtp_server'] = 'tls://loupvirtuel.fr';
$config['smtp_port'] = 587;
$config['smtp_user'] = '%u'; 
$config['smtp_pass'] = '%p';
$config['product_name'] = 'Serveur Webmail Roundcube';

et ajoutez celles-ci à la fin du fichier :

# Paramètres des connexions SSL/TLS
$config['default_port'] = 993;       # port IMAP

# SSL IMAP        # voir note dans le fichier defaults.inc.php
$config['imap_conn_options'] = array(
     'ssl' => array(
     'verify_peer' => true,
     'verify_depth' => 3,
     'cafile' => '/etc/ssl/loupvirtuel.pem',
    ),
  );

# TLS SMTP       # voir note dans le fichier defaults.inc.php
$config['smtp_conn_options'] = array(
     'ssl' => array(
     'verify_peer' => true,
     'verify_depth' => 3,
     'cafile' => '/etc/ssl/loupvirtuel.pem',
    ),
  );

# Ajout auto du domaine aux créations d'utilisateurs
$config['mail_domain'] = 'loupvirtuel.fr';

Editez enfin le fichier de configuration apache.conf :

[srvdmz@srvdmz:~$] sudo nano apache.conf

et décommentez l'alias situé en début de fichier :

Alias /roundcube /var/lib/roundcube

Pour traiter l'alias, redémarrez Apache :

[srvdmz@srvdmz:~$] sudo systemctl restart apache2

L'accès à la Bdd roundcube peut être testé avec l'outil Adminer, voir § 3 du mémento 8.1 :
- Utilisateur > roundcube
- Mot de passe > roundcubemysql

12.2 - Utilisation depuis la VM srvlan

Au préalable, créez sur srvdmz ce lien symbolique vers le dossier Web de roundcube :

[srvdmz@srvdmz:~$] sudo  ln -s /var/lib/roundcube /var/www/roundcube

et attribuez aux 2 dossiers les mêmes permissions que celles du dossier Web de postfixadmin :

[srvdmz@srvdmz:~$]  sudo chown -R www-data:www-data /var/lib/roundcube

[srvdmz@srvdmz:~$]  sudo chown -R www-data:www-data /usr/share/roundcube

Comme avec postfixadmin, la redirection vers HTTPS est assurée depuis cette section située au début du fichier /etc/apache2/sites-available/loupvirtuel.conf :

<VirtualHost *:80>
ServerName loupvirtuel.fr
ServerAlias www.loupvirtuel.fr srvdmz.loupvirtuel.fr
Redirect permanent / https://loupvirtuel.fr/
</VirtualHost>

Si vous avez exécuté le mémento 8.2, les 3 URL HTTP ci-dessous seront redirigées automatiquement vers HTTPS sans faire l'objet d'une alerte de sécurité.

- http://loupvirtuel.fr/roundcube
- http://www.loupvirtuel.fr/roundcube
- http://srvdmz.loupvirtuel.fr/roundcube

Renforcez la redirection https en éditant config.inc.php :

[srvdmz@srvdmz:~$] cd /etc/roundcube
[srvdmz@srvdmz:~$] sudo nano config.inc.php

et en ajoutant les 2 lignes suivantes :

# Utilisation forcée du protocole HTTPS
$config['force_https'] = true;

Ensuite, depuis srvlan, lancez l'URL suivante :
https://loupvirtuel.fr/roundcube

Une fenêtre de connexion Rouncube s'affiche :
> Utilisateur > postmaster@loupvirtuel.fr
> Mot de passe > postmaster31
> Connexion

Capture - Roundcube : Fenêtre de connexion
Roundcube : Fenêtre de connexion

Vous devriez trouver dans la boîte de réception affichée par roundcube les courriers transmis à postmaster lors des mémentos précédents.

12.3 - Envoi/réception au sein du LAN

Depuis debian10-vm1, utilisez roundcube pour envoyer un courrier vers srvlan@loupvirtuel.fr.

Paramètres de connexion sur l'hôte debian10-vm1 :
> Utilisateur > clientmail-vm1@loupvirtuel.fr
> Mot de passe > Votre MDP
> Connexion

Envoyez votre courrier et récupérez celui-ci en utilisant roundcube depuis l'hôte srvlan :

Capture - Roundcube : Réception du courrier depuis l'hôte srvlan
Roundcube : Réception du courrier depuis l'hôte srvlan

Réalisez le même test depuis srvlan vers debian10-vm1.

12.4 - Envoi/réception au travers d'Internet

Référence : § 9 du mémento 11.1

Effectuez un envoi depuis le MUA de votre smartphone vers l'adresse x.y@xxx.no-ip.org et récupérez celui-ci depuis l'hôte srvlan et inversement.

Pour vérifier la réception depuis srvlan, utilisez l'URL :
https://loupvirtuel.fr/roundcube

Une fenêtre de connexion Roundcube s'affiche :
> Utilisateur > x.y@xxx.no-ip.org
> Mot de passe > y42
> Connexion

12.5 - Ajout des filtres de tri Sieve

Référence : § 2.2 du mémento 11.1

Installez le paquet contenant le plugin managesieve :

[srvdmz@srvdmz:~$] sudo apt install roundcube-plugins

Activez le plugin en éditant le fichier config.inc.php :

[srvdmz@srvdmz:~$] cd /etc/roundcube
[srvdmz@srvdmz:~$] sudo nano config.inc.php

et en modifiant la ligne suivante comme ci-dessous :

$config['plugins'] = array('managesieve');

Les plugins sont installé dans /etc/roundcube/plugins.

Quittez si besoin la session roundcube en cours et reconnectez-vous pour exploiter les filtres.

12.6 - Filtre de réponse auto en cas d'absence

Créez sur l'hôte debian10-vm2 un filtre permettant de générer une réponse automatique en cas d'absence, ceci pour tous les courriers reçus.

Depuis le navigateur Web, entrez l'URL :
https://loupvirtuel.fr/roundcube

Une fenêtre de connexion Rouncube s'affiche :
> Utilisateur > clientmail-vm2@loupvirtuel.fr
> Mot de passe > Votre MDP
> Connexion

Cliquez sur la roue dentée pour afficher les paramètres :
> Volet Paramètres > Filtres
> Volet Filtres > Cliquez sur l'icône +

Remplissez la définition du filtre comme le montre la capture ci-dessous et enregistrez celui-ci :

Capture - Roundcube : Filtre de réponse automatique
Roundcube : Création filtre de réponse automatique

3 représente le nombre de jours pendant lesquels le message d'absence ne sera pas renvoyé à l'expéditeur, peu importe le nombre de courriers qu'il vous envoie.

Testez le filtre depuis le Thunderbird de l'hôte srvlan en envoyant un e-mail de postmaster vers clientmail-vm2.

Pensez ensuite à désactiver le filtre en cochant la case Filtre désactivé visible sur la capture d'écran ci-dessus.

Par curiosité, contrôlez sur le Thunderbird de srvlan qu'un module de nom Sieve peut être installé depuis son menu Modules complémentaires.

12.7 - Filtre de transfert automatique

Créez, toujours depuis clientmail-vm2 connecté, un second filtre permettant le transfert automatique de tous les courriers provenant de postmaster vers srvlan :

Capture - Roundcube : Filtre de transfert automatique
Roundcube : Création filtre de transfert automatique

Envoyez ensuite depuis le Thunderbird de srvlan un courrier de postmaster vers clientmail-vm2 et vérifiez le transfert de celui-ci sur le compte srvlan@loupvirtuel.fr.

Capture -Thunderbird : Courrier pour clientmail-vm2 transféré vers srvlan
Thunderbird : Courrier pour clientmail-vm2 transféré vers srvlan

Pensez à désactiver le filtre une fois le test terminé.

Image rédacteur satisfait


Bravo, c'est fini pour les mémentos
de ce réseau. Merci de les avoir suivis.
Un nouveau réseau virtuel verra le jour
avec l'arrivée prochaine de Debian 11.

Laisser un commentaire