ThierryR Salomon – GNU Free Documentation Licence
Transcription
ThierryR Salomon – GNU Free Documentation Licence
Serveur de courrier électronique ● Objectif: ● ● ● Mettre en oeuvre un serveur de courrier électronique Contenu: ● Principes, acheminement, protocoles, fonctionnement ● Mise-en-oeuvre ● Postfix ● Configuration Durée: ● 1/2 journée ThierryR Salomon – GNU Free Documentation Licence Principes ● ● ● ● ● plusieurs standards : – SMTP pour l'envoi, – POP: pour la récupération par pur transfert des messages – IMAP: pour la récupération en permettant de laisser les messages sur le serveur pour les consulter de n'importe où. Le MUA de l'expéditeur envoie par SMTP le message à un serveur de courrier (celui de son fournisseur d'accès en général) Le premier MTA envoie le message au MTA du destinataire (celui de son domaine domaine2.org) qui le stocke en attente de consultation. Le destinataire, par l'intermédiaire de son MUA, demande à son serveur de courrier les nouveaux messages. Le serveur envoie le message au MUA du destinataire. ThierryR Salomon – GNU Free Documentation Licence Acheminement des courriels Image sous licence GFDL réalisée par DenisG (www.denisg.net) ThierryR Salomon – GNU Free Documentation Licence Résolution de noms ● ● Une adresse est du type [email protected] Pour envoyer un message à cette adresse, le serveur SMTP doit résoudre le nom pour trouver l'adresse du serveur SMTP du domaine destinataire – requête DNS: – retourne les adresses des serveurs de messagerie avec leur priorité: dig libre-services.fr MX 10 mx1.ocsa-data.net ● 15 mx1.ocsa-data.net Le serveur expéditeur peut alors contacter le serveur destinataire en utilisant le protocole SMTP pour lui envoyer le message ● ● ThierryR Salomon – GNU Free Documentation Licence protocole SMTP ● c'est le protocole pour envoyer un message à un MTA ● port 25 ● simple, il utilise quelques mots clés ● les messages de réponses sont des codes numériques + texte explicatif: ● ● ● – 220 le service est prêt – 250 le transfert d'un courriel est terminé – 550 boîte aux lettres non trouvée basé sur l'ASCII, on peut effectuer une session avec telnet SMTP ne connaît que ASCII US (7 bits), ESMTP (Extended) peut travailler en mode 8 bits (et donc véhiculer des fichiers binaires). sécurisable par l'utilisation de chiffrage SSL et de certificats ThierryR Salomon – GNU Free Documentation Licence Fonctionnalités des MTA ● Un MTA peut rejeter un message pour une de ces raisons : – ● ● ● serveur non concerné : ● seuls les membres d'un certain réseau sont autorisés (celui du FAI) ● les messages sont acceptés seulement pour les destinataires de tel domaine – non respect des normes : message ou requête mal-formés – expéditeur en liste noire : les serveurs connus comme étant utilisés par les spammeurs sont répertoriés dans des listes noires Le rejet d'un message provoque généralement l'envoi d'un email à l'expéditeur l'informant que le message a été refusé (bounce) Pour palier les défaillances d'un MTA, on peut utiliser un second. On définit leur ordre de priorité dans la configuration DNS Les MTA savent gérer les indisponibilités des serveurs destinataires en plaçant les messages en file d'attente. Après plusieurs tentatives de retransmettre le message, le message est rejeté. ThierryR Salomon – GNU Free Documentation Licence Session SMTP $ telnet smtp1.laposte.net smtp Trying 81.255.54.11... Connected to smtp1.laposte.net. Escape character is '^]'. 220 smtp.laposte.net ESMTP Service (7.3.118.3) ready HELO ifrance.com 250 smtp.laposte.net MAIL FROM: <[email protected]> 250 MAIL FROM:<[email protected]> OK RCPT TO: <[email protected]> 250 RCPT TO:<[email protected]> OK DATA 354 Start mail input; end with <CRLF>.<CRLF> salut ça va ? . 250 <461CECB90195D0A8> Mail accepted QUIT ThierryR Salomon – GNU Free Documentation Licence protocole POP3 ● ● ● C'est le protocole pour récupérer les messages enregistrés par le MTA dans une boîte aux lettres Implémenté par un logiciel serveur qui écoute sur le port 110 Le logiciel serveur POP écoute et authentifie les connexions pour livrer ensuite les messages contenus dans la boîte aux lettres ● protocole simple, avec quelques commande ● utilise des messages ASCII comme SMTP ● POP3S (POP3 over SSL) utilise SSL pour sécuriser la communication avec le serveur. Utilise le port 995. ThierryR Salomon – GNU Free Documentation Licence session POP3 $ telnet pop.ocsa-data.net pop3 Trying 194.36.166.12... Connected to pop.ocsa-data.net. Escape character is '^]'. +OK Server ready. USER [email protected] +OK Password required PASS xxxxxxxx +OK Logged in. STAT +OK 43 1099448 LIST +OK 43 messages: 1 19535 2 5817 [...] RETR 11 +OK 1696 octets Return-path: <[email protected]> Envelope-to: [email protected] Received: from [127.0.0.1] (helo=localhost) by node2-2.ocsa-data.net with esmtp (Exim - FreeBSD Rulez) id 1HghDv-000Ebf-7u for <[email protected]>; Wed, 25 Apr 2007 15:07:55 ThierryR Salomon – GNU Free Documentation Licence Mise-en-Oeuvre ● ● Démarche: – installer un serveur SMTP – installer un serveur POP ou IMAP – créer les boîtes aux lettres – installer et paramétrer les MUA sur les postes clients Logiciels sur Linux – – Les logiciels de base, les Mail XXX Agents: ● MUA (User) : mail, Mutt, Kmail, Claws Mail, Thunderbird, Evolution ● MDA (Delivery): procmail, maildrop ● MTA (Transport): sendmail, postfix, exim, qmail ● serveurs POP/IMAP: dovecot, courier, cyrus, ipopd, uw-imapd Logiciels complémentaires: ● fetchmail: qui rapatrie le courriel à partir d'un serveur (automatisable) ● Gestionnaires de listes de diffusion: majordomo, mailman, sympa ThierryR Salomon – GNU Free Documentation Licence types de fonctionnement de postfix ● Site Internet: – ● Site Internet utilisant un « smarthost » (machine relais): – ● Le courrier est reçu sur cette machine soit directement par SMTP soit grâce à un utilitaire comme fetchmail. Le courrier sortant est envoyé grâce au « smarthost ». Système satellite: – ● Le courrier est expédié et reçu directement, en utilisant SMTP. Aucun courrier n'est reçu localement. Tout le courrier est envoyé au « smarthost » qui le distribue. Distribution locale seulement: – Le système ne dialogue avec aucun autre serveur interne ou externe. Le courrier est distribué aux utilisateurs locaux. ThierryR Salomon – GNU Free Documentation Licence Tests de dépannage ● ● ● activité des serveurs – ps ax | grep -e master -e qmgr -e pickup – netstat -a | grep smtp – telnet {nom_du_serveur} smtp les messages arrivent-ils ? – par défaut les BAL sont dans le répertoire /var/spool/mail – ATTENTION: il existe d'autres endroits pour stocker les BAL (répertoire de connexion) et d'autres formats (Maildir, MH) le courrier en attente – ● mailq journaux – /var/log/mail.* ThierryR Salomon – GNU Free Documentation Licence Postfix ● logiciel serveur de messagerie SMTP ● rapide, simple et sécurisé ● compatible avec sendmail ● très populaire ● ● galaxie de petits programmes spécialisés (master, qmgr, pickup, smtp, sendmail, etc) fichiers de configuration dans /etc/postfix: – main.cf: fichier principal de configuration – master.cf configure le démon master – virtual sert à rediriger le courrier – alias sert à créer des alias – etc. ThierryR Salomon – GNU Free Documentation Licence Configuration ● ● ● ● ● C'est principalement le fichier main.cf qui est concerné paramètres principaux: myhostname, mydomain, myorigin, mydestination Il peut faire référence à des tables de comptes qui peuvent être stockées dans des fichiers ou des bases de données postfix peut gérer plusieurs domaines en même temps à laquelle la machine n'appartient pas: domaines virtuels On peut stocker ses domaines et comptes virtuels dans des bases de données, un serveur LDAP, etc. ● On peut interfacer postfix avec un filtre antispam, antivirus, etc. ● Pour en savoir plus, http://postfix.traduc.org/ ThierryR Salomon – GNU Free Documentation Licence