Installation de Postfix depuis le code source


1 - but de ce document

Ce document est un document autonome destiné à vous aider à installer et lancer Postfix depuis les sources avec une nombre minimal d'étapes. Si vous utilisez une version pré-compilé de Postfix, vous devriez lire la documentation générale de Postfix qui vise à décrire plus précisément le système. Ce document autonome ne doit pas être considéré comme faisant partie de la documentation générale de Postfix.

Ce document décrit comment compiler, installer et configurer un système Postfix sfin qu'il puisse faire l'une des opérations suivantes :

Sujets abordés par ce document :

  1. but de ce document
  2. Conventions typographiques
  3. Documentation
  4. Compiler Postfix sur un système supporté
  5. Porter Postfix sur un système non supporté
  6. Installer le logiciel après une compilation réusssie
  7. Configurer Postfix pour envoyer seulement du courrier
  8. Configurer Postfix pour envoyer et recevoir du courrier via une interface virtuelle
  9. Remplacer Sendmail par Postfix
  10. Édition obligatoire des fichier de configuration
  11. Mettre en cage chroot ou non
  12. Soins et alimentation du système Postfix

2 - Conventions typographiques

Dans les instructions suivantes, une commande écrite comme suit :

# command

doit être exécutée par le superutilisateur.

Une commande passée après le '%' :

% command

doit être exécutée par un utilisateur non privilégié.

3 - Documentation

La documentation est disponible sous forme de fichiers README (démarre avec le fichier README_FILES/AAAREADME), de pages HTML (faites pointer votre navigateur sur "html/index.html") et de pages de manuel dans le style UNIX.

Vous pouvez consulter les fichiers README avec un pagineur tel more(1) ou less(1), car ils utilisent des caractères spéciaux pour produire afficher des éléments en gras. Pour imprimer un fichier README sans les caractères spéciaux, utilisez la commande col(1). Par exemple :

% col -bx <file | lpr

Pour consulter les pages de manuel avant d'installer Postfix, modifiez votre variable d'environnement MANPATH pour qu'elle pointe sur les sous-répertoire "man" ; assurez-vous d'utiliser un chemin absolu.

% export MANPATH; MANPATH="`pwd`/man:$MANPATH"
% setenv MANPATH "`pwd`/man:$MANPATH"

Un intérêt tout particulier doit-être porté à la page de manuel postconf(5) qui liste tous les plus de 300 paramètres de configuration. La version HTML de ces textes rend la navigation plus facile.

Tous les fichiers sources de Postfix ont leut propre page de manuel. Les outils pour extraire ces pages de manuel embarquées sont disponibles dans le répertoire "mantools".

4 - Compiler Postfix sur un système supporté

A l'heure actuelle, les systèmes suivants sont supportés par une version de Postfix :

AIX 3.2.5, 4.1.x, 4.2.0, 4.3.x, 5.2
BSD/OS 2.x, 3.x, 4.x
Darwin 1.x
FreeBSD 2.x, 3.x, 4.x, 5.x
HP-UX 9.x, 10.x, 11.x
IRIX 5.x, 6.x
Linux Debian 1.3.1, 2.x, 3.x
Linux RedHat 3.x (Janvier 2004) - 9.x
Linux Slackware 3.x, 4.x, 7.x
Linux SuSE 5.x, 6.x, 7.x
Mac OS X
NEXTSTEP 3.x
NetBSD 1.x
OPENSTEP 4.x
OSF1.V3 - OSF1.V5 (Digital UNIX)
Reliant UNIX 5.x
Rhapsody 5.x
SunOS 4.1.4 (Janvier 2004)
SunOS 5.4 - 5.9 (Solaris 2.4..9)
Ultrix 4.x (depuis longtemps...)

ainsi que des systèmes semblables.

4.1 - Démarrer la compilation

Sur Solaris, la commande "make" et les autres utilitaires pour le développement des logiciels sont dans le répertoire /usr/ccs/bin, ainsi vous DEVEZ avoir /usr/ccs/bin dans votre chmin de recherche de commandes ($PATH).

Si vous devez compiler Postfix pour de multiples architectures, utilisez la commande "lndir" pour construire un répertoire virtuel avec des liens symboliques vers les fichiers sources. "lndir" est un élément de X11R6.

Si à un moment du processus de compilation vous obtenez un messages tel : "make: don't know how to ..." vous devriez pouvoir vous en sortir en lançant la commande suivante à la racine des sources :

