Webmail Installation · 19 min read · Sep 30, 2025

Installer le client Webmail WebMail Lite basé sur PHP sur Debian 9.1

Dans ce guide, nous vous montrerons comment installer la dernière version de WebMail Lite PHP sur Debian 9.1 et comment configurer l’application pour récupérer des e-mails d’un service de messagerie populaire, Yahoo! Mail. Nous utiliserons les services de Yahoo! Mail uniquement à des fins de démonstration, mais n’hésitez pas à utiliser votre propre domaine pour la gestion des e-mails avec WebMail Lite, car la procédure pour ajouter les paramètres de domaine est principalement la même que pour configurer les services Yahoo! Mail. Nous utiliserons le client WebMail Lite comme interface pour les services IMAP et SMTP fournis par un compte Yahoo! et tous les e-mails seront gérés localement sur notre propre serveur web privé.

WebMail Lite est un agent utilisateur de messagerie open-source gratuit ou un client web écrit en PHP et déployé sur Linux sous Apache/Nginx, avec des composants PHP et MySQL/MariaDB qui composent la pile LEMP/LAMP. WebMail Lite peut être utilisé pour accéder aux e-mails via les protocoles IMAP/S et/ou SMTP/S afin de synchroniser les fichiers de messagerie et/ou d’envoyer des messages.

Exigences

  • Installation minimale de Debian 9 sur une machine bare-metal ou sur un serveur privé virtuel.
  • Une adresse IP statique configurée pour l’une de vos cartes d’interface réseau système.
  • Privilèges root sudo pour un compte local ou distant ou accès direct au compte root.
  • Un nom de domaine, privé ou public, selon votre déploiement, avec les enregistrements DNS appropriés configurés.
  • Un service de messagerie correctement configuré dans vos locaux avec un accès à distance à ses services IMAP et SMTP.

Configuration initiale

Avant de commencer à installer et à configurer WebMail Lite à partir de la source sur votre propre serveur, assurez-vous d’abord que le système répond à toutes les exigences logicielles pour compiler et installer l’application. Dans la première étape, mettez à jour vos dépôts système et vos paquets logiciels en émettant la commande ci-dessous.

apt update
apt upgrade

Installer les mises à jour Debian

Dans l’étape suivante, exécutez la commande suivante afin d’installer quelques utilitaires qui seront utilisés pour gérer davantage votre système depuis la ligne de commande.

apt install wget bash-completion unzip

Installer des utilitaires système

Ensuite, configurez le nom de votre système en exécutant la commande suivante. Remplacez votre variable de nom d’hôte en conséquence.

hostnamectl set-hostname mail

Vérifiez le nom d’hôte de la machine et le fichier hosts en émettant les commandes ci-dessous.

hostnamectl
cat /etc/hostname
hostname –s
hostname –f

Configurer le nom d'hôte

Enfin, redémarrez le serveur Debian afin d’appliquer les mises à jour du noyau et les modifications du nom d’hôte correctement.

systemctl reboot

WebMail Lite est un client webmail principalement écrit en PHP, un langage de programmation côté serveur. Afin d’exécuter les scripts de fichiers PHP de WebMail Lite, un serveur web, tel qu’Apache HTTP server, et une passerelle de traitement PHP doivent être installés et opérationnels dans le système. Afin d’installer le serveur web Apache et l’interpréteur PHP avec tous les modules PHP requis nécessaires au bon fonctionnement de l’application, émettez la commande suivante dans votre console serveur.

apt install apache2 libapache2-mod-php7.0 php7.0 php7.0-xml php7.0-mcrypt php7.0-opcache php7.0-mbstring php7.0-curl

Installer le serveur web Apache

Après l’installation d’Apache et de PHP, testez si le serveur web est en cours d’exécution et écoute les connexions réseau sur le port 80 en émettant la commande suivante avec des privilèges root.

netstat –tlpn

Dans le cas où l’utilitaire réseau netstat n’est pas installé par défaut sur votre système Debian, exécutez la commande ci-dessous pour l’installer.

