Club LinuX Nord-Pas de Calais CLX est contre hadopi
logo ARTICLE 31


LINUX
Se connecter à Internet
Par Marc LEFRANC

lundi 11 mars 2002


Dominique Aimon écrivait :

Bonjour,

Comment dois-je configurer ma machine pour que :
-  1 quand ma machine se connecte à internet (par téléphone), les mails soient téléchargés automatiquement
-  2 et mis à dispositons des utilisateurs (nous sommes deux).
-  3 Le courrier attente expédié (sendmail ?)
-  4 qu’un message indique : "téléchargement du courrier en cours"(pour éviter que l’utilisateurs ne raccroche)


La solution locale (ça marche sur une redhat, mais je pense que ça doit être relativement standard) :

1) Pour chaque utilisateur, configurer $HOME/.fetchmailrc, qui doit ressembler à :


set postmaster "lefranc"
poll pop3.nordnet.fr with proto POP3
      user "marc.lefranc" there with password "........" is lefranc here

2) regarder la doc d’Eric Jacoboni sur www.linux-france.com (ou .org ?) concernant la configuration de sendmail pour une machine se connectant par PPP. Je crois qu’il y a quelque chose sur le site du CLX aussi.

Sinon, tu peux essayer mes fichiers que je mets en annexe. Je viens juste de les modifier à la suite d’un éclair de génie que j’ai eu pour résoudre un problème que j’avais depuis longtemps. Comme quoi on s’aide parfois en rendant service aux autres. Si ce message arrive, c’est que c’est OK. Sinon, ne pas en tenir compte  :-)

3) créer un script, mettons /etc/ppp/get-mail :


1029 $ cat /etc/ppp/get-mail
touch /var/lock/LCK..fetchmail
su -c user1 fetchmail
su -c user2 fetchmail
rm -f /var/lock/LCK..fetchmail

4) modifier /etc/ppp/ip-up.local pour y rajouter les lignes :


/usr/sbin/sendmail -q &
/etc/ppp/get-mail &

5) créer deux scripts, mettons open-ppp et close-ppp

(celui là est juste pour la symétrie, c’est ip-up.local qui fait le boulot)


1030 $ cat open-ppp
/sbin/ifup ppp0

1031 $ cat close-ppp
while [ -f /var/lck/LCK..fetchmail ]; do
  sleep 5;
done
get-mail
/sbin/ifdown ppp0

Explication : au démarrage, get-mail est appelé par ip-up.local. Quand get-mail a terminé sa besogne, il efface le fichier de lock.

Lorsqu’on ferme la connection avec close-ppp, ce dernier vérifie que le fichier de lock n’existe plus, ce qui indique que la récupération du courrier lancée au démarrage est bien terminée. On refait un get-mail pour profiter au maximum de la connexion et on ferme.

Annexe : fichiers de configuration sendmail

(le fichier de Jacoboni, A UNE MODIF IMPORTANTE PRES) (le paquetage sendmail-cf soit être installé)


1032 $ cat /usr/lib/sendmail-cf/cf/config-socrate.mc

include(`../m4/cf.m4')dnl
OSTYPE(`linux')dnl
define(`SMTP_MAILER_FLAGS', `e')dnl
FEATURE(redirect)dnl
FEATURE(nocanonify)dnl
dnl FEATURE(always_add_domain)dnl
FEATURE(local_procmail)dnl
GENERICS_DOMAIN(socrate.mon-domaine localhost)dnl
FEATURE(genericstable)dnl
FEATURE(masquerade_envelope)dnl
define(`confCF_VERSION', `Eric Jacoboni - 14/01/98')dnl
define(`confCON_EXPENSIVE', `True')dnl
define(`confME_TOO', `True')dnl
define(`confCOPY_ERRORS_TO', `Postmaster')dnl
define(`confDEF_CHAR_SET', `ISO-8859-1')dnl
define(`confMIME_FORMAT_ERRORS',`True')dnl
define(`SMART_HOST', `smtp8:[smtp.nordnet.fr]')dnl
define(`confTO_QUEUEWARN', `48h')
MAILER(local)
MAILER(smtp)

créer à partir de là /etc/sendmail.cf par


1033 $ m4 config-socrate.mc > /etc/sendmail.cf

Noter que j’ai commenté le FEATURE(always_add_domain)dnl (avec le dnl devant). C’est cette instruction qui faisait que l’adresse de provenance d’un message envoyé sur la machine locale était réécrite en moi@fai.fr alors qu’il ne fallait pas le faire dans ce cas, parce qu’alors le reply passe par le fournisseur. Sendmail ne réécrit pas l’adresse pour une destination bidule@machine. Si on demande d’ajouter systématiquement le nom de domaine, paf la réécriture se met en route.

Quand je pense que j’ai séché sur ce problème un moment et que j’avais laissé tomber, et ça m’a traversé l’esprit en retournant voir pour rédiger ce message.

Les règles de réécriture des adresses sortantes :


$cat /etc/genericstable
lefranc:        marc.lefranc@nordnet.fr
user2  :        compte_user2@unautre_fai.fr

Ensuite, il faut regénérer la base :


1024 $ cd /etc
1025 $  /usr/sbin/sendmail -bi -oA/etc/genericstable

Voilà. C’est tout pour ce soir. Promis.

Voila, à partir de là, plus rien à faire, c’est complètement automatique, QUELQUE SOIT LE LECTEUR DE COURRIER qu’on utilise.

Marc.

Le fin du fin


1034 $ more .wmppprc
speed: /etc/ppp/getmodemspeed
start: open-ppp
stop: close-ppp
ifdown:

Répondre à cet article



Il y a 4 contribution(s) au forum.


12 mars 2002 > Juste un test de réponse
  [retour au début des forums]
testsdfsdfsdfsdfsdf

[Répondre à ce message]

12 mars 2002 > Juste un test de réponse
  [retour au début des forums]
testsdfsdfsdfsdfsdf

[Répondre à ce message]





Ceci est notre ancien site. Rendez-vous sur notre nouveau site.