Avanti Indietro Indice


4.1 Software correlato

 WebMail:
A volte puo' risultare molto utile poter gestire la propria posta via web, pensate ad esempio ad un provider o ad una azienda dove un utente vuole poter controllare la propria posta senza aver con se' un computer o un portatile, basta un collegamento ad internet e con la propria password si puo' controllare in modo comodo e semplice la propria posta.
Questo servizio e' disponibile per qmail con i programmi Sqwebmail e oMail, entrambi sono "maturi", il primo e' gestito dalla Inter7 e scritto in C mentre il secondo sfrutta il PHP4, forse oMail ha piu' opzioni ma Sqwemail e' esteticamente piu' accattivante... insomma provateli entrambi e decidete.
Oltre alla gestione della posta via web e' possibile anche amministrare il server via web, i programmi che ci permettono di fare questo sono qmailadmin e oMail-Admin, vale lo stesso consiglio di prima.

 Mailing List:
Per gestire le mailing list Dan J Berstein ha creato il programma ezmlm, come e' scritto nella documentazione  "ezmlm is an easy-to-use, high-speed mailing list manager for qmail".
Permette ad ogni utente di crearsi la propria mailing list con un semplice comando:
# ezmlm-make PROVA .qmail-prova sos pippo.com
i subscribe/unsuscribe potranno essere eseguiti usando gli indirizzi prova-subscribe@pippo.com e prova-unsubscribe@pippo.com, sono disponibili tutti i comandi e le utility che usiamo e tutte e' personalizzabile fino al minimo particolare.
Nulla vi vieta di usare altri programmi con Majordomo (per il quale e' stata scritta una pacth per farlo funzionare al meglio con qmail).

 Analizzatore di log:
Il programma qmailanalog (sempre scritto da Djb) ci permette di analizzare i log di qmail e generare le seguenti statistiche:

numero di e-mail gestite
velocita' di invio
numero di errori, per quali motivi,quanti e numero di tentativi
ecc ...

E' provvisto anche di alcuni tool che permettono di focalizzare la nostra attenzione su particolari utenti, messaggi ecc...

 qmail-LDAP:
Per grandi server e' molto piu' performante e maneggevole gestire gli account degli utenti tramite dei database, qmail-ldap e' una patch che ci permette di interfacciare qmail con una "directory" LDAP. I due sistemi piu' utilizzati per gestire qmail in clustering high-availability sono vpopmail (con autenticazione su database) e qmail-ldap, scegliete quello che ritenete piu' adatto alle vostre esigenze.
Personalmente preferisco vpopmail in quanto:
- non e' una patch di qmail, quindi nessun problema di patch-su-patch
- sviluppato dalla Inter7 in collaborazione con un'attiva comunita' di sviluppatori
- Ho esperienza di gestione di mail servers con circa 200.000 domini e 600.000 account, quindi posso fidarmi della sua affidabilita'.

 Autoresponder:
Questo programma ci permette di impostare l'invio di messaggi di risposta automatici quando un certo indirizzo riceve della posta, e' un sistema molto usato negli help desk in modo che ogni qual volta un cliente segnala un problema via e-mail automaticamente gli viene inviato un messaggio che indica che il messaggio e' stato preso in considerazione e il suo problema verra' risolto al piu' presto; questo e' solo un esempio, gli scopi per cui potete usare il
programma sono molteplici.

 qmail-qfilter:
Prima o poi potra' capitarvi di voler implementare una funzione che qmail non ha, con altri server di posta (es ms Excange) a sorgenti chiusi non potrete fare altro che prendere atto di questa mancanza, con qmail e qmail-qfilter invece potete fare eseguire vostri script o programmi ogni qual volta un messaggio viene manipolato dal sistema di spooling (cioe' per ogni e-mail).
In questo modo potete creare i vostri script in shell, perl, C ... per poter effettuare innumerevoli personalizzazioni del programma senza bisogno di modificare il codice sorgente di qmail.

qmail-masq:

