Email

Il modulo Email è composto da tre parti principali:

  • server SMTP per l’invio e la ricezione [1]
  • server IMAP e POP3 per la lettura della posta [2], e linguaggio Sieve per organizzarla [3]
  • Filtro antispam, antivirus e blocco degli allegati [4]

Vantaggi

  • Completa autonomia nella gestione della posta
  • Esclusione di eventuali problemi dovuti al provider
  • Possibilità di ricostruire tutto il tragitto dei messaggi al fine di individuare eventuali errori
  • Scansione antispam ed antivirus ottimizzata

Vedi anche gli argomenti correlati:

  • Come funziona la posta elettronica [5]
  • Record DNS di tipo MX [6]
  • Simple Mail Transfer Protocol (SMTP) [7]
  • firma DKIM [8]

Nota

Con il rilascio di NethServer 7.5.1804 le nuove installazioni di Email, Connettore POP3 e Proxy POP3 sono basate sul motore di filtraggio Rspamd. Le precedenti installazioni di NethServer verranno automaticamente aggiornate a Rspamd come descritto nella sezione Aggiornamento Email a Rspamd

Domini

NethServer può gestire un numero illimitato di domini di posta, configurabili dalla pagina Email > Domini. Per ogni dominio ci sono due alternative:

  • Consegna dei messaggi alle caselle di posta locali, secondo il formato Maildir [9].
  • Relay dei messaggi ad un altro mail server

Nota

Eliminando un dominio, non verranno eliminate e-mail, ma solo inibita la ricezione di mail indirizzate al dominio. Eventuali mail già ricevute rimarranno conservate sul server.

NethServer consente di conservare una copia nascosta di tutti i messaggi diretti ad un certo dominio: saranno consegnati al destinatario finale e in più ad un indirizzo email personalizzabile. La copia nascosta è abilitata dall’interruttore Copia messaggi in ingresso (precedentemente Spedisci sempre una copia (Bcc)).

Avvertimento

In alcuni paesi abilitare l’opzione Copia messaggi in ingresso può essere contro le leggi sulla privacy.

Se il destinatario finale non può essere raggiunto (ad esempio se l’indirizzo del destinatario non esiste), il messaggio viene normalmente rifiutato. A volte (ad esempio quando viene migrato un dominio di posta elettronica) potrebbe essere utile accettare e consegnare il messaggio ad una casella di posta di tipo catch-all. Questo comportamento può essere ottenuto abilitando l’opzione :guilabel:`Accetta messaggi a destinatari ignoti `.

Firma DKIM

DomainKeys Identified Mail (DKIM) [8] fornisce un modo per convalidare l’MTA di invio, che aggiunge una firma crittografata alle intestazioni MIME dei messaggi in uscita.

Per attivare la firma DKIM per un dominio di posta, abilitare l’interruttore Firma sotto Email > Domini > [elemento lista] > Configura DKIM.

Le intestazioni delle firme DKIM vengono aggiunte solo ai messaggi inviati tramite le porte TCP 587 (submission) e 465 (smtps).

Per funzionare efficacemente, il DNS pubblico deve essere configurato correttamente. Fare riferimento alle istruzioni del proprio provider DNS per eseguire le seguenti operazioni:

  1. Aggiungere un record TXT al provider DNS pubblico con la chiave «default._domainKey»
  2. Copia e incolla della chiave assegnata nella sezione Dati del record DNS (RDATA)

Filtro

Tutta la posta in transito è sottoposta ad una serie di controlli che possono essere abilitati selettivamente dalla pagina Email > Filtro:

  • Allegati
  • Antivirus
  • Antispam

Allegati

Il sistema può ispezionare le email, negando l’accesso a messaggi che contengono file in formati proibiti dalle politiche aziendali. È possibile bloccare i seguenti tipi:

  • file eseguibili (es. exe, msi)
  • archivi di file (es. zip, tar.gz, docx)
  • lista personalizzata di estensioni

Il sistema riconosce il tipo del file analizzandone il contenuto, indipendentemente dal nome del file. Quindi è possibile che file MS Word (docx) e OpenOffice (odt) siano bloccati perché sono in realtà anche degli archivi zip.

Antivirus

Il componente antivirus individua i messaggi di posta elettronica contenenti virus. I messaggi infetti vengono scartati. Il database contenente le impronte dei virus è aggiornato periodicamente.

Antispam

