14094
Comment: sync with English master
|
14201
sync with English master
|
Deletions are marked like this. | Additions are marked like this. |
Line 206: | Line 206: |
Ora si aggiungono gli schemi di autenticazione. Per gli utenti shell si usa ''SASL'', che usa PAM per l'autenticazione con password: |
Aggiungere l'autenticazione utente è possibile usando strumenti come [[Dovecot]] o sasl2-bin. Per gli utenti della shell che desiderano usare ''SASL'' e PAM per l'autenticazione con password, questo può essere impostato nel modo seguente: |
Traduzioni: English - Italiano
Contents
- Informazioni generali su Exim
- Installazione
-
Configurazione
- File singolo per la configurazione di Exim4
- File suddiviso
- File personale
- Posizione del file di configurazione generato automaticamente
- Esempio - sistema autonomo
- TLS e autenticazione
- Filtri SPF
- Sotto-indirizzi email (segno più come in Gmail)
- Installare strumenti diagnostici
- Autenticazione utente
- Filtraggio dello spam
- ACL (Access control list, liste di controllo degli eaccessi) di Exim
- FAQ per gli utenti Debian di Exim4
- Vedere anche
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
Il file README.Debian.incluso nei pacchetti exim4 dettaglia in modo esaustivo la configurazione in stile Debian.
#zless /usr/share/doc/exim4-config/README.Debian.gz
Generalmente i pacchetti Debian di Exim 4 sono configurati da debconf. Al momento dell'installazione vengono poste all'utente alcune domande e sulla base delle risposte viene creata la configurazione iniziale di Exim. Si può in ogni momento ripetere il processo di configurazione usando:
dpkg-reconfigure exim4-config
Nonostante la configurazione predefinita sia un po' più estesa rispetto a quella originale a monte, è probabile che sarà necessario modificare a mano la configurazione di Exim con un editor, se si desidera ottenere qualcosa che non è coperto dalla configurazione pilotata da debconf. Non è mai intenzione dei pacchetti fornire attraverso debconf tutti i modi di configurazione possibili e immaginabili.
Ci sono tre modi in cui si può configurare exim4. Il primo è usando un singolo file monolitico, il secondo è suddividendo il file e il terzo è usando un proprio file.
Il file di configurazione è generato da questi file di configurazione usando il comando seguente (sì, il nome comprende ".conf")
update-exim4.conf
In seguito si deve riavviare exim4 usando un comando tipo
service exim4 restart
File singolo per la configurazione di Exim4
Se si selezione questa opzione in debconf, la configurazione verrà generata dal file /etc/exim4/exim4.conf.template.
Il file predefinito è ricco di funzionalità che possono essere abilitate e controllate semplicemente impostando il valore di varie macro.
Incidentalmente il file /etc/exim4/exim4.conf.localmacros verrà letto per primo, il che lo rende il posto ideale per inserire ogni macro che si desidera impostare. Usando questo file si possono controllare varie funzionalità (DKIM, per esempio) e ottenere comunque il beneficio di non toccare i file forniti da Debian, e avere perciò aggiornamenti più semplici.
File suddiviso
In questo scenario la configurazione è suddivisa in molti file più piccoli memorizzati in /etc/exim4/conf.d/ che vengono poi assemblati in un unico file per conto dell'utente dal comando update-exim4.conf. Ogni sezione del file di configurazione ha la sua sottodirectory e i file lì contenuti vengono concatenati in ordine alfabetico. Pertanto è probabilmente una buona idea chiamare i propri file personalizzati con un nome simile a 00_exim4-mia-config in modo che vengano inclusi per primi.
Questa modalità di funzionamento permette di inserire le proprie sezioni di configurazione in qualsiasi posizione nel file di configurazione finale, senza toccare alcuno dei file forniti dal pacchetto. L'idea è quella di rendere gli aggiornamenti più affidabili.
File personale
Basta installare il proprio file in /etc/exim/exim4.conf e exim lo userà e seguirà alla lettera.
Per avere una base su cui lavorare, si può prendere il file /etc/exim4/exim4.conf.template, eseguire update-exim4.conf --keepcomments --output /etc/exim4/exim4.conf o usare la configurazione predefinita degli autori originali che è installata in /usr/share/doc/exim4-base/examples/example.conf.gz.
In questo modo però si perdono tutti i benefici della pacchettizzazione, perciò si deve avere familiarità con Exim per creare una configurazione che funzioni realmente.
Notare che /etc/exim4/exim4.conf è letto direttamente da exim4 ad ogni fork di exim. Perciò se viene modificato durante il funzionamento, ogni connessione SMTP leggerà di fatto un file di configurazione diverso!
Posizione del file di configurazione generato automaticamente
Per riferimento, il file generato da update-exim4.conf è /var/lib/exim4/config.autogenerated
Evitare di modificare questo file lì dove è!
Esempio - sistema autonomo
Questa configurazione è stata testata in un server ed dovrebbe essere 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/
Invece di generare un certificato si può semplicemente copiare quelli acquistati o generati in precedenza.
Modificare /etc/exim4/exim4.conf.template
aggiungendo la riga seguente prima di .ifdef MAIN_TLS_ENABLE
MAIN_TLS_ENABLE = yes
Ora riavviare exim.
Filtri SPF
sono forniti attraverso la macro CHECK_RCPT_SPF, impostarla a true.
Exim usa uno strumento ausiliario che sarà necessario installare...
# apt-get install spf-tools-perl
Poi si deve eseguire update-exim4.conf e riavviare exim.
Sotto-indirizzi email (segno più come in Gmail)
Posso essere facilmente ottenuti aggiungendo qualcosa di simile a quanto segue in una o più delle proprie definizioni di router
local_part_suffix = +* : -* : _* local_part_suffix_optional
L'esempio sovrastante consegna utente+esempio@dominio.com, utente-esempio@dominio.com e utente_esempio@dominio.com a utente@dominio.com.
Analogamente si può usare invece un prefisso con queste opzioni dal nome simile
local_part_prefix = *+ : *- : *_ local_part_prefix_optional
L'esempio sovrastante consegna esempio+utente@dominio.com, esempio-utente@domain.com e esempio_utente@dominio.com a utente@dominio.com.
In entrambi i casi si possono successivamente usare filtri sieve, trucchi di configurazione o il proprio programma di posta per applicare le regole di consegna.
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
Notare che durante il test con swaks si invia un password vuota.
Alcuni provider potrebbero bloccare la connessione alla porta 25, inoltre alcuni client insistono a provare TLS sulla porta 465.
Per gestire questo modificare il file /etc/default/exim4 in questo modo:
SMTPLISTENEROPTIONS='-oX 465:25 -oP /var/run/exim4/exim.pid'
E anche /etc/exim4/exim4.conf.template:
##################################################### ### main/03_exim4-config_tlsoptions ##################################################### tls_on_connect_ports=465 ### main/03_exim4-config_tlsoptions #################################
Per i dettagli vedere il file README su pkg-exim4.alioth.debian.org.
Autenticazione utente
Aggiungere l'autenticazione utente è possibile usando strumenti come Dovecot o sasl2-bin. Per gli utenti della shell che desiderano usare SASL e PAM per l'autenticazione con password, questo può essere impostato nel modo seguente:
#apt-get install sasl2-bin
Modificare /etc/default/saslauthd per abilitare saslauth:
START=yes
Avviare il demone:
#/etc/init.d/saslauthd start
In/etc/exim4/exim4.conf.template decommentare la riga seguente per abilitare 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
Se si ha usa Debian Jessie o successiva (con systemd abilitato in modo predefinito), abilitare e avviare il servizio usando systemctl:
#systemctl enable spamassassin.service
Per i rilasci di Debian precedenti modificare /etc/default/spamassassin ...
ENABLED=1
Avviare il demone:
# /etc/init.d/spamassassin start
In tutti i sistemi modificare /etc/exim4/exim4.conf.template come richiesto dal proprio sistema.
Come prima cosa, se necessario, impostare spamd_address:
# 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
Poi modificare la sezione acl_check_data per aggiungere le appropriate intestazioni per lo spam:
### 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:
Per maggiori informazioni sulla configurazione dei filtri anti-spam vedere il wiki di exim.
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. Per maggiori informazioni vedere la documentazione delle ACL nel wiki di exim.
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 dei 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.