Si tratta di un programma in perl scritto da me per implementare una funzione non presente in qmail, ha lo scopo di modificare (mascherare) il campo "From:" di ogni mail mandata da un utente interno alla rete ad uno esterno.
Questa funzione torna molto utile quando si ha un piccola rete interna: ogni utente ha una propria e-mail del tipo nome@pippo.com, per varie ragioni però non si ha a disposizione il dominio pippo.com e quindi non si possono riprodurre tutti gli indirizzi email interni con quelli esterni (su internet), succede quindi che se si manda una mail ad una persona esterna alla rete questa vedrà il mittente come @pippo.com e rispondendo o inviando una mail a tale indirizzo non raggiungerebbe l'interessato (usare l'opzione "indirizzo per risposte" non servirebbe perchè gli utenti interni risponderebbero a tale indirizzo invece che al personale).
qmail-masq si inserisce nella coda del processo mail e quando riconosce una mail proveniente da un interno e destinata ad un esterno sostituisce l'email    del mittente con un'indirizzo prefissato (es: pippo2@linux.com) in modo che il mittente possa essere raggiunto.
Può essere utile anche quando si ha a disposizione tutto il dominio ma non si vuole mostrare il proprio indirizzo privato e si vuole mascherarlo con  uno pubblico.
Tale funzione è già presente in sendmail e, in parte, in postfix, ma siccome non avevo intenzione di usare sendmail ho scritto questo programma.
qmail-masq si basa su qmail-qfilter ed è reperibile all'indirizzo https://giunchi.net/qmail-masq

4.2 Installazione su Debian GNU/Linux

Questo è un breve paragrafo che descrive come installare qmail su una distribuzione Debian, grazie alle facilitazioni che questa distribuzione ci mette a disposizione  è possibile installare molto comodamente qmail.
Ho deciso di scrivere questa sezione in onore alla mia distribuzione preferita :)
Per motivi di licenza non è possibile distribuire qmail in formato binario (djb è molto restrittivo sulla questione), è quindi necessario scaricarlo in formato sorgente e poi compilarlo con alcuni script in modo da creare personalmente il pacchetto binario da installare.
Per prima cosa scarichiamo il pacchetto debian dei sorgenti qmail:

# apt-get install qmail-src

dopo averlo scaricato verrà creata automaticamente la directory  /usr/src/qmail-1.03-src

# ls /usr/src/qmail-1.03-src
qmail_1.03-17.diff.gz  qmail_1.03-17.dsc  qmail_1.03.orig.tar.gz

come potete vedere sono stati creati 3 file che contengono la descrizione del pacchetto, i sorgenti di qmail, le personalizzazioni debian per installarlo e creare il pacchetto binario.
Creiamo il deb lanciando lo script

# build-qmail

vi verranno poste alcune semplici domande dopo le quali inizierà subito a compilare, finita la compilazione vi chiederà se volete installare subito qmail-1.03.....deb . Rispondete affermativamente e dopo pochi secondi avrete qmail installato sul vostro pc!
Oltre alla pura installazione vengono automaticamente creati gli utenti, i gruppi e viene impostata una configurazione generica e minima, potete quindi riprendere a leggere dalla sezione 2.4, ricordatevi che anche per ucspi-tcp c'è il pacchetto deb ucspi-tcp-src da installare nello stesso modo di qmail-src.

4.3 Privacy e controllo delle email

Sempre piu' spesso mi vengono poste domande su come tenere traccia delle email degli utenti, a parte la soluzione tecnica del problema questo introduce problematiche etico/giuridiche in merito alla privacy ed al trattamento dei dati personali.
Potete trovare maggiori informazioni sulle misure tecnico/giuridiche da attuare, prima di attivare un simile controllo, alla pagina
http://www.privacy.it/faq.html alla sezione "Privacy e lavoratori dipendeti" e "Privacy e servizi telematici".
Se DOPO aver attuato tutte le tutele del caso volete procedere all'attuazione tecnica di tale sistema di controllo, ecco i tre principali sistemi che si usano con qmail per spiare le email:
- Utilizzare queue_extra e http://cr.yp.to/qmail/faq/admin.html#copies
- Utilizzare qmail-monitor.
- Se vi serve un sistema molto personalizzato utilizzate la patch QMAILQUEUE e create uno script, in shell,Perl o qualsiasi altro linguaggio, che tenga traccia di tutto cio' che passa dalla coda di qmail, potete prendere esempio da qmail-masq (descritto in questo documento) che utilizza qmailqueue anche se per altri scopi.

Esprimo tutta la mia contrarieta' all'utilizzo di sistemi di questo tipo, come sistemisti non siete dei semplici esecutori-materiali-di-decisioni-prese-dall'-alto, ma soggetti pensanti e dotati di coscienza che possono contribuire nella valutazione delle misure tecniche che si intende adottare.
Anche nel caso peggiore PRETENDETE che vengano attuate tutte le tutele previste dalla legge, visto che nel 90% dei casi queste misure di controllo vengono attuate nella totale incosapevolezza dei soggetti controllati e nella totale assenza di tutele/legalita'.

4.4 Assistenza Commerciale