apt install net-tools

Installer net-tools

En inspectant la sortie de la commande netstat, vous pouvez voir que le serveur web Apache écoute les connexions réseau entrantes sur le port 80. Pour la même tâche, vous pouvez également utiliser la commande ss, qui est automatiquement installée par défaut dans Debian 9.

ss- tlpn

Vérifier si apache écoute sur le réseau

Dans le cas où vous avez un pare-feu activé dans votre système, tel que l’application de pare-feu UFW, vous devez ajouter une nouvelle règle pour permettre au trafic HTTP de passer à travers le pare-feu en émettant la commande suivante.

ufw allow WWW

ou

ufw allow 80/tcp

Si vous utilisez des règles brutes iptables pour gérer les règles de pare-feu dans votre serveur Debian, ajoutez la règle suivante pour permettre le trafic entrant sur le port 80 dans le pare-feu afin que les visiteurs puissent naviguer sur l’application en ligne.

apt-get install -y iptables-persistent
iptables -I INPUT -p tcp --destination-port 80 -j ACCEPT
systemctl iptables-persistent save
systemctl iptables-persistent reload

Ensuite, activez les modules Apache suivants qui seront utilisés pour sécuriser certaines parties de l’application WebMail Lite, en émettant la commande ci-dessous.

a2enmod rewrite
systemctl restart apache2

Enfin, testez si la page web par défaut du serveur web Apache peut être affichée dans les navigateurs de vos clients en visitant l’adresse IP de votre machine Debian ou votre nom de domaine ou FQDN du serveur via le protocole HTTP. Si vous ne connaissez pas l’adresse IP de votre machine, exécutez les commandes ifconfig ou ip a pour révéler l’adresse IP de votre serveur. La page par défaut d’Apache pour Debian sera affichée dans votre navigateur.

http://your_domain.tld

Afin d’installer et d’accéder à l’application WebMail Lite via le protocole HTTPS qui sécurisera le trafic pour vos clients, émettez la commande suivante pour activer le module SSL du serveur web Apache et le fichier de configuration du site SSL.

a2enmod ssl
a2ensite default-ssl.conf

Activer SSL dans apache

Ensuite, ouvrez le fichier de configuration du site SSL par défaut d’Apache avec un éditeur de texte et activez les règles de réécriture d’URL en ajoutant les lignes de code suivantes après la directive DocumentRoot, comme montré dans l’extrait ci-dessous :

nano /etc/apache2/sites-enabled/default-ssl.conf

Extrait du fichier de configuration du site SSL :

  
  Options +FollowSymlinks  
  AllowOverride All  
  Require all granted  

De plus, apportez le changement suivant à la ligne VirtualHost pour qu’elle ressemble à l’extrait ci-dessous :

        

Activer le port SSL

Fermez le fichier SSL d’Apache et ouvrez le fichier /etc/apache2/sites-enabled/000-default.conf pour l’éditer et ajoutez les mêmes règles de réécriture d’URL que pour le fichier de configuration SSL. Insérez les lignes de code après l’instruction DocumentRoot comme montré dans l’exemple ci-dessous.

  
  Options +FollowSymlinks  
  AllowOverride All  
  Require all granted  

Ajouter des règles d'autorisation pour le répertoire www

Enfin, redémarrez le démon Apache pour appliquer toutes les règles configurées jusqu’à présent et visitez votre domaine via le protocole HTTP. Comme vous utilisez les certificats auto-signés émis par Apache lors de l’installation, un avertissement d’erreur devrait s’afficher dans le navigateur, comme montré dans la capture d’écran ci-dessous.

systemctl restart apache2

https://yourdomain.tld

Message de certificat SSL auto-signé

Acceptez l’avertissement afin de continuer et d’être redirigé vers la page par défaut d’Apache via HTTPS.

La page par défaut d'Apache est affichée

Dans le cas où l’application de pare-feu UFW bloque les connexions réseau entrantes au port HTTPS, vous devez ajouter une nouvelle règle pour permettre au trafic HTTPS de passer à travers le pare-feu en émettant la commande suivante.

