[Aktualizacja 2017-05-14] Poprawioan reguła. paczka.paczkomaty.pl nie ma SPFa
Zwrócono mi uwagę w komentarzach do wpisu o Spfie i DKIM ,że reguła może nie działać (poniżej reguła)
header __ZABOJCASPAMU_SPF_REQ_1 From:addr=~/(dhl\.com|dhl\.pl|poczta\-polska\.pl|inpost\.pl|paczkomaty\.pl)/ meta ZABOJCASPAMU_SPF_REQ __ZABOJCASPAMU_SPF_REQ_1 && ! SPF_PASS describe ZABOJCASPAMU_SPF_REQ Wymagane SPF dla domen score ZABOJCASPAMU_SPF_REQ 5
gdzie twki błąd? Ano w tym miejscu, że reguła sprawdza czy pole From zawiera dhl.com (zawiera) a potem sprawdza czy przeszedł test SPF. Tylko nie sprawdza jakiej domeny! Jeśli wysyłająca domena również ma SPFa to wtedy test przejdzie. W przypadku reguły o DKIM nie ma tego problemu ponieważ sprawdzane są dokładniej domeny.
Jakie jest rozwiązanie. Należy sprawdzać jakich domen dotyczy SPF. Czyli cała reguła wygląda następująco:
header __ZABOJCASPAMU_SPF_REQ_2_1 From:addr=~/(dhl\.com|dhl\.pl|poczta\-polska\.pl|inpost\.pl|\@paczkomaty\.pl)/ header __ZABOJCASPAMU_SPF_REQ_2_2 ALL=~/(spf|SPF)(=|:)(p|P)ass.+\@(dhl\.com|dhl\.pl|poczta\-polska\.pl|inpost\.pl|paczkomaty\.pl) / meta ZABOJCASPAMU_SPF_REQ_2 __ZABOJCASPAMU_SPF_REQ_2_1 &&! __ZABOJCASPAMU_SPF_REQ_2_2 describe ZABOJCASPAMU_SPF_REQ_2 Wymagane SPF dla domen score ZABOJCASPAMU_SPF_REQ_2 5
No i teraz jest dobrze…. Nie do końca:) Reguła ma dalej mały błąd/niedociągnięcie i można ja obejść. W komentarzach piszczcie o co chodzi. Nagrodą jest wieczna chwała:).
W pliku z regułami jest poprawna reguła.
[Aktulizacja] I w komentarzach WujStefan napisał jaki był bład i otrzymuje Wieczną Chwałę. Reguła poprawione
Błąd zasadniczy to niemożliwość spełnienia warunków dla ZABOJCASPAMU_SPF_REQ_2 (brak __ZABOJCASPAMU_SPF_REQ_2_1 – na jednej pozycji brakuje _1). Ale nawet zmiana tego czy zastosowanie reguły z pliku (też do poprawienia) nie działa.
Mogę się mylić, ale wydaje mi się że poniższy wpis nie łapie się na __ZABOJCASPAMU_SPF_REQ_2_2.
Received-SPF: pass (domenaNadawcy.pl: xx.xx.xx.xx is authorized to use ‚SRS0+kGOT=NU=inpost.pl=test@domenaNadawcy.pl’ in ‚mfrom’ identity (mechanism ‚ip4:xx.xx.xx.xx’ matched)) receiver=smtp.domenaDocelowa.pl; identity=mailfrom; envelope-from=”SRS0+kGOT=NU=inpost.pl=test@domenaNadawcy.pl”; helo=domenaNadawcy.pl; client-ip=xx.xx.xx.xx
Pisząc domenaNadawcy.pl miałem na myśli nazwę serwera na którym utworzyłem sobie domenę inpost.pl.
1. jasne . To lierówka i nie wiem jak to sie stało. dzieki za info, poprawione.
2. Dokladnie o to chodizlo:) Tam powinna by cspacja na końcu bo można zrobić tak jak Ty napisałes. Wygrales wieczna chwałe:)
Bardziej mi chodziło o to że mój mail nie miał w „Authentication-Results” ciągu „spf=pass” (został nadpisany przez „dmarc”?). Posiadał za to „Received-SPF” (1 komentarz), ale był on oszukany przez Sender Rewriting Scheme.
Chyba jestem za cienki w tych regułkach, albo za bardzo kombinuję :-/
Próbuję napisać dla „header __ZABOJCASPAMU_SPF_REQ_2_2″ odpowiednią regułkę, ale nie działa … tzn nie daje tych 5 punktów. U mnie to wygląda tak dla prawidłowego maila:
Received-SPF: pass (paczkomaty.pl: 178.217.138.5 is authorized to use ‚info@paczkomaty.pl’ in ‚mfrom’ identity (mechanism ‚ip4:178.217.138.5’ matched)) receiver=smtp.xxxxxx.pl; identity=mailfrom; envelope-from=”info@paczkomaty.pl”; helo=paczka.paczkomaty.pl; client-ip=178.217.138.5
tak na szybko to bedzie cos w ten desen:
eader __ZABOJCASPAMU_SPF_REQ_2_2 Received-SPF=~/pass \(paczkomaty.pl\:/
No właśnie w ten deseń to robiłem i nie działało. Dopiero potem mnie oświeciło.
Przecież my mamy sprawdzać:
– czy adres FROM zawiera domeny kurierów (__ZABOJCASPAMU_SPF_REQ_2_1)
– czy spf NIE zwraca wyniku „pass” domen kurierskich (__ZABOJCASPAMU_SPF_REQ_2_2)
Czyli dla „meta” drugi warunek powinien być z negacją.
W moim przypadku cała regułka wygląda tak:
header __ZABOJCASPAMU_SPF_REQ_2_1 From:addr=~/(dhl\.com|dhl\.pl|poczta\-polska\.pl|inpost\.pl|paczkomaty\.pl)/
header __ZABOJCASPAMU_SPF_REQ_2_2 Received-SPF=~/pass \((dhl\.com\:|dhl\.pl\:|poczta\-polska\.pl\:|inpost\.pl\:|paczkomaty\.pl\:)/
meta ZABOJCASPAMU_SPF_REQ_2 __ZABOJCASPAMU_SPF_REQ_2_1 && ! __ZABOJCASPAMU_SPF_REQ_2_2
describe ZABOJCASPAMU_SPF_REQ_2 Wymagane SPF dla domen
score ZABOJCASPAMU_SPF_REQ_2 5
Tak właśnie jest jak człowiek nie sprawdzi… Nie sprawdziłem tego i taka wtopa. oczywiscie masz rację. Moja wina wielka jest. Poprawiłem wszędzie.
W Spamassasin regóły jest błąd, bo jest:
describe ZABOJCASPAMU_SPF_REQ_2Wymagane SPF dla domen
score ZABOJCASPAMU_SPF_REQ _2 5
a powinno być chyba:
describe ZABOJCASPAMU_SPF_REQ_2 Wymagane SPF dla domen
score ZABOJCASPAMU_SPF_REQ_2 5
czyli spacja przed Wymagane, a brak spacji poniżej przed _2 5
dzieki za info. Wczesniej nim przeytałem komentarz sam zauważyłem
W pliku reguł nadal jest literówka, ostatnia linijka to:
score ZABOJCASPAMU_SPF_REQ _2 5 (spacja przed „_2 5”)
a nie widzę spacji…
co do podszywania sie – to widze u siebie, ze masa maili dochodzi z tematem
Twoja zielona faktura plus nr:
zazwyczaj z konta gmail – ale to bez znaczenia, bo nie z konta plus.pl
moze na to jakies rozwiazanie ?
Plus ma spf wiec mozna tak. Sprawdzic temat i spfa. albo prosciej
jesli temat jest „Twoja zielona faktura plus nr” i from nie z plus.pl to spam.
idzie to z adresu e@fakturaplus.pl.xxx Można zrobic wpis z taka reguła ale wyslij mi kilka przykladowych maili z naglówkami przez kontakt
sa to maile z subj:
„Twoja zielona faktura plus nr” ,,,,,,,
zazwyczaj u mnie z adresu walek554@wp.pl|gmail.com – obserwacja z 2 dni
obecnie wszystko co ma walek554 w adresie blokuje – wiec wiecej nie wiem „-) bo zniklo w /dev/null
a i taka prosba – jesli mozna,
bo ostatnio o allegro troche w prasie, moze by te regule o ktorej tutaj mowa – rozszerzyc wlasnie o allegro lub zrobic osobna
Z gory dzieki
u mnie te reguła wrzuca maile w spam mimo iż SPF poprawny. Podejrzewam że problemem jest:
header __ZABOJCASPAMU_SPF_REQ_2_2 ALL=~/spf=pass.+\@(dhl\.com|dhl\.pl|poczta\-polska\.pl|inpost\.pl|paczkomaty\.pl) /
reguła oczekuje ‚spf=pass’ natomiast w nagłówku mam ‚Received-SPF: pass’. Rozwiązaniem było by dodanie tam warunku (=|: ) lub dopuszczenia ciągu znaków {1,3}
niżej nagłówek spf:
Received-SPF: pass (poczta-polska.pl: Sender is authorized to use ‚imie.nazwisko@poczta-polska.pl’ in ‚mfrom’ identity (mechanism ‚include:spf.protection.outlook.com’ matched)) receiver=domena.pl; identity=mailfrom; envelope-from=”imie.nazwisko@poczta-polska.pl”; helo=emea01-am1-obe.outbound.protection.outlook.com; client-ip=xxx.xxx.xxx.xxx
Dzieki poprawilem. I jeszcze SPF może być wielkimi literami
Czy wielkość liter w regule? Pewnie tak, bo u mnie wyłapał email z paczkomaty.pl (pożądany) jako brak SPF
W logach widzę:
policyd-spf[19692]: Pass; identity=mailfrom; […]
postfix 2.11.3, spamassassin 3.4.0
Nie zastanawialem sie na tym, ale mozliwe. Ale dziwne by to bylo. Sprawdz czy adres IP jest dopuszczony przez SPFy ich
U mnie poprawny mail zawiera taki nagłówek:
Received-SPF: Pass; receiver=; client-ip=91.216.25.69; envelope-from=
a mimo to reguła nie znajduje poprawnego SPF’a i dolicza 5.0. Zapewne przez „Pass” pisane wielką literą.