C'est ici,

Tad'Milin

Le père Moulin

et aussi,

F1NWT

Informatique
Serveur de messagerie
Ce qui est présenté est ce qui a été fait et qui fonctionne sous distribution MAGEIA (cf. sujet)

Prérequis, avoir  : un nom de domaine (mondomaineamoi.xxx)
                                  des adresses personnalisées (mesadresses@mondomaineamoi.xxx)
                                  et un serveur personnel (utilisateur B dans les shéma proposé)

D'abord un peu de technique :

Des définitions :

MTA : Mail Transfert Agent = Transport du courrier = Exim, Postfix, Qmail, Sendmail etc..
MDA : Mail Delivery Agent = Facteur = CyrrusImap, Dovecot, Fetchmail, Procmail etc..
MUA : Mail User Agent = Client messagerie = Incredimail, Kmail, Mail, Outlook, Thunderbird etc..
Les noms indiqués sont des marques déposées ; vérifier les conditions de licence.
Ce sont des logiciels installés sur des machines/serveurs

SMTP = Single Mail Transport Protocol = Protocole de transport du courrier
POP = Post Office Protocol = Protocole de livraison du courrier mais les options des MUA permettent de laisser les
           messages sur le serveur
IMAP = Internet Message Accès Protocol = Protocole de livraison et dès l'origine protocole permettant de consulter
            ses messages sur le serveur

Que se passe-t-il lorsque j'envoie un courriel ?

L'utilisateur A envoie à partir d'un PC, smartphone ou autre un courriel à B.
Après rédaction sur son MUA, le courriel arrive sur le MTA de son FAI, opérateur téléphonique etc.. Après identification du nom de domaine et de la localisation de l'adresse IP, il est envoyé vers son le MTA de son FAI transitant éventuellement par d'autres MTA. Là il est stocké par ce dernier.
Pour le récupérer, l'utilisateur B, par l'intermédiaire de son propre MUA, soit automatiquement soit sur demande, va interroger le MDA de son FAI qui va lui restituer le courriel stocké précédemment.


























C'est simple !!! comme dirait une publicité.

Et B répond à A, c'est le chemin inverse :

Imaginons maintenant que vous vouliez entièrement contrôler vos flux de courriels :
et le retour :
Le passage par le FAI est nécessaire techniquement et, lors d'envoi, obligatoire avec authentification pour certains, et quand ça ne l'est pas, certains MDA de grands fournisseurs d'adresses mail n'acceptent pas les courriels si pas de nom de domaine... donc FAI !. Pour d'autres FAI, il faut aller modifier la configuration de la box. Faudra aller à la pêche...

Comme vous l'aviez déjà constaté, il va falloir installer 2 logiciels : un MDA pour recevoir les courriels externes et envoyer les vôtres et un MDA pour récupérer ces courriels reçus. 
Le choix ici s'est porté sur POSTFIX pour le MTA et DOVECOT pour le MDA.
1 - A partir d'une session utilisateur : Centre de Contrôle
2 - Mot de passe "root" c.a.d. administrateur ou super-utilisateur (SU) et le Centre de Contrôle est disponible ; il s'ouvre sur la fenêtre de gestion des logiciels. Ca tombe bien. Sélectionner Installer et désinstaller. 













Vous êtes sur le gestionnaire de logiciel.
3 - Dans la ligne recherche...



4 - Sélection du logiciel
   - sélectionner POSTFIX et la librairie partagée
5 - Appliquer.
     Si des programmes complémentaires vous sont proposés : oui
















