Сврха и функција SPF записа у аутентификацији е-поште
Sender Policy Framework (SPF) је стандардизовани систем за аутентификацију е-поште који омогућава власницима домена да дефинишу који су сервери овлашћени за слање порука у њихово име. Када сервер прими е-пошту, он проверава SPF запис домена наведеног у адреси пошиљаоца како би потврдио да ли IP адреса пошиљаоца одговара листи одобрених сервера. Овај процес помаже у спречавању фалсификовања пошиљаоца (email spoofing) и побољшава укупну испоручивост легитимне поште.
SPF запис се објављује као TXT запис у DNS систему домена. Приликом пријема поруке, сервери за пошту анализирају овај запис од почетка до краја, пратећи дефинисана правила и редослед израза како би донели одлуку о усклађености.
Синтакса SPF записа и кључни изрази
Сваки важећи SPF запис мора бити конструисан према строгим синтаксичким правилима. Запис се састоји од верзије, механизама, модификатора и квалификатора који заједно дефинишу политику слања:
- Верзија: Сваки SPF запис мора почети са изразом
v=spf1. Ово мора бити први израз у запису, а унутар једног записа не сме постојати више од једног оваквог израза. - Механизми: Користе се за идентификацију овлашћених IP адреса. Најчешћи механизми су
ip4иip6за директно навођење адреса или CIDR опсега, затимincludeза преузимање политике са другог домена, као иa,mx,ptrиexists. - Квалификатори: Сваки механизам може имати префикс који одређује резултат подударања:
+(Pass - пролаз),-(Fail - неуспех),~(SoftFail - благи неуспех) или?(Neutral - неутрално). Ако квалификатор није наведен, подразумева се+. - Модификатори: Пружају додатне информације или упутства за обраду, као што је
redirectза преусмеравање процене на други домен. За разлику од механизама, модификатори не могу имати квалификаторе попут+,-,~или?.
Ограничење од 10 DNS упита и утицај на испоручивост
Једно од најважнијих техничких правила у SPF спецификацији је ограничавање броја DNS упита који се могу извршити током евалуације записа. Максималан дозвољени број DNS упита износи 10. Ово ограничење је уведено како би се спречили напади ускраћивањем услуге (DoS) усмерени на DNS сервере.
Упити који се убрајају у ово ограничење покрећу се коришћењем следећих израза: include, a, mx, ptr, exists и redirect. Механизми ip4 и ip6 не захтевају DNS упите јер директно садрже IP адресе.
Ако евалуација SPF записа захтева више од 10 DNS упита, примаоци поште морају третирати овај резултат као трајну грешку (PermError). То значи да ће е-пошта најчешће бити одбијена или означена као непоуздана, што директно нарушава испоручивост порука. Посебан изазов представљају уложени (угнежђени) изрази, где include или redirect одредишта могу додати знатно више DNS упита него што се може проценити пуким прегледом првог, почетног записа.
Анализа синтаксних грешака и ризика политике
Неправилно конфигурисани SPF записи могу створити безбедносне пропусте или потпуно онемогућити пријем поште. Међу најчешћим грешкама и ризицима издвајају се:
- Употреба
+all: Овај израз овлашћује апсолутно сваког пошиљаоца на интернету да шаље пошту у име вашег домена, чиме се у потпуности поништава сврха постојања SPF заштите. - Употреба
?all: Враћа неутралан резултат, што примаоцима поште не даје јасне смернице о томе како да поступају са порукама које не пролазе аутентификацију. - Механизам
ptr: Овај механизам се сматра застарелим и не би га требало објављивати јер је спор, захтева превише DNS ресурса и показао се као веома непоуздан у пракси. - Редослед израза: Сви изрази који се налазе након механизма
allпостају потпуно недостижни током SPF процене, јерallпредставља коначну тачку претраге. Такође, уколико запис садржи иallиredirect, модификаторredirectће бити потпуно занемарен. - Недостатак завршне политике: Ако запис не садржи ни
allниredirect, пошиљаоци који се не подударају са наведеним правилима добијају неутралан резултат, што смањује ефикасност заштите.
Како функционише алат Провера SPF записа
Алат врши локалну анализу текста који унесете у поље за унос. Максимална дужина уноса је 20.000 знакова. Уколико је SPF запис подељен на делове унутар наводника у DNS-у, алат ће спојити те делове пре почетка анализе.
Важно је разумети разлику између ове локалне провере и пуног DNS упита. Овај алат ради искључиво у вашем веб прегледачу; унети подаци се не отпремају нити чувају на серверима. Алат не упитује DNS систем у реалном времену, не проширује записе добављача кроз рекурзивне include кораке, не тестира конкретне IP адресе пошиљалаца нити гарантује шта ће пријемни сервер заиста вратити.
Његова примарна улога је брза идентификација очигледних синтаксних грешака, процена броја упита у првом запису и указивање на потенцијалне безбедносне ризике пре него што запис објавите на свом DNS серверу.
Често постављана питања (FAQ)
Како се израчунава процена броја SPF DNS упита?
Процена броји изразе include, a, mx, ptr, exists и redirect у налепљеном запису. Укључени и преусмерени записи могу додати упите, па локална провера не може знати коначан рекурзивни збир.
Шта се дешава ако SPF захтева више од 10 DNS упита?
SPF примаоци морају процену која премаши ограничење од 10 израза са DNS упитима третирати као трајну грешку. Ограничење обухвата цео ланац include и redirect, не само први запис.
Да ли чист резултат доказује да моје SPF подешавање ради?
Не. Ова страница проверава само текст који налепите. Не упитује DNS, не проширује записе добављача, не тестира IP пошиљаоца нити потврђује одговор пријемног сервера поште.
Шта значи када алат пријави грешку "Унесите подржан SPF запис"?
Ова грешка се појављује уколико унети текст не почиње са исправним идентификатором верзије v=spf1 или ако унети садржај уопште не одговара структури SPF записа. Сваки SPF запис мора стриктно почети овим изразом како би био препознат од стране сервера.