• User

    record spf e Ip dinamico possono coesistere?

    Ciao,
    un chiarimento:
    utilizzare delle restrizioni con un record spf è una buona pratica per proteggere un indirizzo email,
    ma volendo autorizzare un utente ad usarlo da una postazione che utilizza in uscita l'smtp di alice adsl flat (retail.telecomitalia) mi ritrovo con un ip dinamico e quindi non so come autorizzare.
    Pur sapendo che come protezione non servirebbe più a molto, vorrei evitare di far generare errore, per poter utilizzare la regola piu restrittiva -all

    potrebbe essere qualcosa del genere:
    v=spf1 ip4x.xx.xx.xx include:retail.telecomitalia.it ~all

    e telecom dal suo lato come è messa?


  • User Attivo

    Usare l'SPF su IP dinamici sarebbe un controsenso.

    Nel record SPF devi dichiarare gli IP di telecom italia, perchè saranno loro a consegnare il messaggio.
    L'IP dell'adsl del cliente non c'entra nulla.

    Se il server di telecom ti rifiuta l'email controllando l'SPF allora c'è qualcosa che non va in quanto gli MSA (mail submission agent) ovvero i server che si usano per SPEDIRE la posta non dovrebbero mai fare controlli di SPF. Sono i server che RICEVONO la posta che possono controllare i record SPF e non controlleranno l'IP dinamico ma l'IP del server che gli sta scrivendo, ovvero quello uscente dell'smtp di telecom (che non è dinamico, anche se preso da un pool di IP).

    Forse il tuo problema è che l'IP con il quale escono le email da retail.telecomitalia.it non è solo quello associato a quell'host ma sono molti di più, ma non sono quelli dell'ADSL.

    Prova a controllare meglio gli errori che ottieni e vedrai che è così.

    Inoltre non vedo grossi motivi per usare un "-all" invece del "~all" a meno che non sia una banca o ente molto sottoposto a spoofing: considera che il -all farà scatenare falsi positivi ogni qual volta avviene una redirezione di posta (cosa non frequente ma che comunque capita nella gestione ordinaria della posta).


  • User

    Grazie per i chiarimenti, la regola piu restrittiva non la userò,in effetti ho capito che la posta viene consegnata dallo smarthost di telecom, quindi da un set di ip loro. Non ho una risposta di errore, ma neutra (nè autorizzato nè no) , per avere un ok come dovrei impostare il record, come posso sapere gli ip dell'smtp di alice.it?


  • User Attivo

    host -t txt aliceadsl.it

    aliceadsl.it descriptive text "v=spf1 redirect=_spf.telecomitalia.it"

    host -t txt _spf.telecomitalia.it

    _spf.telecomitalia.it descriptive text "v=spf1 ip4:156.54.232.99 ip4:156.54.232.100 ip4:217.169.121.4 ip4:217.169.121.5 ip4:156.54.233.200 ip4:156.54.233.201 ip4:217.169.121.20 ip4:217.169.121.21 ip4:217.169.121.6 ip4:217.169.121.25 ip4:217.169.121.18 -all"

    Probabilmente sono gli stessi IP per i quali Telecom dichiara che possono partire le email @aliceadsl.it, per esempio.
    Quindi io farei un semplice "v=spf1 redirect=_spf.telecomitalia.it", oppure se hai altri IP da aggiungere usi l'include al posto del redirect.


  • User

    Si, ho da mettere gli Ip del mio Host e un paio di include che già uso,grazie mille per l'aiuto, faccio un test l'include deve essere con l'underscore:include:_spf.telecomitalia.it ?


  • User Attivo

    sì. Ricordati che a differenza del redirect, l'include usa i ":" e che dopo l'include devi comunque mettere il fallback (~all) che invece con il redirect non ci va.
    e.g:
    "v=spf1 ip4:X.Y.Z.W include:_spf.telecomitalia.it ~all"


  • User

    Ok,
    ma una cosa non mi è chiara:
    Io invio una mail da casa e alice di telecom mi autentica come utenteATalice.it sul suo smarthost che consegna la posta,
    ma io invio la mail da utenteATmiodominio.it
    io inserisco il record spf nel dns del mio dominio, autorizzo lo smarthost di telecom, tra gli altri, ma lui riconosce nelle sue regole spf il miodominio?

    Questo è il responso che ho da Gmail:

    Delivered-To: xxxxxATgmail.com Received: by 10.180.101.0 with SMTP id fc8csp1602....; Wed, 27 Feb 2013 04:47:52 -0800 (PST) X-Received: by 10.194.10.100 with SMTP id k10mr3602150wjb.53.13.........6; Wed, 27 Feb 2013 04:47:52 -0800 (PST) Return-Path: <xxxxxATmiodominio.it> Received: from smtp203.alice.it (smtp203.alice.it. [82.57.200.99]) by mx.google.com with ESMTP id eb9s.........wib.115.2013.02.27.04.47.51; Wed, 27 Feb 2013 04:47:51 -0800 (PST) Received-SPF: neutral (google.com: 82.57.200.88 is neither permitted nor denied by best guess record for domain of fabioATmiodominio.it) client-ip=82.57.200.88; Authentication-Results: mx.google.com; spf=neutral (google.com: 82.57.200.88 is neither permitted nor denied by best guess record for domain of fabioATmiodominio.it) smtp.mail=fabioATmiodominio.it Received: from [192.168.0.101] (79.49.200.186) by smtp203.alice.it (8.6.060.15) (authenticated as utenteATalice.it) id 5123A597007ED2C5 for xxxxxATgmail.com; Wed, 27 Feb 2013 13:47:51 +0100


  • User Attivo

    spf=neutral (google.com: 82.57.200.88 is neither permitted nor denied by best guess record for domain of fabioATmiodominio.it)
    non capisco perchè 82.57.200.88 e non 82.57.200.99 che invece sembra essere l'IP del server che spedisce.

    Comunque lui controlla il dominio "miodominio.it" : considerando che parla di "best guess" significa che non ha trovato un record SPF su quel dominio.


  • User

    scusa, ho cambiato io un pò di numeri nella trascrizione...!
    cmq l'spf c'è, ho nell'include Amazon e funziona, però su amazon ho verificato il mio indirizzo... grazie per avermi seguito fin qui. Il problema è che il mio host condiviso non mi permettere di usare il suo smtp da casa, e allora uso quello di alice, e non vorrei per questo perdere qualche mail per strada


  • User Attivo

    Basta che aggiungi all'SPF del tuo dominio anche l'include di telecomitalia che dicevamo prima. (non so cosa intendi con Amazon e le verifiche di amazon: amazon spedisce email per tuo conto? O usi amazon SES?)


  • User

    Si, sto provando SES con un applicazione lato web che gira su Ec2,
    cmq l'include di telecom l'ho già inserito sul dns del mio dominio, ma la risposta è quella che ti ho postato...:?


  • User Attivo

    Se riporti i domini reali e gli IP reali posso fare qualche verifica in più, altrimenti è impossibile.
    Sei sicuro che il DNS sia propagato correttamente?

    Al limite puoi provare con www.kitterman.com/spf/validate.html : l'ultimo form ti permette di simulare un check SPF dicendo l'IP da verificare e il dominio da verificare.


  • User

    il dns l'ho fatto solo oggi, ma di solito ci mette poco, è su natan.it

    1virgola618puntoit,

    ip 217 73 226 135

    smtp. . . . 151


  • User Attivo

    Mancano gli spazi nei tuoi record! Verificali con un qualunque validatore e te lo dirà.
    Così come sono ora è come se tu non avessi un record SPF.


  • User

    mhm... sul validatore escono così...
    però i due include che ho già messo funzionano, google mi da 'pass', e anche il check di Ses mi dà ok.
    Nel dns sul mio host, centos con plesk, non ho il campo spf, li devo mettere come txt. Allora, letto da qualche parte, ho messo il record tra virgolette doppie "record".
    Tra l'altro ho anche la firma dkim, che andrebbe inserita come CNAME, ma plesk non permette l'underscore(problema noto), allora ho messo anche questa in un campo txt del dns e google me la passa....
    Che non sia quello giusto, l'spf per telecom?
    nell'header mi da smtp(cifre).alice.it


  • User Attivo

    Girala come vuoi. Se google te la passa o meno non ti so dire, se il validatore Ses la passa o meno non so (mi sembra strano in entrambi i casi, ma poco importa), però il modo in cui il tuo DNS risponde è questo:

    host -t txt tuodominio

    tuodominio descriptive text "" "spf2.0/pra" "ip4:XXX.XXX.XXX.XXX" "ip4:XXX.XXX.XXX.XXX" "ip4:XXX.XXX.XXX.XXX" "ip4:XXX.XXX.XXX.XXX" "ip4:XXX.XXX.XXX.XXX" "include:spf.mailjet.com" "include:amazonses.com" "include:_spf.telecomitalia.it" "~all" ""
    tuodominio descriptive text "" "v=spf1" "ip4:XXX.XXX.XXX.XXX" "ip4:XXX.XXX.XXX.XXX" "ip4:XXX.XXX.XXX.XXX" "ip4:XXX.XXX.XXX.XXX" "ip4:XXX.XXX.XXX.XXX" "include:spf.mailjet.com" "include:amazonses.com" "include:_spf.telecomitalia.it" "~all" ""

    In presenza di stringhe multiple queste vengono concatenate e vedi che alla fine non escono gli spazi tra una e l'altra.
    Devi mettere delle spaziature in più.


  • User

    Oh Bago, tu hai ragione, ma io l'spf l'ho messo in un unica stringa...
    Ora ho tolto le virgolette
    gli spazi ci sono, non so altrimenti come metterli, in tag html?


  • User Attivo

    Quello che ha adesso dns.natan.it è corretto (solo i v=spf1, invece l'spf2 è ancora sbagliato).
    dns2.natan.it ha ancora un record sbagliato.

    Hai dei TTL di 86400 secondi, quindi intanto sistema entrambi i record su entrambi i server, poi aspetta almeno 1 giorno che si sia propagato tutto.


  • User

    Ok, le virgolette non ci andavano.
    Domani riprovo a mandare una mail da casa e vediamo come va.
    Grazie per la pazienza.


  • User

    Niente da fare,
    le mail vengono consegnate da smtpxxx-alice.it,
    l'ip è in questo range: 82.57.200.0-254 (dove ci sono anche host-123-200-static .xxxx.alice.it., ecc + altri server) perchè il mio server in uscita da casa è out.alice.it
    devo autorizzare questi IP? (ip4:82.57.200.0/24 e non ci penso piu...)

    Vorrei capire meglio,
    ti posto gli header, mail inviata dal mio dominio e da una gmail:
    però per capire meglio,
    se invio ad una gmail da fabioATmiodominio.it (dal mio pc con alice e server in uscita smtp alice) vedo questo:
    RECEIVED from smtp203.alice.it (smtp203.alice.it. 82.57.200.99]) by mx.google.com with ESMTP id o2si5164648wie.120.2013.03.01.01.44.52; Fri, 01 Mar 2013 01:44:52 -0800 (PST)
    RECEIVED from [192.168.0.101] (79.16.57.151) by smtp203.alice.it (8.6.060.15) (authenticated as xxxATalice.it) id 5123A59700A2026B for fxxxATgmail,com; Fri, 1 Mar 2013 10:44:51 +0100
    SPF: softfail (google.com: domain of transitioning fabioAT1virgola618.it does not designate 82.57.200.99 as permitted sender) client-ip=82.57.200.99;

    Se invio ad una gmail da fabioATgmail.com (dal mio pc con alice e server in uscita smtp di google) vedo questo:
    RECEIVED from mail-ee0-f45.google.com (mail-ee0-f45.google.com 74.125.83.45]) by mx.google.com with ESMTPS id 4si17580427eee.153.2013.03.01.01.36.55 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 01 Mar 2013 01:36:55 -0800 (PST)
    RECEIVED from [192.168.0.101] (host151-57-dynamic.16-79-r.retail.telecomitalia.it. [79.16.57.151]) by mx.google.com with ESMTPS id t4sm16199568eel.0.2013.03.01.01.36.54 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 01 Mar 2013 01:36:54 -0800 (PST)
    SPF: pass (google.com: domain of fabio.morronaATgmail.com designates 74.125.83.45 as permitted sender) client-ip=74.125.83.45;