ufw allow 'WWW Full'

ou

ufw allow 443/tcp

Si iptables est l’application de pare-feu par défaut installée pour protéger votre système Debian au niveau réseau. Ajoutez la règle suivante pour permettre le trafic entrant sur le port 443 dans le pare-feu afin que les visiteurs puissent naviguer sur votre nom de domaine.

iptables -I INPUT -p tcp --destination-port 443 -j ACCEPT
systemctl iptables-persistent save
systemctl iptables-persistent reload

Dans l’étape suivante, nous devons apporter d’autres modifications au fichier de configuration PHP par défaut afin de garantir que les variables PHP suivantes sont activées et que le paramètre timezone de PHP est correctement configuré et correspond à votre emplacement géographique. Ouvrez le fichier /etc/php/7.0/apache2/php.ini pour l’éditer et assurez-vous que les lignes suivantes sont configurées comme suit. De plus, initialement, faites une sauvegarde du fichier de configuration PHP.

cp /etc/php/7.0/apache2/php.ini{,.backup}
nano /etc/php/7.0/apache2/php.ini

Recherchez, éditez et changez les variables suivantes dans le fichier de configuration php.ini :

file_uploads = On  
allow_url_fopen = On  
memory_limit = 128 M  
upload_max_file_size = 64M  
date.timezone = Europe/London

Augmentez la variable memory_limit selon ce qui convient pour prendre en charge de grandes pièces jointes et remplacez la variable time.zone en fonction de votre heure physique en consultant la liste des fuseaux horaires fournie par la documentation PHP à l’adresse suivante http://php.net/manual/en/timezones.php

Si vous souhaitez augmenter la vitesse de chargement des pages de votre site via le plugin OPCache disponible pour PHP7, ajoutez les paramètres OPCache suivants en bas du fichier de configuration de l’interpréteur PHP, comme détaillé ci-dessous :

opcache.enable=1   
opcache.enable_cli=1   
opcache.interned_strings_buffer=8   
opcache.max_accelerated_files=10000   
opcache.memory_consumption=128   
opcache.save_comments=1  
opcache.revalidate_freq=1

Fermez le fichier de configuration php.ini et vérifiez si les variables ont été correctement ajoutées en émettant la commande ci-dessous.

tail /etc/php/7.0/apache2/php.ini

Activer PHP Opcache

Après avoir apporté toutes les modifications expliquées ci-dessus, redémarrez le démon apache pour appliquer les nouvelles modifications en émettant la commande suivante.

systemctl restart apache2

Enfin, créez un fichier d’informations PHP en exécutant la commande suivante et vérifiez si le fuseau horaire PHP a été correctement configuré en visitant le fichier de script d’informations PHP depuis un navigateur à l’URL suivante, comme illustré dans l’image ci-dessous. Faites défiler vers le bas pour vérifier la configuration du fuseau horaire PHP.

echo ''| tee /var/www/html/info.php

https://domain.tld/info.php

Vérifier les paramètres de date et de fuseau horaire PHP

Le client webmail WebMail Lite stocke différentes configurations, telles que les utilisateurs, les sessions, les contacts, et d’autres, dans une base de données RDBMS. Dans ce guide, nous allons configurer WebMail Lite pour utiliser la base de données MariaDB comme backend. Émettez la commande ci-dessous pour installer la base de données MariaDB et le module PHP nécessaire pour accéder à la base de données mysql.

apt install mariadb-server php7.0-mysql

Installer le pilote PHP MySQL

Après avoir installé MariaDB, vérifiez que le démon fonctionne et écoute les connexions sur localhost, port 3306, en exécutant la commande netstat ou ss.

netstat –tlpn | grep mysql

Ensuite, connectez-vous à la console MySQL et sécurisez le compte root de MariaDB en émettant les commandes suivantes.

mysql -h localhost
use mysql;  
update user set plugin='' where user='root';  
flush privileges;  
exit

Configurer la connexion utilisateur root MySQL