% make -f Makefile.init makefiles

Si vous copiez les sources de Postfix après les avoir compilé sur une autre machine, il est préférable de lancer la commande suivante à la racine des sources :

% make tidy

Ceci nettoie les sources de toute dépendance.

4.2 - Quel compilateur utiliser

Pour compiler avec GCC ou avec un compilateur natif s'il est plus adapté à votre système, déplacez-vous simplement à la racine des sources et lancez :

% make

Pour compiler avec un autre compilateur que celui par défaut, vous devez indiquer son nom. Ci-dessous quelques exemples :

% make makefiles CC=/opt/SUNWspro/bin/cc        (Solaris)
% make

% make makefiles CC="/opt/ansic/bin/cc -Ae"     (HP-UX)
% make

% make makefiles CC="purify cc"
% make

et ainsi de suite. Dans certains cas, l'optimisation est désactivé automatiquement.

4.3 - Compiler avec des extensions optionnelles

Par défaut, Postfix se compile en système de messagerie avec relativement peu d'extensions, support de base de données tierce, etc. doivent être configurées lorsque Postfix est compilé. Le document suivant décrit comment compiler Postfix avec le support des extensions :
Extension de PostfixDocumentDisponibilité
Bases de données BerkeleyDB_READMEPostfix 1.0
Bases de données LDAPLDAP_READMEPostfix 1.0
Bases de données MySQLMYSQL_READMEPostfix 1.0
Expressions rationnelles compatibles PerlPCRE_READMEPostfix 1.0
Bases de données PostgreSQLPGSQL_READMEPostfix 2.0
Authentification SASLSASL_READMEPostfix 1.0
Chiffrement de session STARTTLSTLS_READMEPostfix 2.2

Note : le support IPv6 est compilé dans Postfix sur les systèmes d'exploitation qui supportent IPv6. Reportez-vous au fichier IPV6_README pour les détails.

4.4 - Surcharger les valeurs des paramètres par défaut

Tous les paramètres de configuration de Postfix peuvent être changés en éditant le fichier de configuration à l'exception d'un : le parametre qui indique l'emplacement des fichiers de configuration de Postfix. Pour compiler Postfix avec un répertoire de configuration autre que /etc/postfix, utilisez :

% make makefiles CCARGS='-DDEF_CONFIG_DIR=\"/nouvel/emplacement\"'
% make

IMPORTANT : Assurez-vous d'utiliser des apostrophes simples. Ces détails sont importants.

Les parametres dont la valeur par défaut peut être indiquée de cette manière sont :

Nom de macrovaleur par défaut pourvaleur habituelle
DEF_COMMAND_DIR command_directory /usr/sbin
DEF_CONFIG_DIR config_directory /etc/postfix
DEF_DAEMON_DIR daemon_directory /usr/libexec/postfix
DEF_MAILQ_PATH mailq_path /usr/bin/mailq
DEF_HTML_DIR html_directory no
DEF_MANPAGE_DIR manpage_directory /usr/local/man
DEF_NEWALIAS_PATH newaliases_path /usr/bin/newaliases
DEF_QUEUE_DIR queue_directory /var/spool/postfix
DEF_README_DIR readme_directory no
DEF_SENDMAIL_PATH sendmail_path /usr/sbin/sendmail

4.5 - Support de miliers de processus

Pour compiler Postfix pour une utilisation forte où vous pensez avoir besoin de plus de 1000 processus de livraison de courrier, vous devez surcharger la définition de la macro FD_SETSIZE pour que make select() fonctionne correctement :

% make makefiles CCARGS=-DFD_SETSIZE=2048