Il filtro antispam [4] analizza i messaggi rilevando e classificando lo spam [15] tramite criteri euristici, regole predeterminate e valutazioni statistiche sul contenuto dei messaggi.

Il filtro può anche verificare se il server mittente è elencato in una o più black list (DNSBL [14]). Un punteggio è associato a ciascuna regola.

il punteggio totale raggiunto alla fine dell’analisi permette al server di decidere cosa fare di un messaggio, in accordo con tre thresholds che possono essere impostate in Email > Filter > Anti spam.

  1. Se il punteggio spam è superiore a Soglia di greylist il messaggio è temporarily rejected. La tecnica greylisting [16] presuppone che uno spammer abbia fretta e molto probabilmente non invii di nuovo la mail, mentre un MTA conforme allo standard SMTP tenterà di recapitare nuovamente il messaggio posticipato.
  2. Se il punteggio spam è superiore a Soglia spam il messaggio viene marcato come spam con l’aggiunta dello speciale header X-Spam: Yes usato per la gestione specifica dello spam, quindi viene recapitato come gli altri messaggi. In alternativa, l’opzione Aggiunta prefisso all’oggetto dei messaggi spam rende visibile il flag di spam nell’oggetto del messaggio, anteponendo la stringa data al header Subject.
  3. Se il punteggio di spam è sopra Soglia di rifiuto dei messaggi Il messaggio è rejected.

I filtri statistici, chiamati bayesiani [17], sono regole speciali che evolvono e adattano rapidamente l’esito dell’analisi dei messaggi marcandoli come spam o ham.

I filtri statistici possono quindi essere addestrati con qualsiasi client IMAP semplicemente spostando un messaggio dentro e fuori da Junk folder. Come prerequisito, la cartella Junk deve essere abilitata con l’opzione Email > Caselle di posta [Impostazioni generali] > Configura [Opzioni Avanzate] > Sposta lo spam nella cartella «Junk» (precedentemente Email > Caselle di posta > Spostare nella cartella «Junk»).

  • Spostando un messaggio dentro la cartella «Junk», i filtri apprendono che il messaggio è spam e assegneranno un punteggio più alto ad altri messaggi simili.
  • Al contrario, spostando un messaggio fuori di «Junk», i filtri apprendono che è ham: a messaggi simili sarà assegnato un punteggio più basso.

Per impostazione predefinita, tutti gli utenti possono addestrare i filtri utilizzando questa tecnica. Se esiste un gruppo chiamato spamtrainers, solo gli utenti di questo gruppo potranno addestrare i filtri.

L’allenamento dei filtri bayesiani si riflette su tutti gli utenti del sistema, non solo sull’utente che ha contrassegnato un’e-mail come spam o ham.

È importante capire come funzionino i test bayesiani:

  • Non contrassegnano i messaggi come spam se questi contengono un argomento specifico od uno specifico indirizzo mittente. Si occupano di identificare le caratteristiche specifiche del messaggio.

  • Un messaggio può essere contrassegnato solo una volta. Se lo stesso messaggio viene contrassegnato più volte, non avrà alcun effetto in quanto i test dinamici sono già stati addestrati da quel messaggio.

  • I test bayesiani non sono attivi fino a quando non hanno ricevuto informazioni sufficienti. Queste prevedono un minimo di 200 mail di spam e 200 mail di ham (falsi positivi).

    Mentre il sistema riceve dati, l’avanzamento dell’addestramento dei filtri bayesiani può essere osservato dalla barra di progresso Email > Filtro [Statistiche] > Allenamento bayesiani.

Nota

È buona norma controllare costantemente la propria cartella «Junk» per non correre il rischio di perdere messaggi riconosciuti erroneamente come spam.

Regole per le liste bianche e nere

Se il sistema fallisce nel riconoscere lo spam anche dopo alcuni tentativi di allenamento, la whitelist e la blacklist possono venire in aiuto. Queste sono liste di indirizzi di posta elettronica che vengono o sempre ammessi o sempre rifiutati a spedire o ricevere un messaggio.

La sezione Email > Filtro [Regole] > Dettagli (precedentemente Regole di accesso per indirizzi email) consente la creazione di tre tipi di regole:

  • Accetta da: tutti i messaggi provenienti dal mittente indicato vengono sempre accettati
  • Accetta a: tutti i messaggi destinati all’indirizzo indicato vengono sempre accettati
  • Blocca da: tutti i messaggi provenienti dal mittente indicato vengono sempre bloccati

Le regole di tipo Accetta hanno una precedenza maggiore rispetto a quelle di tipo Blocca. Se una regola Accetta corrisponde, i controlli antispam e antivirus vengono ignorati, la regola Blocca non viene valutata e il messaggio viene accettato.

Avvertimento

I controlli antivirus e antispam vengono ignorati se una regola Accetta corrisponde.

È possibile creare una regola Accetta o Blocca anche per un intero dominio, non solo per un singolo indirizzo e-mail: è sufficiente specificare il nome del dominio (ad esempio dev.nethserver.org).

Quando viene specificato un nome di dominio di secondo livello, la regola corrisponde anche per i suoi sottodomini. Per esempio nethserver.org include nethserver.org stesso, ma anche dev.nethserver.org, demo.nethserver.org e così via.

Interfaccia web di Rspamd

Il modulo antispam è implementato da Rspamd [4] che è corredato della sua interfaccia web di amministrazione, disponibile all’URL

https://<HOST_IP>:980/rspamd

Per maggiori informazioni su Rspamd, fare riferimento alla sezione Rspamd.

Quarantena (beta)

NethServer esegue la scansione di tutti i messaggi di posta elettronica in arrivo prima che vengano recapitati alla casella postale dell’utente. I messaggi identificati come spam verranno inviati a una casella di posta utente specifica. Lo scopo di questa funzione è di verificare l’e-mail prima di eliminarla. È possibile inviare una notifica e-mail anche al postmaster (alias di root) per ogni e-mail in quarantena abilitando una opzione dedicata.

Nota

È possibile accedere ai messaggi in quarantena tramite web mail o con un account IMAP

Avvertimento

La casella di posta utilizzata per la quarantena deve essere in grado di accettare lo spam. Dovrebbe essere una casella di posta condivisa locale o dell’utente. Se si utilizza un account esterno, assicurarsi che l’account esista sul server remoto. Sincerarsi che la casella di quarantena sia stata creata solo per questo scopo specifico, altrimenti sarà sovraccaricata di spam indesiderato.

La quarantena è fornita da un modulo opzionale chiamato``nethserver-mail-quarantine``. Una volta installato dal terminale sarà necessario impostare manualmente le proprietà del suo database.

Le proprietà sono disponibili sotto la chiave rspamd (database di configurazione):

rspamd=service
...
QuarantineAccount=spam@domain.org
QuarantineStatus=enabled
SpamNotificationStatus=disabled
  • QuarantineAccount: L’utente o la casella di posta condivisa in cui inviare tutti i messaggi di spam (il controllo dello spam è disabilitato automaticamente su questo account). Deve essere creato manualmente. È possibile utilizzare una casella di posta esterna, in tal caso accertarsi di disabilitare il controllo dello spam sul server remoto
  • QuarantineStatus: abilita la quarantena, lo spam non viene più respinto. I valori ammessi sono enabled/disabled. L’impostazione predefinita è disabled
  • SpamNotificationStatus: Abilita la notifica via email quando la posta elettronica viene messa in quarantena. I valori ammessi sono enabled/disabled. L’impostazione predefinita è disabled

Ad esempio, i seguenti comandi abilitano la quarantena e la notifica a root:

config setprop rspamd QuarantineAccount spam@domain.org QuarantineStatus enabled SpamNotificationStatus enabled
signal-event nethserver-mail-quarantine-save

Caselle di posta

Ogni utente ha un propria casella di posta e ogni nome utente nella forma <username>@<domain> è anche un indirizzo email valido a cui inviare messaggi.

La lista delle caselle di posta è visibile nella pagina Email > Caselle di posta. Ci sono tre tipi di caselle di posta: Utenti, Gruppi, Cartelle pubbliche.

Caselle di posta utenti

Il pulsante Modifica consente di disabilitare l”Accesso ai servizi email (IMAP, POP3, SMTP/AUTH) per un utente specifico. I messaggi inviati a questo utente posso essere inoltrati a indirizzi email esterni multipli.

Avvertimento

Se il sistema è collegato a un account provider remoto dove viene rimosso un account utente, la mailbox associata deve essere cancellata manualmente. Il percorso in cui si trova è /var/lib/nethserver/vmail/.

Caselle di posta gruppi

