-
Notifications
You must be signed in to change notification settings - Fork 0
Documentation du service MAIL
Les fichiers de configuration du service Mail se trouvent ici.
Ils sont répartis dans 4 dossiers comportant chacun le nom du service concerné. Ces 4 dossiers sont contenus dans le dossier "config"
| nom du fichier | Description du fichier |
|---|---|
| main.cf | ficher de configuration principal de Postfix |
| master.cf | ficher de configuration des processus utilisés par Postfix |
| generic | fichier de configuration de l'adresse mail que prendra le serveur lorsqu'il enverra lui-même des emails(no-reply@l1-4.ephec-ti.be) |
| vmailbox | fichier indiquant les chemins pour les mailbox des différentes adresses |
| mysql-virtual-mailbox-domains.cf | fichier contenant les informations de connexion à la DB et la requête SQL pour récupérer le domaine virtuel utilisé |
| mysql-virtual-mailbox-maps.cf | fichier contenant les informations de connexion à la db et la requête SLQ pour récupérer la maildir correspondant à une adresse spécifique |
| nom du fichier | Description du fichier |
|---|---|
| 10-auth.conf | fichier de configuration de l'authentification |
| 10-mail.conf | fichier de configuration des mailbox |
| 10-ssl.conf | fichier de configuration de ssl contenant les chemins de la clé et du certificat |
| 20-lmtp.conf | fichier d'activation du plugin Sieve dans Dovecot |
| 10-master.conf | fichier de configuration des protocoles utilisés et lien avec postfix pour l'authentification SMTP |
| 10-logging.conf | ficher de configuration des logs |
| auth-sql.conf.ext | fichier permettant à Dovecot de savoir comment utiliser la DB |
| dovecot.conf | fichier de configuration principale de Dovecot |
| dovecot-sql.conf.ext | fichier contenant les informations de connexion à la DB ainsi que la requête pour vérifier les passwords lors de l'authentification |
| default.sieve | fichier de configuration de Sieve |
| nom du fichier | Description du fichier |
|---|---|
| create-db.sql | script permettant de créer la DB et les tables |
| create-table.sql | script permettant de remplir les tables de la DB |
| nom du fichier | Description du fichier |
|---|---|
| spamassassin | fichier de configuration principal de spamassassin lui permettant d'être actif |
| local.cf | ficher permettant de configurer le niveau de filtre |
-
Stopper le service en question
service XXX stop -
Mettre à jour le service
Mettre à jour Postfix :
sudo apt-get upgrade postfix postfix-mysql
Mettre à jour Dovecot :
sudo apt-get upgrade dovecot-core dovecot-imapd dovecot-mysql dovecot-sieve dovecot-managesieved
Mettre à jour Mariadb :
sudo apt-get upgrade mariadb-server
Mettre à jour Spamassassin :
sudo apt-get upgrade spamassassin spamc
- redémarrer les différents services mis à jour
service XXX start
Note : Si par exemple on ne veut mettre à jour que dovecot-imapd -> sudo apt-get upgrade dovecot-imapd
- Connection à mysql :
mysql -u mailUser -p - Entrer le password de l'utilisateur mailUser
- utiliser la commande :
INSERT INTO `virtual_users`
(`domain_id`, `password` , `email`, `maildir`)
VALUES
('[domaine]', ENCRYPT('[password]', CONCAT('$6$', SUBSTRING(SHA(RAND()), -16))), '[nom.prénom]@l1-4.ephec-ti.be', 'l1-4.ephec-ti.be/[nom.prénom]/');
- Ajouter le bloc de code suivant au fichier create_table.sql
INSERT INTO `mail`.`virtual_users`
(`id`, `domain_id`, `password` , `email`, `maildir`)
VALUES
('[id]', '[domaine]', ENCRYPT('[password]', CONCAT('$6$', SUBSTRING(SHA(RAND()), -16))), '[nom.prénom]@l1-4.ephec-ti.be', 'l1-4.ephec-ti.be/[nom.prénom]/');
Note : les valeurs entre les crochets sont à remplacer par des valeurs adéquates
- Connection à mysql :
mysql -u mailUser -p - Entrer le password de l'utilisateur mailUser
- utiliser la commande :
Delete FROM `virtual_users` WHERE email='[nom.prenom]@l1-4.ephec-ti.be';
- Supprimer du serveur le dossier mailbox de l'employé :
rm -r var/mail/vhost/l1-4.ephec-ti.be/[nom.prénom]
- Modifier le fichier create_table.sql afin que l'adresse ne soit pas recréée en cas de recréation de la DB/table
- Modifier etc/postfix/vmailbox et retirer la ligne correspondant à l'employé
Note : les valeurs entre les crochets sont à remplacer par des valeurs adéquates
- Connection à mysql :
mysql -u mailUser -p - Entrer le password de l'utilisateur mailUser
- utiliser les commandes :
UPDATE `virtual_users` SET email='[nouveau nom d'utilisateur]@l1-4.ephec-ti.be' WHERE email='[ancien nom d'utilisateur]@l1-4.ephec-ti.be';
UPDATE `virtual_users` SET maildir='l1-4.ephec-ti.be/[nouveau nom d'utilisateur]' WHERE email='[nouveau nom d'utilisateur]@l1-4.ephec-ti.be';
- Modifier le fichier create_table.sql afin que l'adresse ne soit pas recréée avec l'ancien nom d'utilisateur en cas de recréation de la DB/table
- Modifier etc/postfix/vmailbox et modifier la ligne correspondant à l'employé
Note : il faut utiliser une adresse mail appartenant au domaine l1-4.ephec-ti.be
- Obtention du certificat pour Dovecot
sudo certbot certonly --standalone -d mail.l1-4.ephec-ti.be - Modifier le fichier /etc/dovecot/conf.d/10-ssl.conf
- Obtention du certificat pour Postfix
sudo certbot certonly --standalone -d smtp.l1-4.ephec-ti.be - Modifier le fichier /etc/postfix/main.cf
En cas de dysfonctionnement, voici les éléments à observer pour trouver des informations de debug :
- Chemin pour accéder aux logs :
Postfix : var/log/postfix.log
Dovecot : var/log/dovecot.log var/log/dovecot-debug.log var/log/dovecot-info.log
Spamassassin : var/log/spamassassin/spamd.log
-
Procédure de test 1 : Vérifier le statut des services
service [nom_du_service] status -
Procédure de test 2 : Vérifier les records DNS correspondant au service mail
dig MX l1-4.ephec-ti.beRetour attendu :l1-4.ephec-ti.be. 0 IN MX 10 mail.l1-4.ephec-ti.be.
dig mail.l1-4.ephec-ti.beRetour attendu :mail.l1-4.ephec-ti.be. 0 IN A 176.96.231.164
dig smtp.l1-4.ephec-ti.beRetour attendu :smtp.l1-4.ephec-ti.be. 0 IN A 176.96.231.164
-
Procédure de test 3 : Vérifier que les ports 25 143 583 et 993 sont bien ouverts et écoutent
netstat -nltp -
Procédure de test 4 : Utiliser mxtoolbox pour tester notre serveur
-
Procédure de test 5 : Utiliser telnet pour tester la connexion au service
telnet localhost 143`
a1 LOGIN [nom.prénom]@l1-4.ephec-ti.be [password]
a2 LOGOUT
telnet localhost 25
EHLO mail.l1-4.ephec-ti.be
- Vérifier la bonne syntaxe à utiliser dans les fichiers (ainsi que l'orthographe)
- Toujours redémarrer le service après avoir fait une modification dans la configuration d'un service (pour le Dockerfile)
- Les fichiers de Dovecot se mettent à l'emplacement /etc/dovecot/conf.d/ et non à l'emplacement etc/dovecot/
- Il faut modifier les fichiers main.cf(postfix) et 10-ssl.conf pour utiliser le bon certificat (letsencrypt et pas openssl)
- Il faut activer spamassassin dans le fichier master.cf (postfix) pour qu'il soit pris en compte.
- Il faut obtenir un certificat qui n'est pas auto-signé pour pouvoir contacter une adresse extérieure au domaine
- Il faut vérifier si l'adresse IP utilisée n'est pas dans une blacklist (par exemple avec MXtoolbox), sinon les serveurs SMTP d'autres domaines rejettent automatiquement les emails envoyés.
- var/log/postfix.log

- var/log/dovecot.log

- var/log/dovecot-info.log

- var/log/spamassassin/spamd.log

- Analyse service DNS
- Etat des configurations du service DNS
- Documentation du service DNS
- Sécurisation du service DNS
- Analyse service WEB
- Etat des configurations du service WEB
- Documentation du service WEB
- Sécurisation du service WEB
- Analyse service MAIL
- Etat des configurations du service MAIL
- Documentation du service MAIL
- Sécurisation du service MAIL
- Analyse service Interne
- Etat des configurations du service Interne
- Documentation du service Interne
- Sécurisation du service Interne