Attention : ce qui précède n'a aucun effet sur certaines versions de Linux. Apparemment, sur ces systèmes la valeur FD_SETSIZE peut être changée uniquement en utilisant des interfaces non documentées. Généralement, celà se traduit par l'inclusion directe de <bits/types.h> (ce qui n'est pas autorisé) et réécrire la macro __FD_SETSIZE. Soyez prudent, les interfaces non documentées peuvent changer à tout moment sans avertissements préalables.

4.6 - Finalement, compiler Postfix

Si la commande

% make

réussit, alors vous povez procéder à l'installation de Postfix (paragraphe 6).

Si la commande produit des messages d'erreur de compilation, il faut chercher sur le web ou poser une question sur la liste de diffusion postfix-users@postfix.org (en anglais), cherchez d'abord dans les archives de la liste pour ne pas reposer une question déjà traitée. Certains sites d'archives de liste de diffusion sont indiqués sur le site http://www.postfix.org/.

5 - Porter Postfix sur un système non supporté

Chaque type de système que Postfix connait est identifié par un nom unique. Exemples : SUNOS5, FREEBSD4, et ainsi de suite. La première étape pour porter Postfix sur un nouveau système est de choisir un nom (SYSTEMTYPE) pour chaque nouveau système. Vous devez utiliser un nom qui inclut en suffixe le numéro de version majeure du système d'exploitation (tel SUNOS4 ou LINUX2), ainsi différentes versions su même système peuvent être supportées sans confusion.

Ajoutez un cas au script shell "makedefs" du répertoire racine des sources qui reconnait le nouveau système et emet les bonnes informations spécifiques au système. Créez un code robuste contre les erreurs du PATH de l'utilisateur ; si le système offre plusieurs noms d'UNIX (e.g. BSD et SYSV) assurez-vous de construire un code pour un le nom natif plutôt qu'un nom émulé.

Ajoutez un paragraphe "#ifdef SYSTEMTYPE" dans le fichier d'inclusion central util/sys_defs.h. Vous pouvez avoir à inventer de nouveaux noms de macro. Choisissez s'il vous plaît des noms de macro tels HAS_DBM ou FIONREAD_IN_SYS_FILIO_H.

Je vous recommande fortement de ne pas utiliser de "#ifdef SYSTEMTYPE" individuellement dans chacun des fichiers source. Bien que ça paraisse être la solution la plus rapide, il sera plus compliqué d'effectuer des changement de version.

6 - Installer le logiciel après une compilation réussie

Ce paragraphe décrit comment installer Postfix depuis le code source. Reportez-vous à la page PACKAGE_README si vous compilez un package pour une distribution sur d'autres systèmes. Lisez auxiliary/MacOSX/README-INSTALL.OSX pour plus d'informations sur l'installation de Postfix depuis les sources sur Mac OS X.

6.1 - Sauver les binaires Sendmail existants

IMPORTANT : si vous REMPLACEZ une installation de Sendmail existante avec Postfix, vous devriez sauver les anciens programmes de sendmail afin de vider la file d'attente. Avec le compte du super-utilisateur, lancez la commande suivante (vos programmes sendmail, newaliases et mailq peuvent se situer à un autre emplacement) :

# mv /usr/sbin/sendmail /usr/sbin/sendmail.OFF
# mv /usr/bin/newaliases /usr/bin/newaliases.OFF
# mv /usr/bin/mailq /usr/bin/mailq.OFF
# chmod 755 /usr/sbin/sendmail.OFF /usr/bin/newaliases.OFF \
    /usr/bin/mailq.OFF

6.2 - Create account and groups

Avant d'installer Postfix pour la première fois, vous devez créer un compte et un groupe :

6.3 - Installer Postfix

Pour installer ou mettre à jour Postfix depuis des sources compilées, lancez l'une des commandes suivantes sous le compte super-utilisateur :

# make install       (version interactive, première installation)

# make upgrade       (version non-interactive, mises à jour)

6.4 - Configurer Postfix

Lisez ce paragraphe pour savoir comment utiliser Postfix sur une machine particulière :

7 - Configurer Postfix seulement pour envoyer du courrier

Si vous souhaitez utiliser Postfix pour seulement envoyer du courrier, il n'y a pas à changer votre installation existante de Sendmail. À la place, changez votre agent de messagerie utilisateur pour qu'il appelle le programme sendmail de Postfix.

Suivez les instructions "Edition obligatoire des fichier de configuration" du paragraphe 10, et "mettre en cage chroot ou non" du paragraphe 11.

Vous DEVEZ commenter l'entrée "smtp inet" du fichier /etc/postfix/master.cf, pour éviter les conflits avec le réel sendmail : insérez un caractère "#" au début de la ligne qui définit le service smtpd service :

/etc/postfix/master.cf:
    #smtp      inet  n       -       n       -       -       smtpd

Lancez le système Postfix :

# postfix start

ou si vous êtes nostalgique, utilisez la commande sendmail de Postfix :

# sendmail -bd -qwhatever

et regardez votre fichier de logs de messagerie pour détecter d'éventuels messages d'erreur. Son emplacement généralement /var/log/maillog, /var/log/mail ou /var/log/syslog. Il est définit dans le fichier /etc/syslog.conf.

% egrep '(reject|warning|error|fatal|panic):' /some/log/file

Note : le plus important message d'erreur est enregistré en premier. Les messages suivants n'ont pas d'importance.

Pour examiner la file d'attente des messages, utilisez une des commandes suivantes :

% mailq

% sendmail -bp

% postqueue -p

Voyez également le paragraphe "Soins et alimentation" (n° 12 ci-dessous).

8 - Configurer Postfix pour envoyer et recevoir du courrier par une interface virtuelle

Alternativement, vous pouvez utiliser le système Postfix pour envoyer ET recevoir le courrier tout en conservant intact votre installation Sendmail, en utilisant Postfix sur une adresse d'interface virtuelle. Configurez simplement votre agent utilisateur de messagerie pour invoquer directement le programme sendmail de Postfix.

Dans le fichier /etc/postfix/main.cf, j'indiquerais

/etc/postfix/main.cf:
    myhostname = virtual.host.tld
    inet_interfaces = $myhostname
    mydestination = $myhostname

Suivez les instructions du paragraphe 10 ("édition obligatoire des fichiers de configuration"), et lisez le paragraphe 11 ("mettre en cage chroot ou non").

Lancez le système Postfix :

# postfix start

ou, si vous êtes nostalgique, utilisez la commande sendmail de Postfix :

# sendmail -bd -qwhatever

et regardez votre fichier de logs de messagerie pour détecter d'éventuels messages d'erreur. Son emplacement généralement /var/log/maillog, /var/log/mail ou /var/log/syslog. Il est définit dans le fichier /etc/syslog.conf.

% egrep '(reject|warning|error|fatal|panic):' /some/log/file

Note : le plus important message d'erreur est enregistré en premier. Les messages suivants n'ont pas d'importance.

Pour examiner la file d'attente des messages, utilisez une des commandes suivantes :

% mailq

% sendmail -bp

% postqueue -p

Voyez également le paragraphe "Soins et alimentation" (n° 12 ci-dessous).

9 - Utiliser Postfix au lieu de Sendmail

Avant d'installer Postfix vous devriez sauvegarder toutes les commandes du programme sendmail tel que décrit au paragraphe 6. Assurez-vous de laisser fonctionner quelques jours l'ancien Sendmail pour traiter les éventuels messages non envoyés. Pour ce faire, arrêtez le démon et relancez-le avec l'option "-q" :

# /usr/sbin/sendmail.OFF -q

Note : il s'agit de l'ancienne syntaxe de sendmail. Les versions récentes utilisent des procesus séparés pour la soumission des messages et la gestions des files d'attentes.

Après avoir lu le paragraphe "édition obligatoire des fichiers de configuration" ci-dessous, vous pouvez lancer le système Postfix avec :

# postfix start

ou si vous êtes nostalgique, utilisez la commande sendmail de Postfix :

# sendmail -bd -qwhatever

et regardez votre fichier de logs de messagerie pour détecter d'éventuels messages d'erreur. Son emplacement généralement /var/log/maillog, /var/log/mail ou /var/log/syslog. Il est définit dans le fichier /etc/syslog.conf.

% egrep '(reject|warning|error|fatal|panic):' /some/log/file

Note : le plus important message d'erreur est enregistré en premier. Les messages suivants n'ont pas d'importance.

Pour examiner la file d'attente des messages, utilisez une des commandes suivantes :

% mailq

% sendmail -bp

% postqueue -p

Voyez également le paragraphe "Soins et alimentation" (n° 12 ci-dessous).

10 - Édition obligatoire des fichiers de configuration

Note : les éléments présentés dans ce paragraphe sont couverts avec plus de détails à la page BASIC_CONFIGURATION_README. L'information présentée ici est destinée aux administrateurs expérimentés.

10.1 - Fichiers de configuration de Postfix

Par défaut, les fichiers de configuration de Postfix se situent dans /etc/postfix. Les deux plus importants sont main.cf et master.cf ; ces fichiers doivent appartenir à root. Donner à quelqu'un d'autre la permission d'écrire dans main.cf ou master.cf (ou dans leur répertoires parent) signifie donner des privilèges root à cette personne.

Dans /etc/postfix/main.cf, vous aurez à indiquer un nombre minimum de paramètres de configuration. Les paramètres de configuration de Postfix ressemblent à des variables shell, avec deux différences importantes : la première est que Postfix ne connait pas les apostrophes comme le shelle UNIX.

Vous renseignez un paramètre de configuration comme suit :

/etc/postfix/main.cf:
    parametre = valeur

et vous l'utilisez en le faisant précéder d'un caratère "$" :

/etc/postfix/main.cf:
    autre_parametre = $parametre

Vous pouvez utiliser $parametre avant qu'il ne soit déclaré (c'est la seconde différence avec les variables du shell UNIX). Le langage de configuration de Postfix utilise une évaluation faible et n'examine pas la valeur d'un paramètre avant qu'elle ne soit utilisée.