Gli alias automatici per le caselle di posta dei gruppi sono inizialmente disabilitati. Se abilitati, gli indirizzi come <groupname>@<domain> diventano indirizzi email validi. Un certo indirizzo di gruppo può essere disabilitato ed abilitato nuovamente in un momento successivo, una volta che le caselle di posta dei gruppi sono abilitate. Per disabilitare gli alias automatici globalmente fare riferimento a Impostazioni generali.

Una casella di gruppo non occupa spazio disco. Quando un messaggio viene spedito a una casella di gruppo, la copia di esso è consegnata a ciascun membro del gruppo, secondo le individuali preferenze di consegna ed inoltro.

Cartelle di posta pubbliche

Nota

Nel vecchio Server Manager la dicitura Mailbox condivise era impiegata al posto di Cartelle pubbliche.

Le cartelle di posta pubbliche possono essere condivise tra gruppi di utenti. La pagina Email > Caselle di posta > Cartelle pubbliche consente la creazione di una nuova cartella pubblica e la definizione di uno o più gruppi proprietari. Le cartelle pubbliche possono anche essere create da un qualsiasi client IMAP che supporta l’estensione del protocollo IMAP ACL (RFC 4314).

Impostazioni generali

La pagina Email > Caselle di posta [Impostazioni generali] mostra l’elenco dei protocolli disponibili per l’accesso alle caselle di posta degli utenti:

  • IMAP [12] (raccomandato)
  • POP3 [13] (sconsigliato)

Per motivi di sicurezza, di base tutti i protocolli richiedono la connessione cifrata in modalità STARTTLS. Anche se fortemente sconsigliato, è possibile disabilitare la cifratura abilitando l’opzione Consenti connessioni non cifrate. In questo modo le password e i contenuti dei messaggi possono transitare in chiaro nella rete.

Avvertimento

Non consentire le connessioni in chiaro negli ambienti di produzione!

Dalla stessa pagina il Limite quota di una casella di posta può essere impostato ad un valore comune di base. Se alle caselle di posta è applicata una quota, la pagina Email > Caselle di posta riassume l’utilizzo dello spazio disco di ogni utente. Il valore mostrato è aggiornato quando un utente accede alla casella di posta o un nuovo messaggio viene consegnato. La quota può essere personalizzata per un utente particolare mediante Email > Caselle di posta [utente] > Modifica > Quota email personalizzata.

I messaggi marcati come spam (vedi Filtro) possono essere spostati automaticamente nella cartella Junk abilitando l’opzione Sposta lo spam nella cartella «Junk». I messaggi di spam vengono automaticamente rimossi trascorso il periodo Conserva spam per. Tale periodo può essere personalizzato per un utente particolare dal controllo Email > Caselle di posta [Utenti] > Modifica > Eliminazione automatica spam.

L’utente root può impersonare un altro utente, acquisendo pieni diritti sui contenuti della casella di posta e sui permessi delle cartelle di quest’ultimo. L’opzione Root può accedere impersonando un altro utente controlla questa facoltà, conosciuta con il nome di master user in Dovecot [2].

Quando Root può accedere impersonando un altro utente è abilitata, le seguenti credenziali sono accettate dal server IMAP:

  • nome utente al quale sia aggiunto il suffisso *root
  • password di root

Per esempio, per accedere come john con la password di root secr3t, utilizzare le seguenti credenziali:

  • nome utente: john*root
  • password: secr3t

Opzioni aggiuntive:

  • Se le caselle di posta gruppi sono state abilitate in Email > Caselle di posta > Gruppi deselezionare l’opzione Alias automatici per i gruppi per disabilitarli di nuovo.
  • È possibile registrare le azioni IMAP abilitando Registra le azioni IMAP. Vedere inoltre Log.
  • A differenza della quasi totalità dei client IMAP, Outlook non sposta i messaggi eliminati nel cestino, ma si limita a marcarli «cancellati».

    È possibile spostare automaticamente i messaggi nella cartella cestino abilitando Sposta le mail cancellate nel cestino (Outlook).

    Si consiglia quindi di modificare la configurazione di Outlook in modo che nasconda i messaggi eliminati dalla posta in arrivo. La funzione è disponibile nel menu delle opzioni di visualizzazione.

  • Massimo di connessioni per IP cambia il limite di connessioni per utente provenienti dal medesimo indirizzo IP. Questo limite può essere aumentato se messaggi come Maximum number of connections compaiono nei file di log (vedere Log).

Configurazione visti condivisi

Gli utenti possono condividere la propria casella di posta (o parte di essa, cioè specifiche cartelle) con account selezionati del sistema. Chiunque abbia accesso a una casella di posta condivisa può leggerne o eliminarne i messaggi in base alle autorizzazioni concesse dal proprietario.

