SPF یکی از سه رکورد مهم امنیت ایمیله (کنار DKIM و DMARC) که اگه درست تنظیم نشه، ایمیلهاتون احتمالاً به Spam میرن یا کلاهبردارا از دامنهتون سوء استفاده میکنن. تو این راهنما کامل SPF رو توضیح میدم و یاد میدم چطور تنظیمش کنید.
SPF چیه و چرا لازمه؟
SPF مخفف Sender Policy Framework هست. کارش اینه که مشخص میکنه کدوم سرورها اجازه دارن با اسم دامنه شما ایمیل بفرستن. مثلاً میگه فقط سرور mail.saba.host اجازه داره از @saba.host ایمیل بفرسته.
وقتی یه سرور دیگه ایمیل با دامنه saba.host بگیره، اول SPF شما رو چک میکنه. اگه فرستنده تو لیست مجاز شما نباشه، ایمیل رو رد میکنه یا Spam میکنه.
چرا SPF مهمه؟
بدون SPF، هرکی میتونه با دامنه شما ایمیل جعلی بفرسته. این کار برای فیشینگ و کلاهبرداری استفاده میشه. حتی اگه شما ربطی به این ایمیلها نداشته باشید، اعتبار دامنهتون خدشهدار میشه و ایمیلهای واقعی شما هم Spam میشن.
ضمناً بدون SPF، سرویسهایی مثل Gmail و Outlook به ایمیلهای شما اعتماد نمیکنن و ممکنه اونا رو به پوشه Spam بندازن.
SPF چطور کار میکنه؟
SPF یه رکورد TXT خاصه که تو DNS دامنهتون قرار میگیره. وقتی سرور گیرنده ایمیل، ایمیل رو دریافت میکنه، این مراحل رو طی میکنه:
۱. IP سرور فرستنده رو بررسی میکنه
۲. رکورد SPF دامنه فرستنده رو از DNS میگیره
۳. IP سرور فرستنده رو با لیست SPF مقایسه میکنه
۴. اگه مطابقت داشته باشه: ایمیل معتبره
۵. اگه مطابقت نداشته باشه: طبق قانون SPF رفتار میکنه
ساختار رکورد SPF
یه رکورد SPF نمونه اینجوریه:
v=spf1 ip4:185.226.140.140 include:_spf.google.com -all
بذارید هر بخش رو توضیح بدم:
v=spf1
ورژن SPFه، همیشه spf1 هست. این باید اول رکورد بیاد.
ip4:xxx یا ip6:xxx
IP خاصی رو مجاز میکنه. مثلاً ip4:185.226.140.140 یعنی این IP اجازه فرستادن ایمیل داره.
میتونید محدوده هم بدید: ip4:185.226.140.0/24 یعنی همه IPهای این محدوده مجازن.
include:
وقتی از سرویسهای خارجی مثل Gmail، Mailchimp یا Zoho استفاده میکنید، رکورد SPF اونا رو include میکنید. مثلاً include:_spf.google.com یعنی هر IP که Google در SPF خودش داره، برای شما هم مجازه.
a
IPهای رکورد A دامنهتون رو مجاز میکنه. یعنی اگه رکورد A سایتتون به یه IP اشاره میکنه، اون IP هم میتونه ایمیل بفرسته.
mx
IPهای سرور MX (سرور ایمیل) دامنهتون رو مجاز میکنه.
-all یا ~all
اینا در انتهای رکورد میان و مشخص میکنن با ایمیلهای غیر مجاز چیکار بشه:
- -all: رد بشن (سختگیرانه)
- ~all: نرمش (SoftFail) - Spam بشن ولی رد نشن
- +all: همه مجازن (اصلاً از این استفاده نکنید!)
- ?all: خنثی
نمونههای SPF برای موقعیتهای مختلف
وقتی فقط از هاست خودتون ایمیل میفرستید
v=spf1 mx a -all
وقتی از Google Workspace استفاده میکنید
v=spf1 include:_spf.google.com -all
وقتی از Mailchimp برای خبرنامه استفاده میکنید
v=spf1 include:servers.mcsv.net -all
وقتی هم هاست خودتون و هم Google Workspace
v=spf1 mx include:_spf.google.com -all
وقتی چند سرویس دارید
v=spf1 mx include:_spf.google.com include:servers.mcsv.net -all
تنظیم SPF در cPanel
اگه از cPanel استفاده میکنید:
۱. وارد cPanel بشید
۲. Email Authentication رو باز کنید
۳. زیر بخش SPF، Enable رو بزنید
۴. cPanel خودش یه SPF مناسب برای هاست شما میسازه
۵. اگه سرویسهای دیگه دارید (مثل Mailchimp)، دستی include اضافه کنید
خطاهای رایج SPF
خطای Multiple SPF Records
مهمترین قانون: هر دامنه فقط یه رکورد SPF داره. اگه دو تا رکورد بذارید، هر دو نامعتبر میشن. اگه از چند سرویس استفاده میکنید، همه رو تو یه رکورد SPF ترکیب کنید.
خطای 10 DNS Lookup
SPF محدودیت 10 lookup داره. یعنی هر include یا mx یه lookup حساب میشه. اگه بیشتر از 10 بشه، SPF نامعتبر میشه.
خطای Syntax
یه اشتباه کوچیک تو نگارش (مثل فاصله اضافی یا نقطه ویرگول) میتونه رکورد رو خراب کنه. حتماً با ابزار چک کنید.
ابزارهای بررسی SPF
برای اطمینان از درستی SPF از این ابزارها استفاده کنید:
- MXToolbox SPF Checker: ساده و کامل
- Kitterman SPF Test: تست از دید Google
- Google Postmaster Tools: برای بررسی وضعیت کلی
SPF کافی نیست!
SPF یه لایه امنیتی مهمه ولی به تنهایی کافی نیست. برای امنیت کامل ایمیل، سه تا رو با هم پیاده کنید:
۱. SPF: کدوم سرورها مجازن بفرستن
۲. DKIM: امضای دیجیتال ایمیل
۳. DMARC: قانون کلی چه بشه
هر سه رو با هم پیاده کنید تا ایمیلتون حرفهای و امن باشه.
SPF و اعتبار ایمیل
Google، Outlook و Yahoo از SPF برای تصمیمگیری استفاده میکنن. اگه SPF درست تنظیم شده باشه، ایمیلهاتون بیشتر به Inbox میرسن. اگه SPF نداشته باشید یا اشتباه باشه، حتی ایمیلهای عادی هم Spam میشن.
جمعبندی
SPF یکی از پایهایترین رکوردهای امنیت ایمیله. با چند دقیقه وقت گذاشتن، میتونید از دامنهتون در برابر جعل محافظت کنید و اعتبار ایمیلهاتون رو بالا ببرید.
اگه هاست از سباهاست دارید و ایمیلهای حرفهای میفرستید، حتماً SPF رو تنظیم کنید. cPanel این کار رو خودکار انجام میده، فقط باید فعالش کنید.