6 - Sélection du logiciel
   - sélectionner DOVECOT (dans l'ex. il y a l'outil de developpement
     mais ce n'est pas utile pour l'instant
7 - Appliquer.
     Si des programmes complémentaires vous sont proposés : oui


8 - Quitter et Fermer le Centre de Contrôle quand c'est terminé

Pour la configuration et la modifications des fichiers de conf., 2 solutions manuelles hélas :
- Soit l'édition directe en tant que super-utilisateur sur un terminal (nombreux éditeurs unix/linux)
- Soit déplacer le fichier de conf. dans un dossier personnel, le modifier avec un éditeur graphique (id. nombreux éditeurs) puis le recopier à sa place là aussi en mode terminal et en SU.

Il existe un "couteau suisse" de la configuration en html : webmin ; dans un navigateur (après installation) :
tapez https://localhost:10000 - mais je ne m'y fait pas !

Où trouver les fichiers de configuration :
Pour POSTFIX :  /etc/postfix/main.cf ; tout est là.
          Par contre, vous pouvez voir toutes les options par défaut dans : /etc/postfix/main.cf.default
Pour DOVECOT               : /etc/dovecot/dovecot.conf
          et dans le dossier : /etc/dovecot/conf.d/
Configuration : on va commencer par POSTFIX (1 seul fichier de conf.)
Fichier complet ci-dessous :
D'abord la valeur par défaut de $myhostname ; en mode terminal, au prompt tapez : hostname
=> ce nom doit correspondre à celui que vous avez (voulez) indiqué(er) dans la table de votre registar - cf sujet nom de domaine
      doit ressembler à : monserveurmail.mondomaineamoi.xxx
      permet également de générer la valeur par défaut de $mydomain (mondomaineamoi.xxx) cf. ci-dessous
=> si non,
- soit modifier en conséquence le fichier "hostname" dans le dossier /etc/ - SU mode terminal ou éditeur graphique et copie
- soit ajouter avant la ligne mydestination : 


- soit ajouter à la ligne mydestination
 (avec virgules séparatives) :

Ces 2 dernières solutions évitent les problèmes de modification intempestive du hostname lors d'installations diverses...

myhostname = monserveurmail.mondomaineamoi.xxx
mydomain = mondomaineamoi.xxx
 , monserveurmail.mondomaineamoi.xxx, mondomaineamoi.xxx
A quoi ça sert ?

- home_mailbox =
endroit ou vont être stockés les mails reçus. Le dossier sera crée automatiquement dans le dossier personnel de l' (des) utilisateur(s) dès le premier courriel reçu. Bien évidemment ce(s) dernier(s) ont déjà été crées.
=> ce sera le même dans DOVECOT :-)
=> il existe d'autres options, mais celle-ci est la plus efficiente à mon sens
- mailbox_size_limit =
taille atribuée au dossier de stockage ; 0 = illimité (on verra...)
- message_size_limit =
taille des messages ; c'est vous qui voyez = 50 GO
- mydestination =
nom des destinataires des messages que POSTFIX conserve 
- myorigin =
domaine indiqué dans les courriels envoyés par le serveur.
=> Par défaut c'est utilisateur@monserveurmail.mondomaineamoi.xxx, là ce sera utilisateur@mondomaineamoi.xxx mieux non ?
J'anticipe un peu, mais comme  on va configurer DOVECOT avec authentification on dit à POSTFIX de l'utiliser
- smptd_sasl_auth_enable =
identification nécessaire = oui
- smtpd_sasl_path = endroit où est stocké le certificat
- smtpd_sasl_type = dovecot : forcément
- relayhost = smtp de votre FAI voir commentaire dans le 3ème pavé ; et c'est par là que ça passe









Ca devrait le faire !

#pour orange... authentifcation nécassaire

relayhost = smtp.orange.fr:587 
smtp_sasl_auth_enable = yes 
smtp_sasl_password_maps = hash:/etc/postfix/sasl_mdp 
smtp_sasl_security_options = noanonymous

=> sasl_mdp(.db) ou autre nom à votre convenance
pour créer le fichier sasl_mdp.db 
- créer dans /etc/postfix un fichier texte juste avec :
smtp.orange.fr:587  identifiant@orange:lemotdepasse
sauvegarde avec comme nom : sasl_mdp
- en mode terminal :
postmap /etc/postfix/sasl_mdp [entrée]
et le .db est crée ; supprimer le fichier texte

Configuration : passons maintenant à DOVECOT : c'est plus éparpillé

Je ne dirai pas que dovecot.conf ne sert à rien mais presque...
Par contre les fichiers conf. sont tous très bien causé (en EN/US dommage) 

Donc, en ce qui concerne dovecot.conf, une seule ligne nous interesse :
# Protocols we want to be serving. 
protocols = imap pop3
 = et/ou : ce que vous souhaitez et avez besoin
les imaps et pop3s ne sont pas utiles ici, automatiques avec master.conf.

La dernière ligne nous interesse aussi.
# A config file can also tried to be included without giving an error if 
# it's not found: 
!include_try local.conf 

=> ça dit d'aller voir dans les autres fichiers de conf (dossier conf.d)... au cas où !