Dans l’étape suivante, sécurisez MariaDB en exécutant le script mysql_secure_installation. Lors de l’exécution du script, il posera une série de questions conçues pour sécuriser la base de données MariaDB, telles que : changer le mot de passe root de MySQL, supprimer les utilisateurs anonymes, désactiver les connexions root à distance et supprimer la base de données de test. Exécutez le script en émettant la commande ci-dessous et assurez-vous de taper oui à toutes les questions posées afin de sécuriser complètement le démon MySQL. Utilisez la sortie du script ci-dessous comme guide.

sudo mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!
 
In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
 
Enter current password for root (enter for none):
OK, successfully used password, moving on...
 
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
 
You already have a root password set, so you can safely answer 'n'.
 
Change the root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
 ... Success!
 
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.
 
Remove anonymous users? [Y/n] y
 ... Success!
 
Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.
 
Disallow root login remotely? [Y/n] y
 ... Success!
 
By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.
 
Remove test database and access to it? [Y/n] y
- Dropping test database...
 ... Success!
- Removing privileges on test database...
 ... Success!
 
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
 
Reload privilege tables now? [Y/n] y
 ... Success!
 
Cleaning up...
 
All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.
 
Thanks for using MariaDB!

Pour tester la sécurité de MariaDB, essayez de vous connecter à la base de données depuis la console sans mot de passe root. L’accès à la base de données devrait être refusé si aucun mot de passe n’est fourni pour le compte root. Si le mot de passe est fourni, le processus de connexion devrait être accordé à la console MySQL, comme montré dans la capture d’écran ci-dessous.

mysql -h localhost -u root
mysql -h localhost -u root –p

Tester la connexion MySQL

Ensuite, connectez-vous à la console de base de données MariaDB, créez une base de données à utiliser pour WebMail Lite et un utilisateur avec un mot de passe qui sera utilisé pour gérer cette base de données, en émettant les commandes suivantes. Remplacez le nom de la base de données WebMail Lite, l’utilisateur et le mot de passe en conséquence.

mysql –u root -p
create database webmaillite;  
grant all privileges on webmaillite.* to 'webmail_user'@'localhost' identified by 'webmail_pass';  
flush privileges;  
exit

Créer la base de données WebmailLite et l'utilisateur

Afin d’appliquer tous les changements effectués jusqu’à présent, redémarrez les démons MySQL et Apache et vérifiez si les démons fonctionnent en émettant les commandes suivantes.

systemctl restart mysql apache2
systemctl status mysql apache2

Installer WebMail Lite

Après avoir satisfait à toutes les exigences système, visitez la page Web de WebMail Lite à l’adresse https://afterlogic.org/download/webmail-lite-php et téléchargez le dernier paquet zip compressé en émettant l’utilitaire wget, comme illustré dans l’exemple suivant.

wget https://afterlogic.org/download/webmail_php.zip

Télécharger WebmailLite

Après que le téléchargement de l’archive zip soit terminé, extrayez l’archive compressée de WebMail Lite et listez les fichiers extraits en émettant les commandes ci-dessous. Supprimez également le fichier index.html par défaut installé par le serveur web Apache dans le chemin webroot et supprimez également le fichier info.php créé précédemment.

rm /var/www/html/index.html
rm /var/www/html/info.php
unzip webmail_php.zip
ls

Ensuite, copiez récursivement les fichiers extraits du répertoire webmail vers votre chemin webroot de domaine en émettant la commande ci-dessous. Vous pouvez également lister le chemin webroot pour voir si tous les fichiers du répertoire webmail ont été complètement transférés vers le webroot.