Il flag IMAP /Seen viene utilizzato per contrassegnare se un messaggio è stato letto o meno. In una casella di posta condivisa, ogni utente ha la propria copia dei messaggi letti, ma a volte un team che condivide una casella di posta potrebbe preferire sapere se un messaggio è già stato letto da qualcun altro. Per abilitare la condivisione del flag Seen per tutte le caselle di posta condivise, utilizzare i seguenti comandi:

config setprop dovecot SharedSeen enabled
signal-event nethserver-mail-server-save

È opportuno sottolineare che la modifica dello stato di SharedSeen ripristina il flag /Seen per tutti gli utenti su tutte le cassette postali.

Le cartelle pubbliche vengono create dall’amministratore e in genere sono visibili a tutti gli utenti (o ai grandi gruppi). Il flag /Seen viene gestito per ciascun utente e non può essere condiviso.

Indirizzi

In aggiunta alle caselle di posta Utenti, Gruppi e Pubbliche, descritte nella sezione precedente, il sistema consente la creazione di un numero illimitato di indirizzi di posta dalla pagina Email > Indirizzi. Ogni indirizzo email è associato con una o più destinazioni. Una destinazione può essere dei seguenti tipi:

  • casella utente
  • casella gruppo
  • cartella pubblica
  • indirizzo email esterno

Un indirizzo email può essere legato a qualsiasi dominio di posta o essere specifico per un certo dominio. Per esempio:

  • Primo dominio: miodominio.it
  • Secondo dominio: esempio.com
  • L’indirizzo email info collegato a qualsiasi dominio: info@mydomain.net, info@example.com
  • L’indirizzo email goofy specifico per un solo dominio: goofy@example.com

A volte le aziende proibiscono l’uso di indirizzi e-mail personali per le comunicazioni dell’organizzazione verso l’esterno. L’opzione Interna (precedentemente Solo reti locali) e i pulsanti Rendi interno e Rendi pubblico impediscono ad un indirizzo di ricevere e-mail dall’esterno. Tuttavia un indirizzo interno può ancora essere utilizzato per scambiare messaggi con gli altri account del sistema.

Connettori

La pagina Email > Connettori è descritta in Connettore POP3.

Sincronizzazione

La pagina Email > Sincronizzazione si basa su uno tool di migrazione IMAP chiamato Imapsync. Lo scopo è migrare i messaggi e-mail da un account IMAP remoto a uno locale.

La migrazione è ricorsiva e incrementale e può essere ripetuta tutte le volte che è necessario. Le e-mail verranno copiate solo se non esistono sul server locale.

L’amministratore di sistema del NethServer locale non necessità di conoscere la password dell’utente locale. Tuttavia, l’amministratore deve conoscere la password dell’account IMAP remoto, a meno che l’autenticazione dell’amministratore IMAP sia implementata anche per il server di posta remoto.

Se anche il server IMAP remoto è un NethServer, l’utente amministratore IMAP è vmail e la sua password può essere ricavata da :file: /var/lib/nethserver/secrets/vmail. Il nome utente con il suffisso *vmail (ad es. nomeutente@dominio.com*vmail) e la password di vmail dovranno essere impostati nel pannello di sincronizzazione IMAP.

Nota

Un elenco di Server IMAP con autenticazione admin è disponibile nella documentazione di Imapsync

Coda

La pagina Email > Coda elenca i messaggi in attesa di essere trasferiti nella coda di posta SMTP. In condizioni normali questa coda dovrebbe essere vuota o contenere al più alcuni messaggi.

Il link Email > Coda [Grafici] > Mostra grafici mostra in tempo reale lo stato della coda di posta degli ultimi minuti, aggiornato finché la pagina viene lasciata aperta. Il grafico mostra il numero dei messaggi nella coda e le dimensioni totali della coda in kilobyte.

Mentre i messaggi sono nella coda, l’amministratore può richiedere un tentativo immediato di spedizione, premendo il pulsante Rispedisci tutti (precedentemente Tenta l’invio), o svuotare completamente la coda mediante il pulsante Elimina tutti.

È anche possibile eseguire su un singolo messaggio in coda Rispedisci o Elimina dai pulsanti azione degli elementi di Email > Coda [Lista].

Relay

La pagina Email > Relay configura come i messaggi sono accettati e instradati dal server SMTP di NethServer ad altri server SMTP.

