[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

RE: BSMTP



> Comme alternative, Sam Okk m'a proposé la solution suivante.
>
>     - Pouvez-vous me completer avec plus de détails cette solution.

Voila, alors en fait, j'utilisais cette solution pour rapatrier mes emails
personnels, et je n'utilisais qu'un seul user, mais je vais essayer
d'expliquer mon système en tenant compte du fait qu'il peut y avoir
plusieurs utilisateurs.
Je suppose que le système Sendmail + BSMTP est plus professionel, mais à
part "Bsmtp is a complete software package to implement batched SMTP under
sendmail (supported is Berkeley sendmail 8.6 up to 8.9). The preferred use
for it is to transmit compressed batches via UUCP, mainly for offline sites.
", je ne connais rien sur Bsmtp, c'est pourquoi j'utilisais cette méthode...
D'ailleurs, j'en profite pour demander ce qu'est UUCP, car je serais ravi si
quelqu'un pouvait m'expliquer ca :)

 * DU COTE SERVEUR (possédant fetchmail, cron et un MTA, server FTP)

	1) Mettre en place des crontab pour chaque utilisateur (ou un crontab
global sous root qui utilise su pour executer fetchmail sous chaque
utilisateur) : Périodiquement, les emails de ces utilisateurs seront
récupérés et placés dans les fichiers /var/spool/mail/$user (ou
/var/mail/$user, quelque chose dans le genre, depuis que la policy a
changé...)
	2) Faire un script permettant de compresser les mailbox de chaque
utilisateur. ce script ressemblerait à quelque chose du genre (script à
executer sous root) :

#!/bin/bash
#Creation d'un repertoire temporaire
mkdir /tmp/email
cd /tmp/email

#Copie des mailbox des utilisateurs concernés
cp -a /var/spool/mail/Utilisateur_1 ./Utilisateur_1
rm /var/spool/mail/Utilisateur_1
cp -a /var/spool/mail/Utilisateur_2 ./Utilisateur_2
rm /var/spool/mail/Utilisateur_2
...

#Creation du fichier compresser à télécharger
cd ..
tar cIf ./email.tar.bz2 email
mv email email.old

Ce script devra être lancé à chaque fois que le client veut récupérer les
emails :

 * DU COTE CLIENT (possédant un MTA et procmail)
	1) Faire un script permettant de récupérer le fichier email.tar.bz2
il ressemblera )à quelque chose du genre :

#!/bin/bash
# Lancement du scipt sur le serveur permettant de compresser les mailbox
dans le fichier /tmp/email.tar.bz2
# je ne suis pas sur de la syntaxe de cette ligne, mais c'est quelque chose
ressemblant à cela :
(echo "user" ; echo "passwd" ; echo
"/usr/local/bin/SCRIPT_COMPRESSION_EMAIL") | telnet

# Recupération du fichier par FTP
faire un script LFTP qui se login sur le server et recupere le fichier. Je
n'ai plus aucune
idée de la manière dont on fait ce script, et je suis sous windows, donc je
n'ai pas de manpage ni rien...

# On a enfin le fichier email.tar.bz2
tar xvIf email.tar.bz2
cd email
executer "cat Utilisateur_1 | formail -s procmail" (est ce bien cela ?)
sous chacun des utilisateurs auxquels appartiennent les fichiers.
(grace à su -c user <commande> ou quelque chose dans le genre)
si les utilisateurs n'utilisent pas procmail et n'ont pas de .procmailrc /
.forward, il est plus simple de
cat Utilisateur_1 >> /var/spool/mail/Utilisateur_1 par exemple

faire ca pour chaque utilisateur et le tour est joué :)



>     - Est-elle viable pour plusieurs utilisateurs ? (/var/spool/mail/$user
>       multiples).
>

et bien, si ce ke je viens d'expliquer marche, oui :)

Allez, bonne chance,
Sam



Reply to: