{{tag>sysadmin linux debian email configuration}} :TODO_DOCUPDATE: ===== Debian : Configurer le système pour l'envoi d'email ====== Le service de messagerie peut être configuré de différentes manière mais il est utilisé par de nombreux utilitaires système, il est donc important de le paramétrer correctement. Il y a trois composants importants qui permettent de fournir le service de messagerie : * Le **MUA** pour **M**ail **U**ser **A**gent : le programme permettant de lire et écrire des mails, il est l'interface avec l'utilisateur. * Le **MTA**, **M**ail **T**ransfer **A**gent, qui se charge de transférer les messages d'une machine à une autre. * Le **MDA** pour **M**ail **D**elivery **A**gent qui a pour rôle de distribuer les messages entrants dans les boites des utilisateurs. Ces trois fonctions peuvent être assurées par des programmes distincts, mais certains d'entre-eux peuvent combiner un ou plusieurs de ces rôles. Sous Unix et Linux, **mutt** était un MUA en mode texte très populaire. Il était utilisé avec les MTA **exim** ou **sendmail** et le MDA **procmail**. Avec l'avènement des interfaces graphiques des clients comme **evolution** de GNOME, **kmail** de KDE ou **Thunderbird** de Mozilla sont aujourd'hui très populaires. ===== Configuration email par défaut ===== Même lorsqu'on prévoit d'utiliser un client lourd en mode graphique comme Thunderbird, il reste judicieux de paramétrer correctement un MTA/MDA traditionnel pour la bonne raison que de nombreux utilitaires (cron, quota, logcheck, aide, mdadm etc) envoient des notifications importantes sur la santé du système. Pour cet usage **exim4** et **mutt** conviennent parfaitement. Ils sont flexibles compactes (~ 20 Mo) et offrent les fonctionnalités MTA/MDA. apt install exim4 mutt Par défaut, exim4 et mutt ne sont configurés que pour gérer les emails en interne du système. Les mails adressés à l'administrateur (root) seront délivrés au premier compte utilisateur créé lors de l'installation. Lorsque les mails sont délivrés, il sont ajoutés dans un fichier ''/var/mail/username''. Les e-mails peuvent être lus via mutt. ==== Test envoi email ==== # Envoyer un mail de test dont le corps du message est vide mutt -s "Test Mail to admin" root < /dev/null # La commande ne retourne pas d'erreur echo $? 0 # Le message est bien déposé dans un fichier appartenant # à l'utilisateur (sudoer) "jdoe" ls -l /var/mail/ total 4 -rw-rw---- 1 jdoe mail 684 20 déc. 17:28 jdoe Pour lire le message, depuis le compte utilisateur lancer **mutt**, l'interface en mode texte est intuitive : le message est listé et en haut de la fenêtre, les touche de commandes sont affichées. ===== Envoyer des mails en dehors du système ===== Avec cette configuration par défaut, les utilitaires devraient être reconfigurés individuellement pour pouvoir envoyer des notifications en dehors du système. Pour éviter cela on va pouvoir reconfigurer la fonction **MTA** de exim4. ==== Configurer le MTA d'exim4 ==== Pour que le système puisse interagir avec des serveurs de messagerie externes, il faut **reconfigurer** le paquet **exim4** : dpkg-reconfigure exim4-config Après avoir validé la commande en root, il sera demandé de séparer la configuration . Sauf besoin spécifique laisser la réponse par défaut. L'assistant de configuration proposera plusieurs scénari, à vous de sélectionner celui qui correspond à vos besoins. {{reconfigure-exim4.png}} * Distribution directe par SMTP (site Internet) : Le système est connecté en permanence au réseau Internet et les mail sont envoyés et reçus via le protocole SMTP. L’assistant demandera le mail de la machine ou les domaines pour lesquels vous recevrez ou relaierai les mails. * Envois par relais "smarthost" - réception SMTP ou fetchmail : Dans ce scénario les mails sortants sont transmis à une autre machine sur le réseau désignée "smarthost" qui se chargera d'acheminer les messages vers leur destination. En général le smarthost peut conserver les messages addressés à cette machine qui n'a pas besoin d'être connectée en permanence au réseau. Cela implique qu'il faudra récupérer les messages via un programme adapté tel que fetchmail. Dans la plupart des cas, le smarthost désigne le serveur mail de votre FAI mais il peut également désigner un serveur d'entreprise ou toute autre machine dédiée à ce service sur votre réseau. * Envois par relais "smarthost" - pas de courrier local : Pour l'essentiel, cette option est identique à la précédente si ce n'est que le système ne gèrera pas de distribution de mails pour le domaine local. NB : Les mails à l'attention du système lui même (administrateur/root) seront toujours traités. * Distribution locale seulement - pas de réseau : Configuration par défaut. * Pas de configuration pour l'instant : A n'utiliser qu'en sachant exactement ce que vous voulez faire: le système est laissé sans configuration mail. ===== Références ===== * [[https://www.debian.org/releases/stable/i386/ch08s04.en.html|Setting Up Your System To Use E-Mail (debian.org)]]