Postfix et la messagerie Fanilo Harivelo Université de la Réunion 2008-2009 Fanilo Harivelo Postfix et la messagerie 2008-2009 1 / 22
Introduction Messagerie Existe depuis le début d Arpanet Une des applications les plus utilisées avec le web RFC 821, 822, 2821, 2822 Postfix Alternative à Sendmail Flexibilité Simplicité d administration Sécurité Fanilo Harivelo Postfix et la messagerie 2008-2009 2 / 22
Les différentes composantes de la messagerie Mail User Agent (MUA) Lecture et composition des messages Ex : Thunderbird, Outlook Mail Transfert Agent (MTA) Transport des messages Ex : Sendmail, Postfix Mail Delivery Agent (MTA) Livraison des messages dans la boîte du destinataire Ex : procmail Serveur POP/IMAP Récuperation des messages par le client Ex : Cyrus Fanilo Harivelo Postfix et la messagerie 2008-2009 3 / 22
Autres éléments Postmaster Administrateur du système de messagerie Enveloppe et entête de message Les différencier Ex : Liste de diffusion Adresse email partielocale@domaine Message Constitué d une entête et d un corps Fanilo Harivelo Postfix et la messagerie 2008-2009 4 / 22
SMTP (1) Protocole utilisé pour le tranfert de messages Fonctionnement client/serveur Echange Requête/Réponse Fanilo Harivelo Postfix et la messagerie 2008-2009 5 / 22
SMTP (2) t e l n e t m a i l. s e r v e u r. com 25 HELO c l i e n t. d o m a i n e c l i e n t. com 250 c l i e n t. d o m a i n e c l i e n t. com MAIL FROM:< c l i e n t @ d o m a i n e c l i e n t. com> 250 Ok RCPT TO:< d e s t i n a t a i r e @ s e r v e u r. com> 250 Ok DATA Date : Mon, 8 Apr 2003 1 5 : 3 8 : 2 1 0500 From : C l i e n t <c l i e n t @ d o m a i n e c l i e n t. com> To : <d e s t i n a t a i r e @ c l i e n t. com> Reply To : <c l i e n t @ d o m a i n e c l i e n t. com> Message ID : <4545001458 @mail. d o m a i n e c l i e n t. com> S u b j e c t : Bonjour Test SMTP. Fanilo Harivelo Postfix et la messagerie 2008-2009 6 / 22
Architecture Les tâches sont réparties en différentes fonctions Les fonctions sont assurées par des programmes séparés (démons) Le démon master invoque les différents programmes et leur assigne les tâches Architecture Présentation du message > Queue Manager > Agent de livraison (smtp, local, piper,...) Fanilo Harivelo Postfix et la messagerie 2008-2009 7 / 22
Présentation des messages Selon 4 possibilités Soumis localement postdrop > maildrop >pickup > cleanup/trivial-rewrite > incoming Reçu par le réseau smtpd > cleanup > incoming Message déjà accepté par Postfix et retransmis Message généré par Postfix Fanilo Harivelo Postfix et la messagerie 2008-2009 8 / 22
Queue Manager Gère 4 types de files Incoming Active Deferred Démons defer et bounce Corrupt Fanilo Harivelo Postfix et la messagerie 2008-2009 9 / 22
Livraison Locale Démon local Alias Virtual mailbox Relais L agent smtp Livraison vers pipe Le démon pipe Fanilo Harivelo Postfix et la messagerie 2008-2009 10 / 22
Organisation du système de fichiers de postfix Configurations standard /etc/postfix Fichiers de configuration et tables de correspondance (lookup tables) /usr/libexec/postfix Démons et programmes /var/spool/postfix Files /usr/sbin Commandes postfix Fanilo Harivelo Postfix et la messagerie 2008-2009 11 / 22
Premier démarrage Définir le nom d hôte complet En le définissant sur le système En utilisant les variables myhostname/mydomain #p o s t c o n f e myhostname=machine. mondomaine. com Regénération de la base de données d alias #n e w a l i a s e s Démarrage du serveur #p o s t f i x s t a r t Lecture des logs Fanilo Harivelo Postfix et la messagerie 2008-2009 12 / 22
Les fichier master.cf et main.cf Recharger postfix après modification de ces fichiers #p o s t f i x r e l o a d Fichier master.cf Contrôle du démon master Fichier main.cf Coeur de la configuration de Postfix Fanilo Harivelo Postfix et la messagerie 2008-2009 13 / 22
Exemple de définition de paramètres dans main.cf # D é f i n i t i o n du nom de l hote myhostname = s e r v e r. mondomaine. com mydomain = mondomaine. com m y o r i g i n = $mydomain m y d e s t i n a t i o n = / e t c / p o s t f i x / d e s t i n a t i o n s Fanilo Harivelo Postfix et la messagerie 2008-2009 14 / 22
Tables de correspondance (1) Fournir des informations de configuration et/ou correspondance par une recherche de motifs # F i c h i e r / e t c / p o s t f i x / c a n o n i c a l u t i l i s e # par l a v a r i a b l e c a n o n i c a l m a p s nom@mondomaine. com prenom. nom@domaine. com Création d une version indexée du fichier #postmap / e t c / p o s t f i x / c a n o n i c a l Requête sur la table #postmap q nom@mondomaine. com / e t c / p o s t f i x / c a n o n i c a l Fanilo Harivelo Postfix et la messagerie 2008-2009 15 / 22
Tables de correspondance (2) Affichage des formats de bases de données supportées $ p o s t c o n f m Affichage du format par défaut $ p o s t c o n f d e f a u l t d a t a b a s e t y p e Exemple d utilisation c a n o n i c a l m a p s = hash : / e t c / p o s t f i x / c a n o n i c a l Ordre de recherche Adresse complête Partie locale / Domaine @domaine /.domaine Fanilo Harivelo Postfix et la messagerie 2008-2009 16 / 22
Les alias Fichier /etc/aliases nom : prenom. nom@mondomaine. com Création de la base de données $ p o s t a l i a s e s / e t c / a l i a s e s Exemple d utilisation a l i a s m a p s = hash : / e t c / a l i a s e s Fanilo Harivelo Postfix et la messagerie 2008-2009 17 / 22
Le relayage Politique de relayage mynetworks = 1 9 2. 1 6 8. 1. 0 / 2 4 Simple Authentication and Security Layer (SASL) Ex : pop-before-smtp, certificat Forward f o r w a r d p a t h = /mount/ $ u s e r s /. f o r w a r d $home /. f o r w a r d Fanilo Harivelo Postfix et la messagerie 2008-2009 18 / 22
Commandes d administration #p o s t f i x s t a r t #p o s t f i x s t o p #p o s t f i x r e l o a d #p o s t f i x check Fanilo Harivelo Postfix et la messagerie 2008-2009 19 / 22
Réécriture d adresses Désactivation de la complétion d adresse a p p e n d a t o r i g i n = no append dot mydomain = no Masquage de domaine masquerade domains = sousdomaine. mondomaine. com,! nepasmasquer. domain. com, domain. com m a s q u e r a d e e x c e p t i o n s = root, admin Utilisateur inconnu l u s e r r e l a y = p a r d e f a u t l o c a l r e c i p i e n t m a p s = Fanilo Harivelo Postfix et la messagerie 2008-2009 20 / 22
Stockage des messages Formats Mbox Maildir Répertoire de stockage # Format Mbox m a i l s p o o l d i r e c t o r y = / v a r / s p o o l / m a i l # Format M a i l d i r m a i l s p o o l d i r e c t o r y = / v a r / s p o o l / m a i l / # D e l i v r e l e s messages dans l e r é p e r t o i r e u t i l i s a t e u r home mailbox = mbox home mailbox = m a i l d i r / Fanilo Harivelo Postfix et la messagerie 2008-2009 21 / 22
Références http ://www.postfix.org/ http ://x.guimard.free.fr/postfix/ Kyle Dent D., Postfix : The Definitive Guide, O Reilly Ralf Hildebrandt and Patrick Koetter, The Book of Postfix : State-of-the-Art Message Transport, No Starch Press Fanilo Harivelo Postfix et la messagerie 2008-2009 22 / 22