Serveur mail (CentOS 7.1) 4/6 : Installation et configuration de Roundcube
Afin de procéder à l’installation de Roundcube, nous devons installer Apache. Pour cela, nous allons taper la commande suivante :
|
|
Avant de modifier le fichier de configuration, nous allons le sauvegarder via la commande suivante :
|
|
Nous allons éditer le fichier « httpd.conf » pour modifier la configuration d’Apache. Pour cela nous allons taper la commande suivante :
|
|
On dé-commente la ligne 95 et on la modifie comme suit :
|
|
Certains packages nécessaires par la suite n’étant pas disponible dans les dépôts officiel de CentOS nous allons ajout un nouveau dépôt. C’est le dépôt EPEL. Pour cela nous allons taper la commande suivante :
|
|
Ajout et configuration du plugin « Yum Priorities »
Afin de ne pas installer des packages qui peuvent mettre à mal la stabilité de notre système nous allons installer le plugin « Yum Priorities ». En temps normal si un paquet est présent dans plus d’un dépôt, c’est le numéro de version le plus haut qui sera proposé dans yum. Ce plugin permet de changer cela et de non plus tenir compte du numéro de version mais de la valeur de la priorité du dépôt. Pour cela, nous allons le faire à l’aide de la commande suivante :
|
|
Maintenant que le plugin est installé, il faut définir la priorité pour chaque dépôt. La priorité est une valeur de 1 à 99, le dépôt ayant 1 comme priorité étant le plus prioritaire. Les dépôts où la valeur de n’est pas renseignée ont automatiquement la valeur 99. Pour cela, nous allons éditer chaque fichier .repo pour ajouter la ligne priority=XX. Les fichiers de configuration des dépôts se trouvent dans /etc/yum.repo.d/. On édite le fichier via la commande suivante:
|
|
Voici le contenu de mon fichier CentOS-Base.repo après modification :
|
|
Il faut reproduire la même opération pour les fichiers suivant :
- CentOS-CR.repo
- CentOS-Debuginfo.repo
- CentOS-fasttrack.repo
- CentOS-Media.repo
- CentOS-Sources.repo
- CentOS-Vault.repo
Concernant le fichier de configuration du dépôt EPEL, il faudra mettre la priorité à 99, donc la plus basse. Voici le contenu de mon fichier epel.repo après modification :
|
|
Il faut à nouveau reproduire la même opération pour le fichier epel-testing.repo Nous allons installer le serveur MySQL, ainsi que les dépendances nécessaires via les commandes suivante :
|
|
Sur CentOS, les démons ne sont pas configurés pour se lancer au démarrage de la machine. Nous allons le configurer pour qu’il se lance à chaque démarrage via la commande suivante :
|
|
Afin de pouvoir lancer l’outil de configuration MySQL, nous devons d’abord démarrer le serveur. Ce que nous allons faire via la commande suivante :
|
|
Maintenant nous pouvons lancer l’outil de configuration MySQL pour configurer le mot de passe de root (« mysql » par exemple), supprimer les utilisateurs anonymes, supprimer les bases de tests et désactiver la possibilité pour root de se connecter à distance via la commande :
|
|
Installation des librairies php5-mysql via la commande suivante :
|
|
Nous allons créer l’utilisateur ainsi que la base donnée en ligne de commande. Pour cela nous allons nous connecter au serveur MySQL via la commande suivante :
|
|
Nous allons créer une base de données « roundcubemail » via la commande suivante :
|
|
Nous allons donner tous les droits à l’utilisateur « roundcubemail » sur la base de donnée « roundcubemail » via les commandes suivantes :
|
|
Nous allons récupérer les fichiers d’installation de Roundcube via la commande suivante :
|
|
Nous allons décompresser l’archive contenant les fichiers d’installation de Roundcube dans le répertoire « /var/www/html » via la commande suivante :
|
|
Nous allons renommer le répertoire « roundcubemail-* » en « roundcube » appliquer les bons droits via les commandes suivantes :
|
|
Nous allons récupérer le fichier mime.types nécessaire au bon fonctionnement de Roundcube, puis lui appliquer les bons droits via les commandes suivantes :
|
|
On créé le fichier de configuration du VirtualHost :
|
|
Nous allons y copier les lignes suivantes :
|
|
On vérifie qu’il n’a pas d’erreur dans notre fichier de configuration du virtualhost Apache que nous venons de créer via commande suivante :
|
|
Nous allons créer les tables nécessaires au fonctionnement de Roundcube via le script présent dans le package que nous avons installé :
|
|
Avant de modifier le fichier de configuration, nous allons le sauvegarder via la commande suivante :
|
|
Nous allons éditer le fichier de configuration de PHP pour paramétrer le bon fuseau horaire via la commande suivante :
|
|
On dé-commente et on modifie la ligne 878 comme suit :
|
|
Nous allons créer le répertoire qui contiendra les fichiers de log de Roundcube via la commande suivante :
|
|
Nous allons redémarrer Apache pour prendre en compte les modifications, via la commande suivante :
|
|
Sur CentOS, les démons ne sont pas configurés pour se lancer au démarrage de la machine. Nous allons le configurer pour qu’il se lance à chaque démarrage via la commande suivante :
|
|
Nous allons maintenant ajouter les règles « firewalld » via les commandes suivantes :
|
|
Maintenant que les règles « firewalld » sont créés, il faut les activer. Pour cela, nous allons taper la commande suivante :
|
|
Nous allons modifier le contexte SELinux pour autoriser Apache à se connecter au réseau de la machine pour pouvoir envoyer des mails via la commande suivante :
|
|
Afin de pouvoir modifier le contexte SELInux du répertoire /var/vmail/, nous devons installer l’utilitaire « semanage ». Pour cela, nous allons taper la commande suivante :
|
|
Nous allons modifier le contexte SELinux du répertoire /var/vmail afin de permettre à Dovecot d’écrire à l’intérieur, via les commandes suivantes :
|
|
Activation du SSL dans Dovecot et Postfix
Afin d’activer le prise en charge de SSL dans Dovecot, nous allons éditer le fichier « 10-ssl.conf », via la commande suivante :
|
|
Nous allons modifier la ligne 8 comme suit :
|
|
Nous allons modifier le chemin des certificats SSL aux lignes 14 et 15 comme suit :
|
|
Nous allons redémarrer Dovecot pour prendre en compte les modifications via la commande suivante :
|
|
Nous allons vérifier que les protocoles POP3S et IMAPS sont bien actifs dans Dovecot, via la commande suivante :
|
|
Voilà ce que doit retourner la commande :
|
|
Maintenant que SSL est activer dans Dovecot, nous allons l’activer dans Postfix. Nous allons éditer le fichier de configuration de Postfix « main.cf », via la commande suivante :
|
|
On ajoute les lignes suivantes à la fin du fichiers :
|
|
Nous allons éditer le fichier « master.cf » via la commande suivante :
|
|
On dé-commente les lignes 26 à 29 comme ci-dessous :
|
|
Nous allons redémarrer Postfix pour prendre en compte les modifications via la commande suivante :
|
|
Nous allons vérifier que le protocole SMTPS sont bien actifs dans Postfix, via la commande suivante :
|
|
Voilà ce que doit retourner la commande :
|
|
Nous allons modifier le contexte SELinux des répertoires /var/www/html/roundcube/logs et /var/www/html/roundcube/temp afin de permettre à Apache d’écrire à l’intérieur, via les commandes suivantes :
|
|
Afin de pouvoir accéder à votre site via l’url https://www.mon-domaine.fr, il faut ajouter une ligne au fichier « /etc/hosts ». Pour cela on édite le fichier via la commande suivante :
|
|
Puis ajouter la ligne suivante :
|
|
Maintenant nous pouvons lancer la configuration de Roundcube. Pour cela on lance un navigateur et on se connecte à l’adresse https://www.mon-domaine.fr/. On clique sur « Next »
On rempli les champs comme suit :
- Database name : roundcubemail
- Database user name : roundcubemail
- Database password : mySecretPassword
- default_host : ssl://localhost
- default_port : 993
- sent_mbox : Envoyés
- trash_mbox : Corbeille
- drafts_mbox : Brouillons
- junk_mbox : Spams
- smtp_server : ssl://localhost
- smtp_port : 465
- Cocher Use the current IMAP username and password for SMTP authentification
- language : fr_FR
- Cocher preview_plane if preview plane is enabled
- Compose HTML formatted messages : always
Cliquer sur « Create config »
Nous allons créer le fichier de configuration de Roundcube via la commande suivante :
|
|
On copie le contenu de la fenêtre dans le fichier comme indiquer dans la fenêtre. On édite le fichier /var/www/html/roundcube/config/defaults.inc.php via la commande suivante :
|
|
On modifie la ligne 533 comme suit :
|
|
On clique sur « Continue ». Nous allons maintenant vérifier le bon fonctionnement du serveur SMTP en entrant les information suivantes dans les cases prévu :
- User : user@mon-domaine.fr
- Password : password
- Sender : user@mon-domaine.fr
- Recipient : user@mon-domaine.fr
Nous allons maintenant vérifier le bon fonctionnement du serveur SMTP en entrant les information suivantes dans les cases prévu :
- Server : localhost
- Username : user@mon-domaine.fr
- Password : password
Nous allons redémarrer le serveur Apache pour prendre en compte les modifications, via la commande suivante :
|
|
Maintenant, notre serveur mail ainsi que son interface web sont opérationnel. Nous pouvons nous connecter à l’adresse https://www.mon-domaine.fr/ avec l’utilisateur précédemment créé :
- Nom d’utilisateur : user@mon-domaine.fr
- Mot de passe : password