Politiche SMTP di invio speciali

La configurazione predefinita di NethServer richiede che tutti i client utilizzino la porta submission (587) con cifratura e autenticazione abilitate per inviare messaggi attraverso il server SMTP. Vedere anche Configurazione client.

Per semplificare la configurazione di ambienti preesistenti, la sezione Email > Relay [Configurazione] > Details (precedentemente Email > SMTP access) consente di specificare delle eccezioni ai criteri di accesso SMTP di default.

Avvertimento

Non modificare i criteri di accesso di default in nuove installazioni!

Per esempio, ci sono alcuni dispositivi (stampanti, scanner, …) che non supportano l’autenticazione SMTP, la cifratura o l’uso di porte personalizzate. Questi possono essere abilitati all’invio di messaggi email elencando il loro indirizzo IP nell’area di testo Consenti relay dai seguenti indirizzi IP.

Avvertimento

Gli indirizzi IP elencati sono esclusi da tutti i controlli di filtraggio della posta: utilizzare questa funzione solo come ultima possibile risorsa

In più nella stessa sezione ci sono ulteriori opzioni:

  • L’opzione Consenti relay dalle reti fidate, che abilita la spedizione di messaggi da qualsiasi client connesso dalle reti fidate.

  • L’opzione Abilita autenticazione sulla porta 25, che consente l’autenticazione dei client SMTP e l’invio (relay) di messaggi anche sulla porta 25.

  • Per impostazione predefinita, un client SMTP autenticato non ha particolari restrizioni sull’impostazione dell’indirizzo del mittente SMTP.

    Per evitare l’uso non autorizzato degli indirizzi e-mail e lo spoofing dell’indirizzo del mittente, abilitare l’opzione Forza corrispondenza mittente/login.

    Se abilitata, solo gli indirizzi associati al login SMTP corrente sono consentiti.

HELO personalizzato

Il primo passo di una sessione SMTP è lo scambio del comando HELO (o EHLO). Tale comando richiede come parametro il nome del server completo di dominio valido (RFC 1123).

NethServer ed altri server di posta, nel tentativo di ridurre lo spam, non accettano HELO con domini non registrati nel DNS pubblico.

Quando comunica con un altro server di posta, NethServer utilizza il nome host completo di dominio (FQDN) come valore per il comando HELO. Se questo non è registrato nel DNS pubblico, tale valore può essere cambiato nel campo di testo HELO personalizzato.

Tale configurazione è utilizzabile anche quando non si è proprio in possesso di un dominio registrato, in questo caso è possibile registrare gratuitamente un DNS dinamico, associarlo all’IP pubblico del server ed utilizzare questo dominio come parametro HeloHost del precedente comando.

Relay host

La pagina Email > Relay consente di descrivere la rotta di un messaggio e-mail spedendolo attraverso un relay host esterno specificando porta, autenticazione e impostazioni TLS.

Creare una descrizione dell’host di inoltro sotto Email > Relay > Crea relay host.

Il relay host è identificato dall’indirizzo del mittente SMTP. È possibile abbinare l’indirizzo completo del mittente o solo il suo dominio.

Impostazioni del relay host di default

Se l’indirizzo del mittente non corrisponde ad alcuna delle regole di relay descritte nella sezione precedente è possibile (anche se non raccomandato) configurare un relay host di default invece di basarsi sulle regole di relay dello standard SMTP.

Nota

Spedire tramite uno smarthost è in genere sconsigliato, a meno che il server non sia temporaneamente in una blacklist [14], o il traffico SMTP sia bloccato dall’ISP.

La sezione Sistema > Impostazioni > Smart host consente di affidare l’invio di tutti i messaggi in uscita ad uno speciale server SMTP, tecnicamente denominato smarthost. Uno smarthost consente l’inoltro dei messaggi se sono verificate determinate condizioni. È possibile che verifichi:

  • l’indirizzo IP del client
  • le credenziali SMTP AUTH del client

Fare riferimento anche a Smart host per maggiori informazioni.

Impostazioni

Dalla pagina Email > Impostazioni, il controllo Dimensione massima messaggio (precedentemente Accetta messaggi fino a) imposta la dimensione massima dei messaggi che attraversano il sistema. Se questo limite è superato, un messaggio non entra affatto nel sistema e viene rifiutato.

