مفهوم SPF DNS Record
مفهوم SPF DNS Record: ممکن است تاکنون بارها با اصطلاح رکورد SPF برخورد کرده باشید ، زمانی که ما یک Mail Server داریم برای افزایش امنیت و جلوگیری از جعل نام دامین رکورد SPF می سازیم . به عبارتی وقتی شما یک Mail Server در سازمان خود راه اندازی میکنید علاوه بر انتخاب نوع Mail Server و تنظیمات آن و… باید تنظیمات خاصی برای احراز هویت این سرویس برای Mail Serverهای دیگر ایجاد کنید. چون ایجاد یک E-mail جعلی به اسم دامنه شما امروزه خیلی راحت شده است و به راحتی یک هکر می تواند به اسم سازمان شما مشتریان سازمان را گمراه کند. و به خاطر همین دلیل باید Mail Server خود را برای بقیه میل سرورها Authenticate کنید.
منظور از احراز هویت یک Mail Server برای بقیه سرورها میل چیست؟
میل سرورهای بزرگ مانند Yahoo, Google and Hotmail و … از هر SMTP Server ی میل دریافت نمی کنند. برای اینکه این میل سرورها از بقیه E-mail دریافت کنند، باید یکسری پارامترها وجود داشته باشند. این پارامترها عبارتند از :
- SPF Record
- PTR Record
- Domain Keys Identification Mail یا DKIM Protocol
- Real-time blackhole list – RBL
در این مقاله قصد داریم SPF Record و اجزای آن را پوشش دهیم.
SPF Record چیست؟
یک SPF (Sender Policy Framework) Record لیست Mail Server های می باشد که مجاز هستن از طرفه و به اسم دامنه سازمان شما به بقیه میل سرورها میل ارسال کنند. این رکورد باعث کاهش فعالیت Spamming از طرف اسم دامنه سازمان شما می شود. یعنی هر میل سروری مجاز به استفاده از دامنه ما برای ارسال میل نمی باشد. وقتی سروری قصد دارد به اسم دامنه سازمان شما Spam ی ارسال کند میل سرور مقصد چک می کند دامنه شما SPF Record دارد؟ آیا این SPF Record اسم دامنه شما را ارائه می کند؟ آیا این E-mail ارسالی از طرف سرورهائی فرستاده شده که IP or FQDN آنها در SPF Record لیست شده است؟ اگر SPF برای آن دامنه وجود داشت و اطلاعات ارائه شده آن به درستی ست شده باشد E-mail ارسالی بصورت نورمال پردازش می شود وگرنه ایمیل Spam می شود.
به این نکته توجه داشته باشید SPF Record فقط یکی از پارامترهای بالا می باشد یعنی حتی اگر SPF Record به درستی تنظیم شده باشد و پارامترهای بالا وجود نداشته باشند یا اشتباه تنظیم شده باشند باز هم E-mail ارسالی شما Spma می شود.
یک مثال از SPF Record
domain.com. IN TXT "v=spf1 a mx ~all"
Domail.com, اسم دامنه سازمان شما می باشد.
IN TXT, نوع رکورد در DNS Zone. رکورد SPF یک رکورد TXT می باشد که در DNSها ایجاد می شود.
V=spf1, تکست رکورد را به عنوان یک SPF Record شناسائی می کند.
A, لیست A Record های سرور های میل می باشد که می توانیم (مجاز) با آنها میل ارسال کنیم.
MX , رکورد MX میل سرورهای می باشد که می توانیم (مجاز) با آنها میل ارسال کنیم.
all~, لیست A و MX را مجاز به ارسال ایمیل میکند. (این دو لیست مجاز هستن از طرف دامنه شما میل ارسال کند.)
یک مثال دیگر
Domain.com v=spf1 mx a ip4:46.143.247.128/32 ~all
بیشتر پارامترهای بالا را توضیح دادم فقط یک پارامتر جدیدی در SPF Record بالا وجود داره
IP4, این پارامتر که خصوص IPv4 می باشد، رنج IPهای سرورهای میل را مشخص می کند. (فقط IP بالا می تواند از طرف این دامنه ایمیل ارسال کند)
SPF Record زیر را می توانید تجزیه و تحلیل کنید؟؟؟
domain.com. IN TXT "v=spf1 a mx include:google.com ~all
درسته!!! فقط MX رکورد بالا می تواند از طرف دامنه Domain.com میل ارسال کند.
تمام پرامترهای SPF Record را می توانید در سایت زیر پیدا کنید :
http://www.openspf.org/SPF_Record_Syntax
ایجاد یک SPF Record
سایتهای زیادی هستن که بصورت Wizard این رکورد را برای شما انجام می دهند و تنها کاری که شما باید انجام بدید اینه که به سوالهای آنها جواب بدید. همین!!!
http://www.spfwizard.net/ https://www.microsoft.com/mscorp/safety/content/technologies/senderid/wizard/ http://spfwizard.com/
سناریو
دامنه ای به اسم mycity-ku.ir و میل سروری با IP=46.143.247.128 دارم. الان می خواهم برای این دامنه یک SPF Record ایجاد کنم.
برای اینکار وارد یکی از سایتهای بالا شوید و فیلد های لازم را پر کنید.
کار شما تمام شد.
نکته : IP and FQDN بالا وابسته به هیچ سازمان یا مقصد خاصی نیست و فقط برای روشن شدن مطلب مطرح شده است.
اعمال کردن SPF در DNS
بعد از ایجاد رکورد بالا باید این رکورد را ب روی DNS Server اعمال کرد.
برای اعمال کردن SPF ما کلا دو سناریو داریم :
- اول اینکه DNS Server شما در ناحیه DMZ سازمان شما هستش.
- یا اینکه DNS شما توسط شرکت دیگری میزبانی می شود.
اگر DNS شما در DMZ سازمان می باشد شما باید این رکوود را ایجاد کنید ولی اگر DNS شما میزبانی می شود این رکورد را آن شرکت برای دامنه شما ایجاد می کند و شما نیاز به انجام هیچ کار خاصی نیستید.
ایجاد SPF Record در DNS های ویندوزی
تصاویر زیر را دنبال کنید :
تست کردن SPF Record
وقتی SPF Record را ایجاد و اعمال کردید باید این رکورد را تست کنید تا از صحت کارکرد آن اطمینان حاصل کنید.
شما می توانید توسط سایتهای زیر این کار را انجام دهید :
http://www.kitterman.com/spf/validate.html http://mxtoolbox.com/NetworkTools.aspx