A chaque changement du fichier main.cf ou master.cf, lancez la commande suivante pour raffraichir un système de messagerie en fonctionnement :

# postfix reload

10.2 - Domaine par défaut pour les adresses non qualifiées

En premier lieu, vous devez indiquer le domaine qui sera ajouté à une adresse non-qualifiée (c'est à dire une adresse sans @domaine.tld). le paramètre myorigin contient par défaut le nom de la machine locale ce qui est généralement correct pour de tout petits sites.

Quelques exemples (utilisez-en un seulement) :

/etc/postfix/main.cf:
    myorigin = $myhostname    (envoie le courrier comme "utilisateur@$myhostname")
    myorigin = $mydomain      (envoie le courrier comme "utilisateur@$mydomain")

10.3 - De quels domaines recevoir le courrier localement

Ensuite, vous devez indiquer quelles adresses Postfix doit livrer localement.

Quelques exemples (utilisez-en un seulement) :

/etc/postfix/main.cf:
    mydestination = $myhostname, localhost.$mydomain, localhost
    mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
    mydestination = $myhostname

Le premier exemple est approprié pour une station de travail, le second pour le serveur de messagerie d'un domaine entier. Le troisième exemple peut être utilisé sur une interface virtuelle.

10.4 - Adresses des interfaces des proxies/traducteurs d'adresses

Le paramètre proxy_interfaces contient toutes les adresses par lesquelles Postfix reçoit du courrier avant traduction par l'éventuel proxy ou traducteur d'adresse (NAT). Vous pouvez utiliser des noms de machines au lieu d'adresses de réseau.

IMPORTANT : vous devez spécifier votre adresse externe de proxy/NAT lorsque votre système est un MX de secours pour d'autres domaines, sinon la livraison des messages bouclera lorsque le serveur MX primaire est inactif.

Exemple : machine MX de secours derrière un NAT.

/etc/postfix/main.cf:
    proxy_interfaces = 1.2.3.4 (adresse de réseau externe du proxy/NAT)

10.5 - De quels clients locaux relayer le courrier

Si votre machine est sur un réseau ouvert, vous devez alors indiquer quelles adresses IP sont autorisées à relayer leur courrier à destination d'Internet par votre machine. La valeur par défaut inclut tous les sous-réseaux sur lesquels est connectée votre machine. Ceci peut donner le droit de relais à trop de clients. Mes paramètres sont :

/etc/postfix/main.cf:
    mynetworks = 168.100.189.0/28, 127.0.0.0/8

10.6 - Quelles destinations relayées accepter pour les clients étrangers

Si votre machine est sur un réseau ouvert vous devez également spécifier comment Postfix transferera le courrier des étrangers. La valeur par défaut acceptera de relayer le courrier de tous les domaines (et les sous-domaines) listés dans $mydestination. Ceci peut accorder trop de droits de relais. Les valeurs recommandées sont (utilisez-en une seulement) :

/etc/postfix/main.cf:
    relay_domains =            (aucun relais d'étranger)
    relay_domains = $mydomain  (mes domaines et sous-domaines)
    relay_domains = $mydomain, autre.domaine.tld, ...

10.7 - Optionel: configurer une machine pour la livraison extérieure

Si vous êtes derrière un firewall, vous devez indiquer un relayhost. Si vous le pouvez, indiquez le nom de domaine ainsi Postfix peut consulter le DNS et peut basculer vers un MX secondaire lorsque le premier est inactif. Sinon, indiquez juste un non d'hôte en dûr.

Quelques exemples (utilisez-en un seulement) :

/etc/postfix/main.cf:
    relayhost = $mydomain
    relayhost = [mail.$mydomain]

La forme encadrée par [] elimine les consultations MX du DNS.

Par défaut, le client SMTP effectue des requêtes DNS même si vous indiquez une machine relais. Si votre machine n'a pas d'accès au serveur DNS, désactivez les consultations DNS du client SMTP comme suit :

/etc/postfix/main.cf:
    disable_dns_lookups = yes

Le fichier STANDARD_CONFIGURATION_README contient plus d'exemples pour les réseaux protégés par firewall et/ou derrière un modem.

10.8 - Créez la base de données d'alias

Postfix utilise une table d'accès compatible Sendmail pour rediriger le courrier des destinataires locaux. Généralement, ces informations sont conservées dans deux fichiers : un fichier texte /etc/aliases et un fichier indexé /etc/aliases.db. La commande "postconf alias_maps" vous donnera l'emplacement exact du fichier texte.

Premièrement, assurez-vous de mettre à jour le fichier texte avec les alias pour root, postmaster et "postfix" qui transfèrent le courrier vers des personnes physiques. Postfix dispose d'un fichier d'exemple /etc/postfix/aliases que vous pouvez adapter.

/etc/aliases :
    root: you
    postmaster: root
    postfix: root
    bin: root
    etcetera

NOTE : il ne doit pas y avoir d'espace devant ":".

Finalement, construisez la base de données des alias avec une des commandes suivantes :

# newaliases
# sendmail -bi

11 - Mettre en cage chroot ou non

Les processus démons de Postfix peuvent être configurés (via master.cf) pour fonctionner en cage chroot. Le processus tourne avec des privilèges limités et avec un accès restreint au répertoire des files d'attentes de Postfix (/var/spool/postfix). Ceci fournit une barrière significative contre les intrusions. La barrière n'est pas imperméable mais difficile à franchir.

À l'exception des démons de Postfix qui livrent le courrier localement et/ou qui exécutent des commandes non-Postfix, tous les démons de Postfix peuvent être mis en cage.

Les sites requérant un haut niveau de sécurité pourront souhaiter mettre en cage tous les démons qui dialoguent sur le réseau : les processus smtp(8) et smtpd(8) et éventuellement le client lmtp(8). Le serveur personnel de l'auteur qui héberge le site porcupine.org lance tous les démons qui peuvent l'être en cage chroot (Note du traducteur : ainsi que tout serveur Postfix installé avec la distribution Debian par défaut).

Le fichier /etc/postfix/master.cf par défaut ne met aucun démon de Postfix en cage chroot. Pour activer les opérations de mise en cage chroot éditez le fichier /etc/postfix/master.cf. Les instructions sont dans le fichier.

Notez qu'un démon en cage chroot résout tous les noms de fichiers relativement à la racine de la cage : le répertoire des files d'attente de Postfix (/var/spool/postfix). Pour une utilisation réussie des cages chroot, de nombreux systèmes UNIX nécessitent que vous créiez certains fichiers ou fichiers de périphériques. Le répertoire exemples/chroot-setup des sources contient une collection de scripts qui vous aideront à faire fonctionner Postfix dans un environnement chroot sur différents systèmes d'exploitation.

En complément, vous aurez certainement besoin de configurer syslogd pour qu'il écoute sur une socket dans le répertoire des files d'attentes. Quelques exemples pour des systèmes spécifiques :

FreeBSD:
# mkdir -p /var/spool/postfix/var/run
# syslogd -l /var/spool/postfix/var/run/log
Linux, OpenBSD:
# mkdir -p /var/spool/postfix/dev
# syslogd -a /var/spool/postfix/dev/log

12 - Soins et alimentation du système Postfix

Les processus démons de Postfix tournent en arrière-plan et enregistrent les problèmes et l'activité normale via le démon syslog. Les noms des fichiers de logs sont indiqués dans /etc/syslog.conf. Au minimum, vous devrez utiliser quelque chose conne suit :

/etc/syslog.conf:
    mail.err                                    /dev/console
    mail.debug                                  /var/log/maillog

IMPORTANT : le démon syslogd ne créera pas les fichiers. Vous devrez le faire avant de (re)lancer syslogd.

IMPORTANT : sur Linux vous devez insérer un caractère "-" avant le nom du fichier : -/var/log/maillog, sinon syslogd utilisera plus de ressources système que Postfix.

Heureusement, le nombre de problèmes devrait être faible, mais il est généralement une bonne idée de lancer chaque nuit avant que les fichiers syslog soient tournés :

# postfix check
# egrep '(reject|warning|error|fatal|panic):' /un/fichier/de/log

La page DEBUG_README décrit la signification des mentions "warning" etc. des journaux de Postfix.

Valid HTML 4.01! traduction par Xavier Guimard - Retour au menu