Post Fix

  • Uploaded by: Guy Stephane Goumanon
  • 0
  • 0
  • July 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Post Fix as PDF for free.

More details

  • Words: 1,715
  • Pages: 8
INSTALLATION D'UN SERVEUR DE MESSAGERIE POSTFIX

LINUXTIPS - Mes trucs et astuces sous LINUX -- Réseau - Services Réseaux --

Services Réseaux

INSTALLATION D'UN SERVEUR DE MESSAGERIE POSTFIX Laurent Rayssiguier mardi 27 juin 2006

Résumé : Mise en place rapide d'un serveur de messagerie Postfix. Pas trop de détails, mais un article rapide, à compléter au besoin.

LINUXTIPS - Mes trucs et astuces sous LINUX

Page 1/8

INSTALLATION D'UN SERVEUR DE MESSAGERIE POSTFIX

Préambule Je viens de faire dans ce titre un abus de language très courant. Postfix n'est pas un serveur de messagerie complet, mais un serveur SMTP. SMTP est le protocole de transport des messages sur Internet, mais ne permet pas aux clients messagerie (comme outlook express ou thunderbird) de lire les emails. Il faut pour cela un service POP3 ou IMAP. Ce qui implique qu'il faut installer un logiciel complémentaire à Postfix, comme Dovecot, Cyrus IMAP, ou Courier IMAP. Ici j'utiliserai Dovecot, le serveur qui est choisi en standard par RedHat dans ses installations.

Introduction Par défaut les distributions Redhat ou CentOS utilisent le serveur de messagerie sendmail. Ce serveur est très fiable, mais a rencontré dans son histoire une quantité de bugs de sécurité impressionnante. Ceci est dû au fait que lors de sa conception, Internet était limité et la délinquance informatique quasiment nulle. Ce logiciel est donc souvent abandonné et remplacé par un autre logiciel plus fiable. Dans la liste des serveurs SMTP, les plus courants sont postfix et qmail. Je vais traiter ici de l'installation et la configuration de base de postfix, le serveur de mail qui progresse le plus actuellement.

Installation de POSTFIX avec YUM Yum est le gestionnaire de paquet évolué utilisé par Redhat et CentOS. Il permet d'installer, de mettre à jour ou de supprimer des paquetages logiciels avec ses dépendances. C'est lui que j'utilise pour installer postfix et system-switch-mail un utilitaire de changement de service SMTP. yum -y install postfix system-switch-mail

Une fois l'installation faite, lancez la commande system-switch-mail

Vous obtenez l'écran suivant :

LINUXTIPS - Mes trucs et astuces sous LINUX

Page 2/8

INSTALLATION D'UN SERVEUR DE MESSAGERIE POSTFIX

sélection switch mail Choisissez Postfix et validez votre choix.

validation du choix Validez le message. On peut maintenant supprimer sendmail sans regrets. rpm -e sendmail

System-swicth-mail ayant fait son travail, c'est maintenant postfix qui fonctionne sur votre serveur. On peut le vérifier avec la commande suivante : [root@centOS ~]# lsof -i -n |grep smtp master

3920

root

12u

IPv4

9004

TCP 127.0.0.1:smtp (LISTEN)

Installation de Dovecot Comme pour postfix, on utilise yum.

LINUXTIPS - Mes trucs et astuces sous LINUX

Page 3/8

INSTALLATION D'UN SERVEUR DE MESSAGERIE POSTFIX

yum -y install dovecot

Voila, c'est tout

Activation des services au démarrage de l'ordinateur Postfix est lancé d'office par le système, alors que dovecot bien qu'installé ne sera pas démarré lors du boot du serveur. Pour corriger ceci, il suffit de taper les commandes suivantes. chkconfig dovecot on chkconfig postfix on # Inutile, mais on ne sait jamais...