ls webmail
cp -rf webmail/* /var/www/html/
ls -l /var/www/html/

Lister les fichiers extraits

Ensuite, exécutez les commandes ci-dessous afin d’accorder à l’utilisateur d’exécution d’Apache des permissions d’écriture complètes sur le chemin racine web. Utilisez la commande ls pour lister les permissions des fichiers d’installation de Prestashop situés dans le répertoire /var/www/html/.

chown -R www-data:www-data /var/www/html/
ls –al /var/www/html/

Accorder l'accès Apache au répertoire racine web

Poursuivez le processus d’installation de WebMail Lite en ouvrant un navigateur et en naviguant vers l’adresse IP de votre serveur ou le nom de domaine via le protocole HTTPS vers le répertoire /install. Sur le premier écran d’installation, le script d’installation de WebMail Lite effectuera une série de vérifications système afin de déterminer si toutes les extensions et modules PHP requis sont installés sur votre serveur et si l’utilisateur apache a des permissions d’écriture sur le répertoire data et sur le fichier de configuration, comme montré dans l’image ci-dessous. Si toutes les exigences du serveur sont satisfaites, cliquez sur le bouton Suivant pour passer à l’écran d’installation suivant.

https://yourdomain.tld/install

Test de compatibilité du serveur

Sur l’écran d’installation suivant, lisez et acceptez les termes de l’accord de licence et cliquez sur le bouton J’accepte pour continuer, comme illustré dans l’image ci-dessous.

Accepter les termes de la licence

Sur l’écran d’installation suivant, choisissez le type de base de données MySQL et spécifiez l’adresse hôte de la base de données MySQL, le nom de la base de données et les identifiants créés précédemment pour accéder à la base de données WebMail Lite. Testez votre connexion à la base de données en cliquant sur le bouton Tester la base de données et si la connexion à la base de données MySQL est réussie, cochez Créer des tables de base de données afin que l’installateur puisse créer les tables requises et cliquez sur le bouton Suivant pour passer à l’écran d’installation suivant.

Entrer les détails de la base de données MySQL

Sur l’écran d’installation suivant, fournissez un mot de passe fort pour l’utilisateur mailadm et cliquez sur le bouton suivant pour continuer. Cet utilisateur sera utilisé pour gérer différents aspects de WebMail Lite via le panneau d’administration.

Définir le mot de passe administrateur

Nous allons maintenant vérifier si la connexion à un serveur de messagerie fonctionne comme prévu via les protocoles IMAP et SMP. À des fins de démonstration, nous allons configurer et tester la connexion aux services de messagerie fournis par Yahoo! Mail. Vous pouvez changer le domaine des services de messagerie en conséquence. Pour tester la connexion SMTP des serveurs Yahoo! Mail, écrivez l’adresse suivante dans le champ hôte du serveur de messagerie, smtp.mail.yahoo.com, cochez la case SMTP et cliquez sur le bouton tester la connexion. Si la connexion au serveur SMTP de Yahoo! est établie avec succès, un message vert vous informera que vous pouvez envoyer des e-mails sortants via SMTP depuis Yahoo! Mail.

Tester la connexion au serveur de messagerie

Pour tester si les connexions IMAP cryptées sont autorisées pour le serveur Yahoo! Mail, entrez imap.mail.yahoo.com:993 dans le champ hôte du serveur de messagerie, cochez la case IMAP4 et appuyez sur le bouton Tester la connexion. Si la connexion au serveur IMAP de Yahoo! est établie avec succès, un message vert vous informera que vous pouvez vérifier et télécharger des e-mails entrants via IMAPS depuis Yahoo! Mail. Lorsque vous avez terminé, cliquez sur le bouton suivant pour passer à la dernière étape de l’installation.

Tester la connexion imaps

Après que le processus d’installation soit terminé, l’installateur vous informera que l’application web WebMail Lite a été installée avec succès et vous devrez supprimer le répertoire d’installation de votre chemin webroot de domaine. Cliquez sur le bouton Quitter pour quitter l’écran et accéder au panneau d’administration de WebMail Lite.

Installation réussie

Naviguez à l’adresse suivante pour accéder au panneau d’administration de WebMail Lite. Remplacez le nom de domaine ou l’adresse IP en conséquence.

https://yourdomain.tld/adminpanel

Connectez-vous au panneau d’administration avec le nom d’utilisateur mailadm et le mot de passe configuré pour cet utilisateur lors du processus d’installation, comme illustré dans la capture d’écran ci-dessous.

Connexion en tant qu'administrateur de messagerie

Afin de configurer vos services de messagerie de domaine pour WebMail Lite, naviguez vers Domaines -> Paramètres par défaut. À des fins de démonstration, dans ce guide, nous allons configurer WebMail Lite pour gérer les e-mails pour un compte Yahoo! Mail, mais n’hésitez pas à configurer votre propre domaine en ajoutant les paramètres requis.

Dans le champ de messagerie entrante, ajoutez l’adresse IMAP du serveur Yahoo! Mail : imap.mail.yahoo.com et le port 993. Cochez également la case Utiliser SSL pour récupérer les e-mails via une connexion sécurisée.

Dans le champ de messagerie sortante, ajoutez l’adresse SMTP du serveur Yahoo! Mail : smtp.mail.yahoo.com et le port 465. Cochez également la case Utiliser SSL pour envoyer des e-mails via une connexion sécurisée.

Dans l’authentification SMTP, cochez ‘ Utiliser le login/mot de passe de la messagerie entrante de l’utilisateur’ afin de s’authentifier auprès des serveurs SMTP de Yahoo! Mail.

Enfin, vous avez également la possibilité d’ajouter un nom pour votre site, de changer le thème de l’application WebMail Lite et de permettre aux utilisateurs d’accéder aux paramètres de l’interface. Vous pouvez également changer les paramètres régionaux de votre application, comme illustré dans la capture d’écran ci-dessous. Pour enregistrer et appliquer les paramètres, cliquez sur le bouton Enregistrer.

Configurer le compte de messagerie

Le panneau d’administration de WebMail Lite propose d’autres options qui peuvent être utilisées pour modifier les paramètres de votre application, tels que l’activation de la journalisation, le changement du nom et du mot de passe du compte mailadm ou l’intégration de l’interface webmail avec d’autres services externes. Lorsque vous avez terminé de configurer vos paramètres personnalisés, cliquez sur le bouton Déconnexion.

Pour vous connecter à l’application WebMail Lite avec un compte Yahoo! Mail, naviguez vers votre nom de domaine via le protocole HTTP et fournissez vos identifiants Yahoo! Mail comme montré dans l’image ci-dessous. Les e-mails de votre compte Yahoo! seront listés dans l’interface WebMail Lite.

Connexion à WebmailLite

WebMail Lite

Afin de forcer les visiteurs à naviguer sur l’interface WebMail Lite via le protocole HTTPS et de protéger le répertoire d’installation et le fichier de version, allez dans la console de votre serveur et créez un nouveau fichier .htaccess dans le chemin racine de votre serveur web avec le contenu suivant.

nano /var/www/html/.htaccess

Extrait du fichier .htaccess :

  
RewriteEngine on  
RewriteCond %{HTTPS} !=on [NC]  
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]  
  
  
RewriteEngine on  
Options -Indexes   
# return a 403 forbidden error for install dir and version file  
RewriteRule ^install/?$ - [F,L]  
RewriteRule ^VERSION/?$ - [F,L]

Forcer SSL pour toutes les connexions

Créez un nouveau fichier .haccess dans le répertoire d’installation avec le contenu ci-dessous :

nano /var/www/html/install/.htaccess

Extrait du fichier .htaccess :

RewriteEngine on  
Options -Indexes  
Require all denied

Ajouter des règles de réécriture au fichier .htaccess

C’est tout ! Vous avez réussi à installer et configurer WebMail Lite sur Debian 9.1. Cependant, comme votre serveur HTTP Apache utilise des certificats auto-signés pour chiffrer le trafic entre le serveur et les navigateurs des visiteurs, un message d’avertissement sera toujours généré et affiché dans votre navigateur. Dans ce cas, vous devriez acheter un certificat émis par une autorité de certification de confiance ou obtenir une paire de certificats gratuits de Let’s Encrypt CA. Pour d’autres configurations personnalisées concernant WebMail Lite, visitez la page de documentation à l’adresse suivante : https://afterlogic.com/docs/webmail-lite


Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.