Vue d'ensemble Mail façon FAI - Debian 5.0 Lenny
Rédigé par Marc GUILLAUME | Aucun commentaireUn aperçu de ce qu'implique l'envoi et la réception d'un email.
Le cheminement des emails sur internet
Les logiciels que nous allons utiliser
La configuration décrite ici utilise ces composants logiciels (les versions sont celles par défaut de la distribution Lenny) :
- Postfix (2.5.5) pour la réception des mails entrants depuis Internet et qui effectue quelques vérifications de base
- Dovecot (1.0.15) pour stocker les mails sur le disque dur et autoriser les utilisateurs à accéder à leurs mails en utilisant POP3 et IMAP
- Squirellmail (1.4.15) interface webmail pour que les utilisateurs puissent lire leurs mails depuis un navigateur web.
- MySQL (5.0.51a) comme base de données de stockage des informations concernant les domaines, les utilisateurs et les redirections d'adresse.
- AMaViS (2.6.1) pour l'analyse de contenu des mails entrants en utilisant ClamAV et SpamAssassin
- Clam Antivirus (0.94) pour la détection des virus
- SpamAssassin (3.2.5) pour la détection des pourriels
Le merveilleux trajet d'un Email
Avant d'entrer dans les détails voyons le graphique général :
- Un email vous est envoyé via le protocole SMTP qui utilise TCP sur le port 25. Postfix accepte la connexion, lit le mail et effectue quelques vérifications de base. L'expéditeur est-il inscrit sur une liste noire (blacklist) en temps réel ? Provient-il d'un utilisateur authentifié ce qui fait que l'on peut se dispenser de vérifier l'autorisation du relayage ? Ou bien est-ce que le destinataire est bien un utilisateur existant sur notre système ? Si nous ne faisons pas confiance le système distant alors nous appliquons une liste grise (greylisting). A ce stage Postfix peut rejeter ou accepter cet email.
- Postfix transmet le mail via le protocole SMTP sur le port 10024 à AMaViS pour vérifier son contenu. Notez qu'à ce stade le mail ne peut plus être simplement rejeté. AMaViS peut soit l'accepter soit le rejeter. En général AMaViS est configuré pour ajouter un certain entête au mail de façon que l'utiisateur puisse voir qu'AMaViS pense par exemple qu'il s'agit d'un pourriel.
- AMaViS laisse SpamAssassin vérifier si le mail est un spam. On peut apprendre à SpamAssassin quels mails sont des spams de manière à augmenter la fiabilité de ses détections.
- AMaViS passe également le mail à ClamAV pour voir s'il contient quelque virus
- Après ces contrôles, AMaViS renvoit le mail à Postfix mais cette fois sur le port 10025 TCP. Postfix est configuré pour considérer comme de confiance les mails arrivant par ce port, ainsi d'autres contôles de contenu sont évités
- Postfix envoit le mail à Dovecot. Dovecot peut optionnellement appliquer des filtres par utilisateur, ainsi les mails peuvent être stockés dans certaines dossiers de mail automatiquement si on le désire
- Dovecot écrit le mail sur le disque dur au format maildir
- Le client de mail de l'utilisateur peut maintenant récupérer le nouvel email de Dovecot en utilisant les protocols POP3 ou IMAP.