[Soci SLIP] FIltri antispam e come funziona l'email [Era: imparare ad usare la tastiera]

Lucio Crusca lucio a sulweb.org
Sab 4 Feb 2012 08:41:03 CET


In data venerdì 3 febbraio 2012 21:14:14, llcfree ha scritto:
> Guardate il subject di questo email, come mai comincia con {Spam?:####}
> {Spam?:####}. Io l'ho ricevuto cosi', chi ce l'ha messo?

Dalle intestazioni del messaggio sembra che sia un filtro antispam in Progetto 
Archivio:

X-PMX-Version: 5.6.0.2009776, Antispam-Engine: 2.7.2.376379,
         Antispam-Data: 2012.2.3.193024
 X-PMX-Owner: Progetto Archivio SRL
 X-PerlMx-Spam: Gauge=XXXXXXXXIIIII, Probability=85%, Report='
  SXL_IP_PROXY 8, TO_IN_SUBJECT 0.5, BODYTEXTP_SIZE_3000_LESS 0, 
BODY_SIZE_1000_LESS 0, BODY_SIZE_2000_LESS 0, BODY_SIZE_5000_LESS 0, 
BODY_SIZE_7000_LESS 0, BODY_SIZE_900_999 0, __ANY_URI 0, __CP_URI_IN_BODY 0, 
__CT 0, __CTE 0, __CT_TEXT_PLAIN 0, __HAS_LIST_HEADER 0, __HAS_LIST_HELP 0, 
__HAS_LIST_SUBSCRIBE 0, __HAS_LIST_UNSUBSCRIBE 0, __HAS_MSGID 0, 
__MIME_TEXT_ONLY 0, __MIME_VERSION 0, __SANE_MSGID 0, __SUBJ_ALPHA_END 0, 
__TO_MALFORMED_2 0, __TO_NO_NAME 0, __URI_NO_WWW 0, __URI_NS , __USER_AGENT 0'

Il motivo è il criterio SXL_IP_PROXY che assegna a questo messaggio 8 punti di 
spam (normalmente ne bastano 3 o meno per classificare un messaggio come spam). 
Da google si vede che "SXL" sta per "Sophos eXtensible List" e qui

http://www.sophos.com/en-us/why-sophos/innovative-technology/sxl-anti-
spam.aspx

ovvero qui (stesso indirizzo, ma corto e non va a capo):

http://ln-s.net/9air

c'è la pagina che spiega (piuttosto vagamente) di che si tratta. Dato il resto 
del nome della variabile, ad occhio sembra un problema con un proxy e questo 
mi suggerisce che la porta 587 citata da Eros potrebbe essere la causa, ma 
anche che il filtro antispam stia sbagliando (perché usare la porta 587 invece 
della 25, quando possibile, sarebbe la cosa migliore).

@Eros: puoi provare a spedire un altro messaggio usando la porta 587 in 
uscita?

Segue background tecnologico su come funziona l'emai. È un po' lungo ma spero 
che sia capibile dai non tecnici interessati a saperne qualcosa in più:

I server di posta elettronica sono storicamente in ascolto sulla porta 25. 

Dettaglio: "porta" è una traduzione storpiata della parola inglese "port", che 
in realtà si tradurrebbe "trasporto", inteso in informatica come "canale di 
comunicazione". Solo che "porta" è entrato talmente tanto nel gergo 
informatico italiano che ormai non si fa più nessun tentativo di tradurre 
correttamente il termine inglese. In generale però quando sentite dire 
"contatta un computer sulla porta 25" dovete intendere "contatta un computer 
sul canale 25", che è un concetto più vicino agli utenti non tecnici 
(soprattutto ai radioamatori) e quindi più facile da capire. Ciò detto, 
torniamo a come funziona l'invio delle email.

Quando il nostro pc invia un'email, contatta un server di posta elettronica, 
noto come server SMTP, sulla porta 25. Questo server di posta tipicamente è un 
computer che si trova presso il provider internet, ovvero Telecom, Tiscali, 
Fastweb o chi per loro. Questa è la fase di "submission" del messaggio.

Il destinatario dell'email tipicamente avrà la posta elettronica presso un 
provider diverso (non è detto, ma in generale è necessario che tutto funzioni 
anche fra provider diversi). Il server di posta del nostro provider quindi 
deve contattare il server di posta del provider internet del destinatario. Lo 
farà di nuovo sulla porta 25. Questa è la fase di "delivery", ovvero consegna, 
del messaggio.

Il destinatario poi periodicamente controlla la posta ricevuta ed il suo pc 
contatta il server del suo provider, che gli trasferisce i messaggi ricevuti. 
Questa è la fase di scaricamento dei messaggi.

Quello che mi interessa evidenziare qui è che la fase di "submission" e quella 
di "delivery" utilizzano la stessa porta, la 25, ovvero lo stesso canale di 
comunicazione. Per ragioni di semplicità, su una stessa porta i computer 
parlano sempre la stessa lingua, ovvero lo stesso "protocollo di 
comunicazione". 

Tuttavia la fase di delivery richiede azioni diverse da quella di submission. 
Pensatela come fossero uffici postali. Quando faccio la submission (cioè quando 
vado all'ufficio postale per spedire qualcosa) devo pagare. Quando l'ufficio 
postale consegna il mio pacco all'ufficio postale del destinatario, invece, non 
deve pagare, lo consegna e basta.

La stessa differenza c'è a livello informatico: quando il mio pc invia un 
messaggio al mio provider per la consegna, deve dimostrare di aver pagato un 
servizio o comunque di avere qualche forma di contratto con il provider e di 
essere quindi autorizzato ad usarlo per inviare email. Questa è detta 
autenticazione, ed avviene fornendo al nostro pc il nome utente e la password 
(di posta elettronica) che deve usare per farsi riconoscere dal provider.

Quando il server del nostro provider consegna la posta al server del provider 
del destinatario invece non deve dimostrare nulla, perché la posta è destinata 
a quel server, non deve andare altrove e quindi il server del destinatario non 
fornisce un servizio da pagare, ma semplicemente riceve quanto destinato ad 
esso stesso.

Purtroppo però, usando sempre la porta 25, in un caso il dialogo fra i due 
computer include l'autenticazione dell'utente, nell'altro no. Un po' come dire 
che in un caso parlano una lingua, nell'altro una lingua un po' diversa, quasi 
come se fosse un dialetto.

Molti provider, per evitare abusi del servizio offerto, preferiscono quindi 
usare una porta diversa per la fase di sumission, ovvero una porta dove la 
lingua parlata prevede obbligatoriamente l'autenticazione dell'utente. Sulla 
porta 25 le politiche di sicurezza del provider richiedono comunque che 
l'utente si autentichi, ma la lingua parlata permetterebbe anche una 
comunicazione non autenticata, essendo lo stesso protocollo usato per la fase 
di delivery. Ecco il motivo della porta 587, da preferire alla porta 25: sulla 
587 l'autenticazione può essere imposta a livello di protocollo di 
comunicazione, mentre sulla 25 è necessario accettare connessioni non 
autenticate e poi eventualmente scartarle, il che aumenta il traffico di rete ed 
il carico del server in caso di tentativi di abusi.

In tutto questo ho il sospetto (da verificare) che il provider di Eros fornisca 
il servizio email anche sulla porta 587, ma che poi rediriga il tutto ad un 
server classico sulla porta 25, usandolo come "proxy" (ovvero come tramite) 
per consegnare veramente la posta al destinatario. Forse è questo che fa 
arrabbiare il filtro antispam di Sophos.








Maggiori informazioni sulla lista Soci