3. Problèmes: Questions et Réponses

3.1. Question: Comment garder la configuration aprés un redémarrage?

Réponse: que vous utilisiez un init à la manière BSD ou à la manière SysV (RedHat par exemple), vous pouvez toujours inclure cela dans /etc/rc.d/rc.local. Voici ce que j'ai dans mon système init SysV (RedHat 3.0.3 et 4.0):

Mon /etc/rc.d/rc.local: (édité pour ne montrer que les parties intéressantes)

# configuration des interfaces avec IP alias
echo "Configuration des aliases IP: 172.16.3.1, 172.16.3.10, 172.16.3.100..."
/sbin/ifconfig lo 127.0.0.1
/sbin/ifconfig eth0 up
/sbin/ifconfig eth0 172.16.3.1
/sbin/ifconfig eth0:0 172.16.3.10
/sbin/ifconfig eth0:1 172.16.3.100
# configuration des routes
echo "Configuration des routes IP..."
/sbin/route add -net 127.0.0.0
/sbin/route add -net 172.16.3.0 dev eth0
/sbin/route add -host 172.16.3.1 eth0
/sbin/route add -host 172.16.3.10 eth0:0
/sbin/route add -host 172.16.3.100 eth0:1
/sbin/route add default gw 172.16.3.200
# 

3.2. Question: Comment configurer sendmail pour recevoir des mails sur plusieurs numéros IP?

Réponse: Créer (s'il n'existe pas déjà) un fichier appelé, par exemple, /etc/mes_noms.cw. Il ne doit pas forcémement s'appeler ainsi, ni se trouver dans le repertoire /etc directory.

Dans ce fichier, placer les noms officiels des numéros alias IP. Si ces numéros n'ont pas de nom dans un domaine, alors vous pouvez indiquer le numéro IP lui-même.

Le fichier /etc/mes_noms.cw pourrait ressembler à ça:

# /etc/mes_noms.cw - inclure ici tous les aliases pour votre machine
#                    # est un commentaire
domaine.un.net
domaine.deux.com
domaine.trois.org
4.5.6.7 

Dans votre fichier sendmail.cf, à l'endroit où on définit une macro de classe fichier Fw, ajoutez:

     
##################
# infos locales  #
##################
				     
				     
# fichier contenant les noms des hôtes pour lesquels on reçoit du courrier
Fw/etc/mes_noms.cw
				 

Cela devrait suffire. Testez votre nouvelle configuration en lançant sendmail en mode de test, par exemple:

ganymede$ /usr/lib/sendmail -bt
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter < ruleset> < address>
> 0 moi@4.5.6.7
rewrite: ruleset  0   input: moi @ 4 . 5 . 6 . 7
rewrite: ruleset 98   input: moi @ 4 . 5 . 6 . 7
rewrite: ruleset 98 returns: moi @ 4 . 5 . 6 . 7
rewrite: ruleset 97   input: moi @ 4 . 5 . 6 . 7
rewrite: ruleset  3   input: moi @ 4 . 5 . 6 . 7
rewrite: ruleset 96   input: moi < @ 4 . 5 . 6 . 7 >
rewrite: ruleset 96 returns: moi < @ 4 . 5 . 6 . 7 . >
rewrite: ruleset  3 returns: moi < @ 4 . 5 . 6 . 7 . >
rewrite: ruleset  0   input: moi < @ 4 . 5 . 6 . 7 . >
rewrite: ruleset 98   input: moi < @ 4 . 5 . 6 . 7 . >
rewrite: ruleset 98 returns: moi < @ 4 . 5 . 6 . 7 . >
rewrite: ruleset  0 returns: $# local $: moi
rewrite: ruleset 97 returns: $# local $: moi
rewrite: ruleset  0 returns: $# local $: moi
< 0 moi@4.5.6.8
rewrite: ruleset  0   input: moi @ 4 . 5 . 6 . 8
rewrite: ruleset 98   input: moi @ 4 . 5 . 6 . 8
rewrite: ruleset 98 returns: moi @ 4 . 5 . 6 . 8
rewrite: ruleset 97   input: moi @ 4 . 5 . 6 . 8
rewrite: ruleset  3   input: moi @ 4 . 5 . 6 . 8
rewrite: ruleset 96   input: moi < @ 4 . 5 . 6 . 8 >
rewrite: ruleset 96 returns: moi < @ 4 . 5 . 6 . 8 >
rewrite: ruleset  3 returns: moi < @ 4 . 5 . 6 . 8 >
rewrite: ruleset  0   input: moi < @ 4 . 5 . 6 . 8 >
rewrite: ruleset 98   input: moi < @ 4 . 5 . 6 . 8 >
rewrite: ruleset 98 returns: moi < @ 4 . 5 . 6 . 8 >
rewrite: ruleset 95   input: < > moi < @ 4 . 5 . 6 . 8 >
rewrite: ruleset 95 returns: moi < @ 4 . 5 . 6 . 8 >
rewrite: ruleset  0 returns: $# smtp $@ 4 . 5 . 6 . 8 $: moi < @ 4 . 5 . 6 . 8 >
rewrite: ruleset 97 returns: $# smtp $@ 4 . 5 . 6 . 8 $: moi < @ 4 . 5 . 6 . 8 >
rewrite: ruleset  0 returns: $# smtp $@ 4 . 5 . 6 . 8 $: moi < @ 4 . 5 . 6 . 8 >
>

Notez que lorsque j'ai testé moi@4.5.6.7, cela a envoyé le mail à la machine locale, alors que moi@4.5.6.8 a été envoyé à l'agent de transport smtp. C'est la réponse correcte.

Tout est configuré maintenant.