Somaire Index Rechercher Liens A propos



[LinuxFocus Image]
[Navegation Bar]
  Nouvelles   Archives

Compiler, Installer, et Configurer sendmail 8.8.x 

par John E. Gotts


J'ai relié à ce document un correctif pour ../../common/March1998/Makefile.Linux qui déclenche des TCP wrappers et qui fait quelques autres modifications mineures. (avec des TCP wrappers activés vous pouvez restreindre l'accès distant à votre sendmail daemon conformément à la man page de hosts_access(5)). (1) En supposant que vous l'ayez sauvé sous le nom "../../common/March1998/sendmail.diff", appliquez-le à partir du répertoire en-dessous de sendmail-8.8.x avec la commande : 
patch -p0 < ../../common/March1998/sendmail.diff
Allez dans le répertoire src et exécutez 
./makesendmail
sendmail devrait se compiler sans problème. 

Par la suite je vais supposer que vous utilisez juste la messagerie électronique TCP/IP. L'aide pour UUCP dépasse le cadre de ce document. 
Allez dans le répertoire cf/cf et créez un nouveau fichier, generic-linux2.mc: 

divert(-1)
divert(0)dnl
VERSIONID(`@(#)generic-linux2.mc 8.8 (Local) 11/22/97')
OSTYPE(linux)dnl
FEATURE(nouucp)dnl
MAILER(local)dnl
MAILER(smtp)dnl
si vous voulez utiliser le masquerading, ajoutez ces deux lignes: 
MASQUERADE_AS()dnl
EXPOSED_USER(root)dnl
Cela signifie que tous les e-mails qui sont envoyés de votre machine (sauf les e-mails du root) vont apparaître comme étant originaires du hostname que vous spécifiez. (cette option est utile pour les gens qui ont des connexions intermittentes au réseau, c'est à dire les utilisateurs de SLIP et PPP, et pour les machines qui obtiennent des adresses IP dynamiques par BOOTP ou DHCP). Pour les versions 8.8.8 et supérieures de sendmail, omettez EXPOSED_USER(root) car c'est devenu le comportement par défaut. 

Si vous voulez utiliser procmail comme votre serveur de courrier local (pratique standard dans la distribution Red Hat Linux), ajoutez: 

FEATURE(local_procmail)dnl
Transformez "generic-linux2.mc" en un fichier sendmail.cf: 
m4 ../m4/cf.m4 generic-linux2.mc > obj/sendmail.cf
Vous aurez peut-être besoin de commenter le fichier 
Cwlocalhost
avec un signe # dans obj/sendmail.cf car il semble que, dans les dernières distribution de Linux, il perturbe les e-mails entrant. Archivez votre ancien fichier /etc/sendmail.cf et installez obj/sendmail.cf: 
install -m 644 -o 0 -g 0 obj/sendmail.cf /etc/sendmail.cf
Après avoir installé votre nouveau sendmail.cf, tuez le sendmail daemon, retournez dans le répertoire src et exécutez: 
cd obj.Linux.*.* ; make install
Ceci installera les fichiers binaires de sendmail et les liens symboliques. Vous aurez besoin d'installer les pages man à la main. 

Si vous avez décidé de ne pas utiliser procmail, allez dans le répertoire principal de sendmail et tapez: 

uudecode contrib/mail.local.linux
mv mail.local mail.local.old
tar zxvf mail.local.linux.tar.Z
cd mail.local
gcc -O3 -o mail.local mail.local.c
strip mail.local
install -m 2711 -o 0 -g mail mail.local /bin
install -m 644 -o 0 -g 0 mail.local.8 /usr/man/man8
Votre répertoire /var/spool/mail a besoin d'être en mode 775 ainsi que d'appartenir à l'utilisateur root et au groupe mail. Vos clients mail doivent être SGID mail (mode 2711 et appartenant à l'utilisateur root et au groupe mail). 

Mantenant vous devriez être prêt à relancer votre daemon sendmail. Le mien est relancé de la façon suivante: 

/usr/sbin/sendmail -bd -q1h
REMARQUE: Red Hat relance sendmail sans son chemin absolu. Cela peut mener à des problèmes, tel que vous empêcher d'être capable de HUP sendmail pour le forcer à relire son fichier de configuration. Pour corriger cela, assurez-vous que /etc/rc.d/init.d/sendmail.init lance sendmail avec /usr/sbin/sendmail (avec les mêmes arguments). 

Si vous avez une connexion intermittente, vous devriez vouloir démarrer sendmail en mode différé: 

/usr/sbin/sendmail -bd -o DeliveryMode=d
Lors du boot, invoquez sendmail comme suit: 
/usr/sbin/sendmail -q
pour délivrer tous les e-mails différés lorsque vous vous connectez pour la première fois au réseau et périodiquement ensuite lorsque vous êtes connecté (avec une tache cron par exemple). 

A présent, vous devriez tester votre nouvelle installation sendmail. Voici un moyen de le faire: 

% telnet localhost smtp
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220  ESMTP Sendmail 8.8.8/8.8.8; Fri, 22 Nov 1997 03:21:18 -0500
helo localhost
250  Hello jgotts@localhost [127.0.0.1], pleased to meet you
mail from: jgotts
250 jgotts... Sender ok
rcpt to: jgotts
250 jgotts... Recipient ok
data
354 Enter mail, end with "." on a line by itself
This is a test.
.
250 DAA23297 Message accepted for delivery
Assurez-vous également de tester que vos clients e-mail marchent et que vous pouvez toujours recevoir du courrier du monde extérieur. 

Notes: 
(1) L'aide pour TCP wrapper n'est pas fournie dans la version 8.8.8. Pour un correctif, allez voir à l'adresse http://www-personal.engin.umich.edu/~jgotts/linux/sendmail-8.8.8-tcp-wrappers-patch 

Tant que vous y êtes, vous devriez aussi aller voir: 
http://www-personal.engin.umich.edu/~jgotts/linux/sendmail-8.8.8-core-dump-patch


Traduit en francais par Fabien Gaurand

Pour plus d'informations
  • Consultez la page du manuel pour sendmail.
    •  
© 1998 John E. Gotts 
Ce site web est maintenu par Miguel A Sepulveda