Paramétrage de POSTFIX Postfix étant un serveur SMTP, il va "écouter" sur le port standard 25. Ceci est configuré dans le fichier master.cf, mais on va conserver ce paramètre. Le paramétrage de postfix se fait dans le fichier /etc/postfix/main.cf Il faut donc, éditer le fichier /etc/postfix/main.cf pour modifier les valeurs par défaut importantes. main.cf possède une pléthore de paramètres qu'il serait trop long de détailler. Je vous conseille de lire le livre "Postfix La Référence - Auteur Kyle DENT - ed O'Reilly" qui comme son nom l'indique est LA REFERENCE sur ce serveur SMTP. Vous trouverez ce livre sur le site de la librairie EYROLLES Ceci dit, seuls quelques uns doivent être adaptés pour correspondre à ses besoins. Voici les paramètres à modifier avec une explication rapide. Pour plus de détail voir les documentations de postfix. myhostname = monserveur.mondomaine.fr # Comme son intitulé l'indique, c'est le nom canonique du serveur de mail. # Son nom complet en fait. # Penser à renseigner ce nom avec la concordance avec son adresse ip dans le # fichier /etc/hosts, sinon, postfix peut se comporter bizarrement.

mydomain = mondomaine.fr # Le nom de domaine que va gérer postfix

myorigin = $mydomain

LINUXTIPS - Mes trucs et astuces sous LINUX

Page 4/8

INSTALLATION D'UN SERVEUR DE MESSAGERIE POSTFIX

# Quand le serveur envoie un email, il complète le message avec le nom du # domaine émetteur.

inet_interfaces = $myhostname, localhost # Sur quelles interfaces écoute postfix, par défaut postfix écoute sur # localhost uniquement, on peut choisir de mettre inet_interfaces = all pour # qu'il écoute sur toutes les interfaces ou spécifier chaque interface comme # ici. Attention, l'adresse correspondant à la variable myhostname est lue # dans le fichier /etc/hosts

mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain, www.$mydomain # Pour quelles entités postfix va recevoir les emails, par défaut uniquement # pour localhost, il faut définir en supplément $mydomain pour avoir un # serveur de messagerie pour tout un domaine, on peut également gérer des # alias rattachés au serveur comme ici www.mondomaine.fr

mynetworks = 213.190.70.0/24, 127.0.0.0/8 # Variable à modifier quand on a plusieurs sous réseaux, mais postfix par # défaut accepte le relais pour les réseaux représentés par ses interfaces. # Cette variable permet de bloquer les spams venant de réseaux inconnus.

relayhost = [mailserver.isp.tld] # Cette variable est très utile dans le cas où vous avez un serveur interne de # messagerie inconnu d'Internet. Entrez entre crochets le nom du serveur # sortant SMTP de votre Fournisseur d'accès, par exemple [smtp.wanadoo.fr]. # Les messages sortant sur Internet seront expédiés à ce serveur au lieu # d'être émis en direct par votre serveur. Cela contourne les filtres antispam # de certains serveurs de messagerie.

alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases # Valeurs par défaut du fichier aliases. # Pour avoir plus d'informations, jettez un oeil au "man aliases" # Ce fichier sert à créer des comptes virtuels et à indiquer au système qui # est l'administrateur de messagerie qui recevra les messages d'erreur du # serveur.

Pensez à demander à postfix de relire sa configuration en cas de changements par la commande "postfix reload". En cas de modifications importantes comme inet_interfaces, redémarrez complètement postfix avec la commande "/etc/init.d/postfix restart".

Identification serveur de mail pour un domaine

LINUXTIPS - Mes trucs et astuces sous LINUX

Page 5/8

INSTALLATION D'UN SERVEUR DE MESSAGERIE POSTFIX