Quando un messaggio entra in NethServer, viene registrato nella coda messaggi, in attesa di essere consegnato o inoltrato altrove (relay). Quando NethServer inoltra un messaggio ad un server remoto, possono verificarsi degli errori. Per esempio:

  • la connessione di rete fallisce, oppure
  • l’altro server è spento, o è in sovraccarico

Questi ed altri errori sono temporanei: in questi casi, NethServer tenta di riconnettersi all’host remoto ad intervalli regolari, finché viene raggiunto un limite. Il controllo Ritenta l’invio per (precedentemente Tenta l’invio per) cambia questo limite. Di default è impostato a 4 giorni.

L’opzione Inoltra una copia di tutti i messaggi (precedentemente Spedisci sempre una copia (Bcc)) abilita la copia nascosta di qualsiasi messaggio attraversi il server di posta. Questa funzionalità è differente dall’opzione simile nella scheda Email > Domain perché non fa differenza tra i domini di posta e in più cattura i messaggi in uscita.

Avvertimento

In alcuni paesi abilitare l’opzione Inoltra una copia di tutti i messaggi può essere contro le leggi sulla privacy.

Log

Ogni operazione eseguita dal server di posta è trascritta nei seguenti file di log:

  • /var/log/maillog: contiene tutte le operazioni di invio e consegna
  • /var/log/imap: contiene tutte le azioni di login/logout alle caselle di posta e in più le azioni IMAP, se abilitate secondo Impostazioni generali.

Un transazione registrata nel file maillog di solito coinvolge diversi componenti del server di posta. Ogni riga contiene rispettivamente

  • la data e l’ora
  • il nome host
  • il nome del componente e l’id del processo dell’istanza
  • il testo che descrive l’operazione

La configurazione di NethServer utilizza Rspamd come milter. Esegue un proxy worker Rspamd in modalità «self-scan» [19].

La chiave per tracciare l’intera transazione SMTP, incluse le decisioni di Rspamd, è l’intestazione ID messaggio o il Postfix Queue ID (QID). Entrambi sono disponibili nel sorgente del messaggio. L’intestazione Message-ID è generata dal mittente, mentre il QID è assegnato dal MTA ricevente. Per esempio

Received: from my.example.com (my.example.com [10.154.200.17])
      by mail.mynethserver.org (Postfix) with ESMTP id A785B308622AB
      for <jsmith@example.com>; Tue, 15 May 2018 02:05:02 +0200 (CEST)
...
Message-ID: <5afa242e.hP5p/mry+fTNNjms%no-reply@example.com>
User-Agent: Heirloom mailx 12.5 7/5/10

Qui A785B308622AB e il QID, mentre 5afa242e.hP5p/mry+fTNNjms%no-reply@example.com è il ID del messagio.

Entrambe le stringhe possono essere usate con il comando grep per trovare righe di log rilevanti in /var/log/maillog* (notare il «*» finale per cercare anche nei file di log archiviati). Per esempio

grep -F 'A785B308622AB' /var/log/maillog*

Resa

