Koozali.org: home of the SME Server
Other Languages => Italiano => Topic started by: marco.delia on January 17, 2009, 01:54:14 PM
-
Salve a tutti, ho da poco installato sme server versione 7.4 ed ho bisogno di una mano.
Volevo configurere il multi-drop (fetchmail)
1) Ho bisogno di poter scaricare la posta dal mio server secondario ogni 3 massimo 5 minuti e non 15 come è impostato ora di default.
2) Dato che sto facendo solo delle prove, vorrei che la posta rimanesse sul server secondario invece di scaricarla definitivamente, c'è un modo?
3) vorrei inserire 2 header di distribuzione, poichè ho notato che quando arrivano messaggi in CCN fetchmail fa un po' di confusione.
Scusatemi se apro un nuovo Topic, ho girato un po' tra i forum ma non ho trovato niente a riguardo.
potete aiutarmi?
Grazie mille
Marco D'Elia
-
Salve a tutti, ho da poco installato sme server versione 7.4 ed ho bisogno di una mano.
ciao e ben arrivato
Volevo configurere il multi-drop (fetchmail)
1) Ho bisogno di poter scaricare la posta dal mio server secondario ogni 3 massimo 5 minuti e non 15 come è impostato ora di default.
nel pannello "cambia configurazione ricezione e-mail" puoi cambiare l'intervallo, mettendolo a 5 minuti.. per mettere meno devi mettere mano ai template creandotene uno ad hoc [1].. ma non è consigliato.. fare il polling delle caselle di posta "ossessivamente" ogni due minuti è mal visto da certi isp
se hai la necessità di avere la posta in real-time, setta SME affinchè diventi il server di posta (record MX) per il dominio che ti interessa
2) Dato che sto facendo solo delle prove, vorrei che la posta rimanesse sul server secondario invece di scaricarla definitivamente, c'è un modo?
allora.. dal pannello web no, ed a quanto ne so non è possibile farlo nemmeno settando ad hoc delle variabili [1]
puoi però installare un pannello (un "contrib") digitando:
yum --enablerepo=smecontribs install smeserver-fetchmail
nella console come root.. avrai un pannello dove potrai settare utente per utente (ergo no multi-drop) le caselle di posta da scaricare, potendo mettere il flag di lasciare copia sul server
3) vorrei inserire 2 header di distribuzione, poichè ho notato che quando arrivano messaggi in CCN fetchmail fa un po' di confusione.
per fare questo devi necessariamente costruirti un template ad hoc [1]
Scusatemi se apro un nuovo Topic, ho girato un po' tra i forum ma non ho trovato niente a riguardo.
potete aiutarmi?
Grazie mille
Marco D'Elia
allora.. rinnovandoti il benvenuto sul forum, ti invito (se non l'hai già fatto) a leggere BENE la documentazione (i "guru" dicono "twice", almeno 2 volte..)
[1] se i concetti di template, variabili ecc non ti sono chiari, leggi la documentazione e, in questo caso, il manuale dello sviluppatore; questo ti permettrà di capire cosa sta dietro a SME e di ricavarne il massimo
altra raccomandazione: usa sempre il Search prima di postare (anche se a quanto dici lo hai già fatto ;-))
ultimo: se vuoi/puoi, leggi qui (http://forums.contribs.org/index.php/topic,41381.0.html) e "segnati"
Ciao
Stefano
-
Grazie Stefano della celere risposta, appena posso farò le dovute prove.
vado al link
-
Ciao Stafano,
grazie per il tuo aiuto.
Ho seguito i tuoi consigli, la situazione è migliorata di molto, ma non è ancora ottimale.
Questa è la configurazione funzionante del mio multi-drop che uso con CC
set daemon 60
set bouncemail
set properties ""
poll mail.press4web.it
envelope "X-MDRcpt-To:"
envelope "X-Rcpt-To:"
protocol pop3 no dns
localdomains miodominio.it
username hostmaster@miodominio.it password password
to * here
smtphost localhost
poi dirmi come la registro in smeserver?
c'è una piccola guida (possibilmente in italiano) da seguire modificare i template?
-
Questa è la configurazione funzionante del mio multi-drop che uso con CC
CC=? ClarkConnect?
set daemon 60
set bouncemail
set properties ""
poll mail.press4web.it
envelope "X-MDRcpt-To:"
envelope "X-Rcpt-To:"
protocol pop3 no dns
localdomains miodominio.it
username hostmaster@miodominio.it password password
to * here
smtphost localhost
poi dirmi come la registro in smeserver?
allora.. posto che tu non abbia installato il contrib che ti ho indicato, puoi dare un'occhiata al file /etc/fetchmail.. come avrai modo di vedere la struttura è simile.. puoi, per il momento, modificare quel file a mano..
c'è una piccola guida (possibilmente in italiano) da seguire modificare i template?
ad essere sinceri, no..
se non ricordo male su questo forum ci dovrebbe essere un mio post dove spiego brevemente come funziona il sistema.. prova a cercare..
ciò detto, ti consiglio, per il momento, di guardare i file in /etc/e-smith/template/etc/fetchmail per capire con cosa hai a che fare :-)
infine, ci sarebbe una soluzione "molto sporca", che però al momento non suggerisco perchè diseducativa..
Ciao
Stefano
-
CC=? ClarkConnect?
Si, mi riferivo a Clarkconnect, è semplicissimo da configurare ed era perfetto per un utonto come me, ma oggi ho deciso di evolvermi.
allora.. posto che tu non abbia installato il contrib che ti ho indicato
non l'ho fatto per non perdere la possibilità di usare il multi-drop e l'idea di creare tutti gli utenti a mano per non perdere la posta non mi faceva impazzire.
puoi dare un'occhiata al file /etc/fetchmail.. come avrai modo di vedere la struttura è simile.. puoi, per il momento, modificare quel file a mano..
modificando a mano il file /etc/fetchmail il template non lo aggiorna (o aggiusta) ad ogni riavvio della macchina o del servzio?
Quote
c'è una piccola guida (possibilmente in italiano) da seguire modificare i template?
ad essere sinceri, no..
se non ricordo male su questo forum ci dovrebbe essere un mio post dove spiego brevemente come funziona il sistema.. prova a cercare..
Ho trovato una piccola, ma piccolissima spiegazione qui
http://forums.contribs.org/index.php/topic,39169.0.html (http://forums.contribs.org/index.php/topic,39169.0.html)
che ne pensi se il manuale lo traduciamo tutti un po' basta solo un super visionatore che potresti essere tu.
-
Mi prenoto per tradurre... :P
-
Si, mi riferivo a Clarkconnect, è semplicissimo da configurare ed era perfetto per un utonto come me, ma oggi ho deciso di evolvermi.
bravo :)
modificando a mano il file /etc/fetchmail il template non lo aggiorna (o aggiusta) ad ogni riavvio della macchina o del servzio?
viene modificato solo se modifichi da web le sue impostazioni oppure se "scateni" un evento invocandolo.. al riavvio questo file non viene aggiornato..
Ho trovato una piccola, ma piccolissima spiegazione qui
http://forums.contribs.org/index.php/topic,39169.0.html (http://forums.contribs.org/index.php/topic,39169.0.html)
no, non era quello.. :)
sarò breve e.. circonciso :)
allora.. SME, a differenza di tutte (non sono a conoscenza di cose simili) le altre distribuzioni linux, ha uno strato sw tra l'interfaccia web ed i file di configurazione..
questi ultimi sono generati "alla bisogna" sulla base di template (a loro volta spezzettati in frammenti) e di dati memorizzati nei db
i template sono in /etc/e-smith/templates/* e, come potrai vedere, la struttura delle direcorty sotto quel punto è identica a quella degli omologhi file di conf in /etc, /home ecc (non sempre, ci sono delle eccezioni)
i db sono in /home/e-smith/db/ e sono dei file di testo formattati opportunamente
l'interfaccia web o opportuni comandi da shell permettono di elaborare i dati nei db e, tramite gli eventi (il famoso signal-event nome-evento), di modificare i file di configurazione, di abilitare/disabilitare i servizi e così via
questa infrastruttura permette di fare il backup di pochissimi dati (i db pesano poche decine di k) e di poter ripristinare un server esattamente come era in poco tempo (naturalmente devi anche fare il backup dei dati degli utenti ecc :wink: )
inoltre, è stata prevista la possibilità di customizzare il sistema in modo da adattarlo alle esigenze più specifiche.. proprio come nel tuo caso
quindi adesso, come dimostrazione/lezione pratica, ti faccio modificare i template ed i db per ottenere quello che vuoi :)
poi starà a te studiarti il sistema
se digiti
config show fetchmail
dovresti avere qualcosa del tipo:
fetchmail=service
FreqOffice=every15min
FreqOutside=every15min
FreqWeekend=every15min
Method=multidrop
SecondaryMailAccount=popaccount
SecondaryMailEnvelope=X-Rcpt-To:
SecondaryMailPassword=poppassword
SecondaryMailServer=mail.myisp.xxx
status=enabled
allora.. adesso inseriamo una nuova variabile
config setprop fetchmail SecondaryMailEnvelope2 X-MDRcpt-To:
se ridai il comando show, vedrai che la nuova variabile è stata inserita correttamente
[root@smeserver ~]# config show fetchmail
fetchmail=service
FreqOffice=every15min
FreqOutside=every15min
FreqWeekend=every15min
Method=multidrop
SecondaryMailAccount=popaccount
SecondaryMailEnvelope=X-Rcpt-To:
SecondaryMailEnvelope2=X-MDRcpt-To:
SecondaryMailPassword=poppassword
SecondaryMailServer=mail.myisp.xxx
status=enabled
a questo punto dobbiamo modificare il comportamento del template..
andiamo in /etc/e-smith/templates/etc/fetchmail e vediamo il contenuto
[root@smeserver ~]# cd /etc/e-smith/templates/etc/fetchmail
[root@smeserver fetchmail]# ls -la
total 20
drwxr-xr-x 2 root root 4096 Nov 25 00:17 .
drwxr-xr-x 72 root root 4096 May 31 2001 ..
-rw-r--r-- 1 root root 261 Jul 22 2005 20disabled
-rw-r--r-- 1 root root 721 Jun 19 2003 50ETRN
-rw-r--r-- 1 root root 1964 Dec 26 2007 50multi-drop
lrwxrwxrwx 1 root root 51 Nov 25 00:17 template-begin -> /etc/e-smith/templates-default/template-begin-shell
ok.. esiste un frammento di template che si occupa del multidrop
a questo punto lo modifichiamo.. ma non direttamente (non si fa MAI).. prima creiamo una directory analoga in /etc/e-smith/templates-custom e ci copiamo dentro il frammento
[root@smeserver fetchmail]# mkdir -p /etc/e-smith/templates-custom/etc/fetchmail
[root@smeserver fetchmail]# cp ./50multi-drop /etc/e-smith/templates-custom/etc/fetchmail/
[root@smeserver fetchmail]# cd /etc/e-smith/templates-custom/etc/fetchmail
[root@smeserver fetchmail]# ls -la
total 12
drwxr-xr-x 2 root root 4096 Jan 20 12:22 .
drwxr-xr-x 3 root root 4096 Jan 20 12:22 ..
-rw-r--r-- 1 root root 1964 Jan 20 12:22 50multi-drop
adesso che siamo nella directory giusta sotto templates-custom, editiamo il file con pico
pico 50multi-drop
e quello che vediamo è uno script in perl.. riporto qui le parti a noi interessanti
my $envelopeSpec =
$fetchmail{"SecondaryMailEnvelope"};
my $SecondaryMailServer =
$fetchmail{"SecondaryMailServer"};
my $SecondaryMailAccount =
$fetchmail{"SecondaryMailAccount"};
my $SecondaryMailPassword =
$fetchmail{"SecondaryMailPassword"};
$envelopeSpec = defined $envelopeSpec ?
"envelope "$envelopeSpec" " : "";
....
$OUT .= " ";
$OUT .= "poll $SecondaryMailServer ";
$OUT .= $envelopeSpec;
$OUT .= " protocol $protocol ";
in pratica, come puoi vedere, lo script preleva le variabili dal db e le schiaffa in un file
adesso modifichiamo il file "alla bisogna" (le righe inserite hanno davanti -> che naturalmente NON è da mettere)
my $envelopeSpec =
$fetchmail{"SecondaryMailEnvelope"};
-> my $envelopeSpec2 =
-> $fetchmail{"SecondaryMailEnvelope2"};
my $SecondaryMailServer =
$fetchmail{"SecondaryMailServer"};
my $SecondaryMailAccount =
$fetchmail{"SecondaryMailAccount"};
my $SecondaryMailPassword =
$fetchmail{"SecondaryMailPassword"};
$envelopeSpec = defined $envelopeSpec ?
"envelope "$envelopeSpec" " : "";
-> $envelopeSpec2 = defined $envelopeSpec2 ?
-> "envelope "$envelopeSpec2" " : "";
....
$OUT .= " ";
$OUT .= "poll $SecondaryMailServer ";
$OUT .= $envelopeSpec;
-> $OUT .= $envelopeSpec2;
$OUT .= " protocol $protocol ";
chiudi il file e lo salvi
adesso vediamo la "magia"
il file /etc/fetchmail prima della modifica (senza l'header che ho segato):
# multi-drop configuration; fetchmail retrieves all mail from a remote POP mailbox:
/usr/bin/fetchmail --syslog --silent --auth password --fetchmailrc - <<EOF
set postmaster "postmaster@mycompany.local"
set bouncemail
set properties ""
poll mail.myisp.xxx
envelope "X-Rcpt-To:"
protocol POP3
no dns
localdomains mycompany.local
username "popaccount" password "poppassword" to * here
smtphost 127.0.0.200
fetchall
forcecr
EOF
ok.. adesso espandiamo il template:
expand-template /etc/fetchmail
e vediamo come è cambiato il file:
# multi-drop configuration; fetchmail retrieves all mail from a remote POP mailbox:
/usr/bin/fetchmail --syslog --silent --auth password --fetchmailrc - <<EOF
set postmaster "postmaster@mycompany.local"
set bouncemail
set properties ""
poll mail.myisp.xxx
envelope "X-Rcpt-To:"
envelope "X-MDRcpt-To:"
protocol POP3
no dns
localdomains mycompany.local
username "popaccount" password "poppassword" to * here
smtphost 127.0.0.200
fetchall
forcecr
EOF
fatto..
e tale modifica rimarrà anche se cambio le impostazioni da web..
l'approccio è estendibile a tutti i template/variabili
spero che l'esempio sia stato illuminante su cosa significhi il templating dei fle di conf su SME :)
che ne pensi se il manuale lo traduciamo tutti un po' basta solo un super visionatore che potresti essere tu.
se avete tempo/voglia, va benissimo.. occhio che il manuale per sviluppatori (dove si trattano questi argomenti) è abbastanza tosto :wink:
Ciao
Stefano