Lorsqu'un serveur de mail veut envoyer un email, il doit savoir avec quel serveur il doit parler et où se trouve ce serveur. Pour cela il fait comme nous pour la poste il consulte un annuaire Internet nommé DNS. DNS est un annuaire "éclaté". 13 serveurs "racines" servent la zone "." et interrogent ensuite d'autres serveurs DNS gérant un domaine en particulier. Un nom DNS "complet" s'écrit comme ceci mail.caplaser.fr. et un serveur DNS fait sa recherche de droite à gauche comme ceci : "." # Interrogation des serveurs "racine" pour connaître les serveurs gérant la zone fr "fr" # Interrogation des serveurs de zone fr afin de savoir quel serveur gère la zone caplaser.fr "caplaser.fr" # Interrogation du serveur DNS de Caplaser afin de savoir quelle est l'adresse IP de la machine mail.caplaser.fr "mail.caplaser.fr" # Obtention de l'adresse IP Ceci est la façon de chercher une machine avec son nom sur Internet, mais qu'en est-il des serveurs de messagerie en particulier ? DNS fourni un enregistrement particulier nommé MX pour Mail eXchanger qui référence le(s) nom(s) du(des) serveur(s) de messagerie pour le domaine en question. On peut voir quels serveurs gèrent un domaine avec la commande linux host. [root@centOS ~]# host -t mx caplaser.com caplaser.com mail is handled by 20 mx2.caplaser.fr. caplaser.com mail is handled by 10 mail.caplaser.com.

host fait une requête DNS qui renvoie uniquement les champs MX pour le domaine demandé, caplaser.com dans ce cas.

Création d'un compte de messagerie Les comptes de messagerie ne doivent pas avoir d'accès à la console du système linux. Pour ce faire, pensez à indiquer un shell particulier pour l'utilisateur créé. Ce qui donne ceci pour l'utilisateur toto : useradd -s /sbin/nologin -c "Commentaire Utilisateur Toto" toto

Affectez-lui ensuite un mot de passe par la commande :

LINUXTIPS - Mes trucs et astuces sous LINUX

Page 6/8

INSTALLATION D'UN SERVEUR DE MESSAGERIE POSTFIX

passwd toto

Il vous sera demandé son mot de passe, puis une confirmation de ce dernier.

Suppression d'un compte de messagerie Reprenons l'exemple de notre utilisateur toto : userdel -r toto

L'option -r va supprimer également le dossier de l'utilisateur et sa boite aux lettres dans /var/spool/mail. Ne l'indiquez pas si vous voulez conserver ses données pour les attribuer par exemple.

Verrouillage d'un compte ( root uniquement ) Pour verrouiller un compte provisoirement, utilisez la commande suivante : passwd -l toto

Déverrouillage d'un compte ( root uniquement ) Pour déverrouiller ce compte, utilisez la commande : passwd -u toto

Changement de mot de passe Comme lors de la création du compte, c'est à dire : passwd le_nom_du_compte

Test de la messagerie Vous pouvez envoyer un email de test en ligne de commande comme ceci ( exemple pour un email à toto ) :

LINUXTIPS - Mes trucs et astuces sous LINUX

Page 7/8

INSTALLATION D'UN SERVEUR DE MESSAGERIE POSTFIX

[root@centOS ~]# mail toto@localhost Subject: Test email Bonjour, Ceci est un test Il doit se finir par une ligne contenant un point uniquement, comme ceci . Cc: [root@centOS ~]#

L'email est parti normalement Il ne vous reste plus qu'à faire du POP avec les paramètres du compte toto pour lire votre mail.

Débug de postfix En cas de problèmes de messagerie, pensez à lire les logs ! C'est standard sur Linux, mais on oublie souvent. Les logs de postfix et du service mail en général sont dans /var/log/maillog Faites un "tail -f /var/log/maillog" pour voir les messages en temps réel, ou utilisez grep pour rechercher une chaîne de caractères. Une fois que vous avez le message d'erreur, essayez de le comprendre, et en désespoir de cause, jetez un oeil sur www.google.fr Ce moteur de recherche est phénoménal, et vous permet de faire des recherches sur des forums, qui sont souvent très bien renseignés sur le sujet. Ne vous inquiétez pas, si vous avez une erreur, il y a peu de chances que d'autres personnes ne les aient pas eu.

LINUXTIPS - Mes trucs et astuces sous LINUX

Page 8/8

Related Documents


More Documents from "yoyok"