Se volete installare qmail con interfacce web semplificate per la gestione, dovete gestire un server molto grosso con un alto grado di affidabilita', avete un server qmail gia' installato e volete assistenza su problemi .... ci sono vari servizi di assitenza commerciale.
Io offro servizi commerciali per installazione di server di posta qmail "full featured", creazione di cluster ad alta disponibilita', creazione di funzioni personalizzate, assistenza per singoli problemi o a tempo, se vi interessano questi, ed altri, servizi contattatemi via email.
Ho installato e gestisco server di posta qmail per vari ISP e reti interne aziendali, attualmente gestisco un cluster con 200.000 domini e circa 600.000 caselle di posta.

4.5 Documentazione

qmail FAQ                       http://cr.yp.to/qmail/faq.html
Life-with-qmail http://www.lifewithqmail.org
qmail-howto http://www.flounder.net/qmail/qmail-howto.html
qmail-doc-project http://qmail.3va.net  (non piu' mantenuto)
qmail mailing list http://cr.yp.to/lists.html#qmail
qmail mailing list archive http://www.ornl.gov/cts/archives/mailing-lists/qmail/
anti spam howto http://www.summersault.com/chris/techno/qmail/qmail-antispam.html
selective relaying http://qmail-docs.surfdirect.com.au/docs/qmail-antirelay.html
newbie guide to relaying http://www.palomine.net/qmail/relaying.html