/var/log/maillog:May 15 02:05:02 mail postfix/smtpd[25846]: A785B308622AB: client=my.example.com[10.154.200.17]
/var/log/maillog:May 15 02:05:02 mail postfix/cleanup[25849]: A785B308622AB: message-id=<5afa242e.hP5p/mry+fTNNjms%no-reply@example.com>
/var/log/maillog:May 15 02:05:02 mail rspamd[27538]: <8ae27d>; proxy; rspamd_message_parse: loaded message; id: <5afa242e.hP5p/mry+fTNNjms%no-reply@example.com>; queue-id: <A785B308622AB>; size: 2348; checksum: <b1035f4fb07162ba88053d9e38df9c93>
/var/log/maillog:May 15 02:05:03 mail rspamd[27538]: <8ae27d>; proxy; rspamd_task_write_log: id: <5afa242e.hP5p/mry+fTNNjms%no-reply@example.com>, qid: <A785B308622AB>, ip: 10.154.200.17, from: <no-reply@example.com>, (default: F (no action): [-0.64/20.00] [BAYES_HAM(-3.00){100.00%;},AUTH_NA(1.00){},MID_CONTAINS_FROM(1.00){},MX_INVALID(0.50){},MIME_GOOD(-0.10){text/plain;},IP_SCORE(-0.04){ip: (0.22), ipnet: 10.154.192.0/20(0.18), asn: 14061(0.23), country: US(-0.81);},ASN(0.00){asn:14061, ipnet:10.154.192.0/20, country:US;},DMARC_NA(0.00){example.com;},FROM_EQ_ENVFROM(0.00){},FROM_NO_DN(0.00){},NEURAL_HAM(-0.00){-0.656;0;},RCPT_COUNT_ONE(0.00){1;},RCVD_COUNT_TWO(0.00){2;},RCVD_NO_TLS_LAST(0.00){},R_DKIM_NA(0.00){},R_SPF_NA(0.00){},TO_DN_NONE(0.00){},TO_DOM_EQ_FROM_DOM(0.00){},TO_MATCH_ENVRCPT_ALL(0.00){}]), len: 2348, time: 750.636ms real, 5.680ms virtual, dns req: 47, digest: <b1035f4fb07162ba88053d9e38df9c93>, rcpts: <jsmith@example.com>, mime_rcpts: <jsmith@example.com>
/var/log/maillog:May 15 02:05:03 mail postfix/qmgr[27757]: A785B308622AB: from=<no-reply@example.com>, size=2597, nrcpt=1 (queue active)
/var/log/maillog:May 15 02:05:03 mail postfix/lmtp[25854]: A785B308622AB: to=<vmail+jsmith@mail.mynethserver.org>, orig_to=<jsmith@example.com>, relay=mail.mynethserver.org[/var/run/dovecot/lmtp], delay=0.82, delays=0.8/0.01/0.01/0.01, dsn=2.0.0, status=sent (250 2.0.0 <vmail+jsmith@mail.mynethserver.org> gK8pHS8k+lr/ZAAAJc5BcA Saved)
/var/log/maillog:May 15 02:05:03 mail postfix/qmgr[27757]: A785B308622AB: removed

Configurazione client

NethServer supporta client per la posta elettronica aderenti agli standard che utilizzano le seguenti porte IANA:

  • imap/143
  • pop3/110
  • smtp/587
  • sieve/4190

L’autenticazione richiede la cifratura in modalità STARTTLS e supporta le seguenti varianti:

  • LOGIN
  • PLAIN
  • GSSAPI (solo se NethServer è collegato con Samba/Microsoft Active Directory)

Inoltre le seguenti porte SSL sono disponibili per software datato che ancora non supporta STARTTLS:

  • imaps/993
  • pop3s/995
  • smtps/465

Avvertimento

La porta SMTP standard 25 è riservata ai trasferimenti di posta tra server MTA. I client di posta (MUA) devono utilizzare la porta submission per l’invio.

Riferimenti

[1]Postfix mail server http://www.postfix.org/
[2](1, 2) (1, 2) Dovecot Secure IMAP server http://www.dovecot.org/
[3]Sieve mail filtering language https://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)
[4](1, 2, 3) Rspamd: sistema di filtraggio di spam veloce, gratuito e open source. https://rspamd.com/
[5]Posta elettronica, https://it.wikipedia.org/wiki/Posta_elettronica
[6]Il record DNS MX, https://it.wikipedia.org/wiki/MX_record
[7]SMTP, https://it.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol
[8](1, 2) Domain Keys Identified Mail (DKIM) è un metodo di autenticazione e-mail progettato per rilevare lo spoofing delle e-mail – Wikipedia <https://en.wikipedia.org/wiki/DomainKeys_Identified_Mail> _
[9]The Maildir format, https://en.wikipedia.org/wiki/Maildir
[10]alterMIME è un piccolo programma che viene utilizzato per modificare il tuo mailpack con codifica mime – https://pldaniels.com/altermime/
[11]The Markdown plain text formatting syntax, https://en.wikipedia.org/wiki/Markdown
[12]IMAP https://it.wikipedia.org/wiki/Internet_Message_Access_Protocol
[13]POP3 https://it.wikipedia.org/wiki/Post_Office_Protocol
[14](1, 2) DNSBL https://it.wikipedia.org/wiki/DNSBL
[15]SPAM https://it.wikipedia.org/wiki/Spam
[16]Il greylisting è un metodo per proteggere gli utenti e-mail dallo spam. Un agente di trasferimento posta (MTA) che utilizza il greylisting «temporarily reject» qualsiasi e-mail da un mittente che non riconosce –Wikipedia
[17]Filtro bayesiano https://it.wikipedia.org/wiki/Filtro_bayesiano
[18]The wondrous Ways of an Email https://workaround.org/ispmail/wheezybig-picture/
[19]https://rspamd.com/doc/workers/rspamd_proxy.html