Translation(s): English - Italiano
Informazioni generali su Exim
Exim è un MTA (Message Transfer Agent, agente di trasferimento messaggi).
Installazione
Exim viene generalmente fornito con l'installazione predefinita di Debian. Se è necessario usare ACL e altre funzionalità potrebbe essere necessario installare exim4-daemon-heavy
#apt-get install exim4-daemon-heavy
Configurazione
Questa configurazione è stata testata in un server ed è adatta all'uso interno:
#dpkg-reconfigure exim4-config
Tipo di configurazione del sistema di posta: sito internet; posta inviata e ricevuta direttamente con SMTP. Mail name del sistema: propriodominio.com Indirizzi IP sui quali attendere connessioni SMTP in ingresso: // lasciare vuoto Altre destinazioni per conto delle quali accettare posta: propriodominio.com Domini per i quali fare il «relay»: // lasciare vuoto Sistemi per i quali fare il «relay»: // lasciare vuoto Mantenere al minimo il numero di richieste DNS (dial-on-demand)?: No Modalità di consegna per la posta locale: Formato Maildir nelle directory utente Dividere la configurazione in molti piccoli file?: No
Questo scrive la configurazione in /etc/exim4/update-exim4.conf.conf
TLS e autenticazione
Generare un certificato usando:
#bash /usr/share/doc/exim4-base/examples/exim-gencert
Genera exim.crt e exim.key in /etc/exim4/
si può semplicemente copiare i certificati se li si hanno già.
Modificare /etc/exim4/exim4.conf.template
aggiungendo la riga seguente prima di .ifdef MAIN_TLS_ENABLE
MAIN_TLS_ENABLE = yes
Installare strumenti diagnostici
#apt-get install swaks libnet-ssleay-perl
Testare la connessione:
$swaks -a -tls -q HELO -s localhost -au proprio_utente -ap '<>' === Trying localhost:25... === Connected to localhost. <- 220 debianwb ESMTP Exim 4.76 Thu, 04 Aug 2011 14:22:02 +0600 -> EHLO debianwb <- 250-debianwb Hello localhost [127.0.0.1] <- 250-SIZE 52428800 <- 250-PIPELINING <- 250-STARTTLS <- 250 HELP -> STARTTLS <- 220 TLS go ahead === TLS started w/ cipher DHE-RSA-AES256-SHA ~> EHLO debianwb <~ 250-debianwb Hello localhost [127.0.0.1] <~ 250-SIZE 52428800 <~ 250-PIPELINING <~ 250 HELP ~> QUIT <~ 221 evie closing connection
Durante il test con swaks si invia un password vuota.
Autenticazione utente
Ora si aggiungono gli schemi di autenticazione.
Per gli utenti shell si usa SASL, che usa PAM per l'autenticazione con password.
#apt-get install sasl2-bin
modificare /etc/default/saslauthd per abilitare saslauth
START=yes
avviare il demone:
#/etc/init.d/saslauthd start
modificare /etc/exim4/exim4.conf e decommentare la riga seguente per l'autenticazione con saslauthd:
plain_saslauthd_server: driver = plaintext public_name = PLAIN server_condition = ${if saslauthd{{$auth2}{$auth3}}{1}{0}} server_set_id = $auth2 server_prompts = : .ifndef AUTH_SERVER_ALLOW_NOTLS_PASSWORDS server_advertise_condition = ${if eq{$tls_cipher}{}{}{*}} .endif
Aggiungere exim al gruppo sasl
#adduser Debian-exim sasl
Riavviare exim:
#/etc/init.d/exim4 restart
Testare la connessione usando il proprio nome utente:
#swaks -a -tls -q AUTH -s localhost -au proprio_utente Password:
Abilitare l'accesso IMAP installando Courier-Imap o un MTA simile
Filtraggio dello spam
Ci sono diversi modi per rilevare lo spam.
Exim ha la configurazione predefinita per l'uso di spamassassin (è richiesto exim4-daemon-heavy).
#apt-get install spamassassin
Modificare /etc/default/spamassassin
ENABLED=1
Avviare il demone:
/etc/init.d/spamassassin start
Modificare /etc/exim4/exim4.conf.template decommentando o facendo cambiamenti a seconda della propria configurazione:
# Per l'analisi dello spam esiste un'opzione simile che definisce l'interfaccia a # SpamAssassin. Non è necessario impostare questo se si usa il valore predefinito che # è mostrato nell'esempio commentato. Per la scansione dei virus, deve essere modificata # anche la lista di controllo degli accessi acl_check_data per abilitare la scansione spam. spamd_address = 127.0.0.1 783
Modificare /etc/exim4/exim4.conf.template aggiungendo spam header nella sezione acl_check_data:
### acl/40_exim4-config_check_data ################################# # Questa ACL viene usata dopo che sono stati ricevuti i contenuti di un messaggio. Questa # è l'ACL in cui si possono testare le intestazioni o il corpo di un messaggio e, in # particolare, questo è il luogo in cui si possono richiamare analizzatori di virus o spam esterni. acl_check_data: ... ... ... # Vedere la documentazione di exim e il wiki di exim per ulteriori esempi. # # warn # spam = Debian-exim:true # add_header = X-Spam_score: $spam_score\n\ # X-Spam_score_int: $spam_score_int\n\ # X-Spam_bar: $spam_bar\n\ # X-Spam_report: $spam_report # metti intestazioni in tutti i messaggi (spam e non) warn spam = nobody:true add_header = X-Spam-Score: $spam_score ($spam_bar) add_header = X-Spam-Report: $spam_report # aggiunge una seconda riga di oggetto con l'indicazione *SPAM* quando un messaggio # supera la soglia warn spam = nobody add_header = Subject: ***SPAM (score:$spam_score)*** $h_Subject:
Controllare il wiki di exim e pr0d.planetlarg.com per informazioni dettagliate.
Per testare la propria configurazione di spamassassin seguire il test di spamassassin e gtube.
ACL (Access control list, liste di controllo degli eaccessi) di Exim
Exim fornisce un modo flessibile per impostare liste di controllo degli accessi. La documentazione delle ACL di Exim può essere letta qui.
Per esempio, se si cerca di respingere tutta la posta da tre fornitori di servizi email gratuiti (dominio1.com, dominio2.com, dominio3.com) in base all'header Received del loro server, si possono usare le righe seguenti:
deny condition = ${if match{$h_Received:}{\N\.(domain1|domain2|domain3)\.com\N}{yes}{no}} message = This mailbox does not support free e-mail services.
FAQ per gli utenti Debian di Exim4
Esiste una pagina con le FAQ per gli utenti di Exim4 in Debian.