Alors on va aller les voir et notamment ceux-là (ordre alpha-num.) :
et à chacun sa ligne...

10-auth.conf
# Disable LOGIN command and all other plaintext authentications unless 
# SSL/TLS is used (LOGINDISABLED capability). Note that if the remote IP 
# matches the local IP (ie. you're connecting from the same computer), the 
# connection is considered secure and plaintext authentication is allowed. 
# See also ssl=required setting. 
disable_plaintext_auth = yes
 comme on va être en SSL (10-ssl.conf) on désactive cette fonction

10-mail.conf
mail_location = maildir:~/Maildir
Ca vous rapelle quelque chose ? => jeter un oeil sur les autres options

10-master.conf
service imap-login { 
inet_listener imap { 
port = 143 

inet_listener imaps { 
port = 993 
ssl = yes 
}
}
on active les services imap et les ports
service pop3-login { 
inet_listener pop3 { 
port = 110 

inet_listener pop3s { 
port = 995 
ssl = yes 

}
on active les services pop et les ports
# Postfix smtp-auth 
unix_listener /var/spool/postfix/private/auth { 
mode = 0660 
user = postfix 
group = postfix 

on autorise POSTFIX à utiliser le service d'authentification de DOVECOT
=> Les services imaps et pop3s ce n'est pas très utille mais tant qu'on y est.

10-ssl.conf
# SSL/TLS support: yes, no, required. <doc/wiki/SSL.txt> 
ssl = required activation du mode d'authentification

# PEM encoded X.509 SSL/TLS certificate and private key. They're opened before 
# dropping root privileges, so keep the key file unreadable by anyone but 
# root. Included doc/mkcert.sh can be used to easily generate self-signed 
# certificate, just make sure to update the domains in dovecot-openssl.cnf 
ssl_cert = </etc/ssl/certs/dovecot.pem
ssl_key = </etc/ssl/private/dovecot.pem stockage des clés d'authentification

20-pop3.conf
# Note that Outlook 2003 seems to have problems with %v.%u format which was 
# Dovecot's default, so if you're building a new server it would be a good 
# idea to change this. %08Xu%08Xv should be pretty fail-safe. 

pop3_uidl_format = %08Xu%08Xv

on évite les problèmes...encore que le client ci-dessus doit être en cours de disparition

On est prêt !



Fichier complet ci-dessous :
NB :Je mets en plus les commentaires:
#aaaaaa
Quelques vérifications :

Dans un terminal en SU
Taper : doveconf -n
[entr]
=> toutes les configurations que vous avez saisies pour DOVECOT doivent s'afficher

  puis    postconf -n [entr]
=> id pour POSTFIX

et maintenant on démarre :

1 - A partir d'une session utilisateur : Centre de Contrôle
2 - Mot de passe "root" (SU) et le Centre de Contrôle est disponible ; il s'ouvre sur la fenêtre de gestion des logiciels.
Dans le menu de gauche : sélectionner "Système"
3 - Sélectionner "Gérer les services système en..."
Vous êtes sur la liste des services de linux descendre jusqu'à DOVECOT

Cocher "Au démarrage" afin que le service se lance automatiquement dès le démarrage de votre serveur.
Puis cliquer "démarrer".
Le service doit passer "actif" . 

On fait la même chose avec POSTFIX

Même effet et le service doit passer "actif" . 

OK pour sortir
Fermer le Centre de Contrôle

On n'oublie pas les ports à ouvrir sur le serveur : courrier / pop / imap - 25 110 143

Et sur le routeur au moins le 25 entrée/sortie pour recevoir le courrier.
Si on veut interroger son MDA (DOVECOT) depuis internet , il faut ouvrir 110 et 143 selon
Et le MUA (client messagerie) ...

Créer un compte avec :
adresse : utilisateur@mondomaineamoi.xxx
serveurs sur le réseau : 192.168.nnn.nnn
serveurs sur internet : mondomaineamoi.xxx

=> en principe, sur les MUA moderne, il y a détection automatique des paramètres.
     Si problème sur les paramètres de sécurité : mot de passe = normal
                                                                                         sécurité connexion = STARTTLS

 

Et quand le petit scarabée sera devenu maître, il pourra s'attaquer aux autres options...
Et l'antispam
Et l'antivirus
et...

Traduction française