Libri:
- "The qmail HANDBOOK" scritto da Dave Sill (l'autore di LWQ), al momento è considerato il miglior libro su qmail
- "Running qmail" della Sans
Prossimamente dovrebbe uscire un libro su qmail edito dalla O'Reilly, vista la qualita' dei libri a cui O'Reilly ci ha abituato consiglio a tutti di non perderselo.
 

4.6 Links

Homepage ufficiale di qmail http://cr.yp.to/qmail.html
Homepage di qmail con contrib http://www.qmail.org

qmail http://cr.yp.to/software/qmail-1.03.tar.gz
Ucspi-tcp http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz
Daemontools http://cr.yp.to/daemontools/daemontools-0.61.tar.gz
Checkpassword http://cr.yp.to/checkpwd/checkpassword-0.90.tar.gz
Inter7 (vpopmai,qmailadmin) http://www.inter7.com
rblsmtpd http://cr.yp.to/qblsmtpd.html
qmailanalog http://cr.yp.to/qmailanalog.html
Ezmlm http://www.ezmlm.org
dot-foward http://cr.yp.to/dot-forward.html
serialmail http://cr.yp.to/serialmail.html
fastfoward http://cr.yp.to/fastforward.html
qmail-ldap http://www.nrg4u.com/
oMail http://webmail.omnis.ch/
Getmail http://www.qcc.sk.ca/~charlesc/software/getmail/
Maildrop http://www.flounder.net/~mrsam/maildrop/
AMaVIS http://amavis.org/
Qmail-scanner http://qmail-scanner.sourceforge.net/
Patch x majodomo ftp://koobera.math.uic.edu/www/software/majordomo+qmail-patch-0.70.gz
Indice RFC http://www.rfc-editor.org
qmail-masq http://www.folug.linux.it/qmail-masq.html
Anomy Mail Sanitizer http://mailtools.anomy.net.
 

4.7 FAQ

D: ho un problema ...

R: analizza il file di log, non mi stancherò mai di ripetere quanto sia utile leggere tale file alla ricerca di dettagli sulla problematica.
Il file di log che ci interessa si può spesso trovare in:
/var/log/mail.log o /var/log/maillog (Linux)
/var/adm/syslog/mail.log (hp-ux)
/var/adm/mail.log (Sco)
Se non riuscite a trovarlo in questi file, cercatelo nella configurazione del syslog
# grep mail /etc/syslogd.conf
Il file che vi verrà indicato conterrà i dettagli che stiamo cercando.

D: la compilazione di ucspi-tcp mi esce con il seguente errore:

dns.o(.text+0x4a3): undefined reference to '__res_search'
dns.o(.data+0xc): undefined reference to '__res_query'
collect2: ld returned 1 exit status
make: *** [qmail-remote] Error 1

R: # echo "-lresolv" >> dns.lib
ora ricompilate e non dovreste più ricevere errori.

D: non riesco a compilare daemontools, il make mi segnala il seguente errore:
tai64nlocal.c:58: dereferencing pointer to incomplete type
tai64nlocal.c:59: dereferencing pointer to incomplete type
tai64nlocal.c:60: dereferencing pointer to incomplete type
make: *** [tai64nlocal.o] Error 1

R: edita il file tail64nlocal.c e, nella seconda riga sostituisci
<sys/time.h> con <time.h>
e ricompila daemontools.

D: compilando qmail nella mia Red Hat 9.0 ricevo vari errori di compilazione

R: (da qmail.org) La defininizione di "errno" in qmail e tcpserver non funziona con le nuove glibc (2.3.1). Debian e Red Hat stanno aggiornando a questa versione delle glibc. Gli eseguibili compilati con versioni piu' vecchie delle glibc usciranno con errore alla loro esecuzione, e la ricompilazione con le 2.3.1 non e' possibile. Mate Wierdl ha creato della patch per tutto il software di djb, potete trovarle a questo indirizzo.
Ad esempio per compilare qmail scaricate le patch "qmail-1.03.errno.patch" e "qmail-1.03.qmail_local.patch" nella directory dei sorgenti di qmail ed eseguite:
# patch < qmail-1.03.errno.patch
# patch < qmail-1.03.qmail_local.patch
quindi ricompilate con make setup check.

D: quando invio delle mail ad un server grosso ricevo il seguente errore:
     deferral: CNAME_lookup_failed_temporarily._(#4.4.3)/
anche se sono sicuro che il mio server dns e' configurato perfettamente

R: questo messaggio indica un cattivo funzionamento del sistema dns, nella maggiorparte dei casi si tratta di un errore di configurazione nel nostro dns ma a volte puo'essere qualcosa di diverso che non dipende da noi: qmail rispetta gli standard descritti negli RFC e quindi supporta risposte a query dns di una certa grandezza.
Se il server dns a cui e' indirizzata l'e-mail (es Aol) risponde superando questi limiti qmail esce con errore, per risolvere questo problema applichiamo a qmail
la patch scritta per questo motivo e prelevabile all'indirizzo
http://www.ckdhr.com/ckd/qmail-103.patch
installiamola come una normale patch con i comandi

# cd /usr/src/qmail-1.03
# patch -p0 </dir/di/download/qmail-103.patch
# make setup check
 

D: quando avvio qmail per la prima volta ricevo il messaggio di errore
     "cannot start: adress already in use"

R: qmail cerca di eseguire il bind sulla porta 25 che trova gia' occupata, probabilmente
     non avete disabilitato Sendmail o un'altro server di posta e' in esecuzione, fate un ps e killate il processo che vi da' noie.
 

D: non riesco a creare alias con il "."

R: qmail sostituisce il "." con ":", ad esempio se vogliamo creare l'alias pippo.paperino@aol.com che si riferisca all'utente pluto@aol.com dobbiamo eseguire
echo "pluto" >~alias/.qmail-pippo:paperino
questo non e' un bug ma una misura di sicurezza che e' stata presa per evitare che si creino dei file con "..". Maggiori dettagli sulla motivazione potete trovarli    nella pagina man di qmail-local

D: non riesco a creare aliasi con il carattere "&"

R: la soluzione è simile a quella del problema precedente, per creare l'alias "pippo&pluto" che punti all'utente "davide" agiamo così:
echo "davide" >~alias/.qmail-pippo'&'pluto

D: Sto cercando di installare qmail ma in fase di compilazione la procedura si interrompe cercando di eseguire il comando nroff che non esiste 

R: il comando "nroff" serve per la formattazione delle pagine man ed e' essenziale per l'installazione, per continuare l'installazione di qmail prelevate ed installate il pacchetto nroff o groff dal sito della vostra distribuzione linux o dal sito dei porting GNU per le versioni commerciali di Unix.

D: Ho un problema con qmail e non trovo risposta in questo documento, cosa posso fare?

R: consulta le FAQ ufficiali di qmail http://cr.yp.to/qmail/faq.html e  l'archivio della mailing list http://www.ornl.gov/cts/archives/mailing-lists/qmail/, se anche quì non trovate risposta iscrivetevi alla mailing list (http://cr.yp.to/list.html#qmail) ed esponete il vostro problema.
Eventualmente potete scrivermi ed esporre il vostro problema (potete trovare la mia chiave GPG su keyserver).

4.7 Ringraziamenti

In questa sezione vorrei ringraziare tutti coloro che hanno contribuito al miglioramento di questo documento:

Andrea Barbaglia, Angelo Confliti, FreeAnt, Gabriele (Giuffrè), Cesare Voltarelli, Gabriele Giambonini, Stefano Giunchi, Guido Gonzato, Riccardo Fabbri, Alessandro Pastore, Nicola Vignanò, Claudio Guardigli.



Avanti Indietro Indice