اگر ایمیلهای دامنه شما به اسپم میروند یا کسی با نام دامنهتان ایمیل جعلی میفرستد، احتمالاً سه رکورد DNS درست تنظیم نشدهاند: SPF، DKIM و DMARC. از سال ۲۰۲۴ سرویسهای بزرگی مثل Gmail و Yahoo برای فرستندگان انبوه این رکوردها را الزامی کردهاند و حتی برای ایمیلهای عادی هم نبودشان احتمال رسیدن به اینباکس را کم میکند. در این راهنما تنظیم SPF، DKIM و DMARC را با مثال توضیح میدهیم.
فهرست مطالب
چرا این سه رکورد لازماند؟
پروتکل ایمیل بهطور پیشفرض اجازه میدهد هر کسی در فیلد From هر آدرسی بنویسد. این سه رکورد که در DNS دامنه تعریف میشوند (آشنایی با DNS در DNS چیست)، به سرور گیرنده کمک میکنند اصالت ایمیل را بسنجد:
| رکورد | چه چیزی را بررسی میکند؟ |
|---|---|
| SPF | آیا سرور فرستنده اجازه ارسال از طرف این دامنه را دارد؟ |
| DKIM | آیا ایمیل با کلید دامنه امضا شده و در مسیر تغییر نکرده است؟ |
| DMARC | اگر SPF یا DKIM رد شد، گیرنده چه کند؟ و گزارش را به کجا بفرستد؟ |
SPF: چه سرورهایی مجازند؟
SPF یک رکورد TXT روی خود دامنه است که فهرست سرورها و سرویسهای مجاز به ارسال را تعیین میکند:
example.com. TXT "v=spf1 a mx ip4:203.0.113.10 include:_spf.google.com ~all"
aوmx: سرورهایی که در رکوردهای A و MX دامنه آمدهاند.ip4:: یک IP یا رنج مشخص؛ مثلاً سرور سایت که ایمیلهای فرم و سفارش را میفرستد.include:: سرویسهای خارجی مثل سرویس ایمیل سازمانی یا خبرنامه.~all: بقیه را مشکوک علامت بزن (Softfail).-allیعنی رد کن (Fail).
نکات مهم: هر دامنه فقط یک رکورد SPF میتواند داشته باشد؛ همه سرویسها را در همان یک رکورد ادغام کنید. همچنین مجموع جستجوهای DNS (هر include، a و mx) نباید از ۱۰ بیشتر شود.
DKIM: امضای دیجیتال ایمیل
در DKIM، سرور فرستنده هر ایمیل را با کلید خصوصی امضا میکند و کلید عمومی در DNS زیر یک «Selector» منتشر میشود:
default._domainkey.example.com. TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqh..."
- کلید را خودتان نمیسازید؛ سرویس ایمیل یا کنترلپنل آن را تولید میکند. در cPanel از بخش Email Deliverability، در Google Workspace و Microsoft ۳۶۵ از پنل مدیریت.
- هر سرویس ارسال (ایمیل سازمانی، سرویس خبرنامه، سرور سایت) باید DKIM خودش را با Selector جداگانه داشته باشد.
- کلید ۲۰۴۸ بیتی توصیه میشود. اگر پنل DNS رکوردهای طولانی را نمیپذیرد، آن را به چند رشته تقسیم کنید.
DMARC: سیاست و گزارش
DMARC روی زیردامنه _dmarc تعریف میشود و دو کار میکند: تعیین سیاست برای ایمیلهایی که احراز نمیشوند و دریافت گزارش از گیرندگان.
_dmarc.example.com. TXT "v=DMARC1; p=none; rua=mailto:dmarc@example.com; adkim=r; aspf=r"
p=none: فقط گزارش بده، اقدامی نکن.p=quarantine: به اسپم بفرست.p=reject: رد کن.rua: آدرس دریافت گزارشهای تجمیعی روزانه.- همراستایی (Alignment): برای قبولی DMARC، دامنهای که SPF یا DKIM با آن احراز شده باید با دامنه فیلد From همخوان باشد. ایمیلی که از سرویس خبرنامه با دامنه خود آن سرویس امضا شده، حتی با DKIM معتبر هم DMARC را رد میکند.
مسیر پیشنهادی اجرا
- همه سرویسهایی را که از طرف دامنه ایمیل میفرستند فهرست کنید: ایمیل سازمانی، سایت (فرمها، فروشگاه)، CRM، خبرنامه، سیستم تیکت.
- SPF را با همه آنها و
~allتنظیم کنید. - DKIM را برای هر سرویس فعال کنید.
- DMARC را با
p=noneو آدرس گزارش منتشر کنید و چند هفته گزارشها را بررسی کنید. - پس از اطمینان از اینکه همه ایمیلهای واقعی قبول میشوند، به
p=quarantineو سپسp=rejectبروید. - برای دامنههایی که اصلاً ایمیل نمیفرستند،
v=spf1 -allو DMARC باp=rejectتنظیم کنید تا جعل نشوند.
تست و بررسی
dig TXT example.com +short
dig TXT default._domainkey.example.com +short
dig TXT _dmarc.example.com +short
یک ایمیل به یک حساب Gmail بفرستید و از منوی پیام، گزینه «Show original» را باز کنید؛ نتیجه SPF، DKIM و DMARC باید PASS باشد. ابزارهای آنلاین بررسی سلامت ایمیل هم رکوردها و فهرستهای سیاه را بررسی میکنند.
اشتباههای رایج
- دو رکورد SPF جداگانه برای یک دامنه؛ هر دو نامعتبر میشوند.
- فراموش کردن IP سروری که سایت از آن ایمیل میفرستد.
- رفتن مستقیم به
p=rejectبدون دوره گزارش؛ ایمیلهای واقعی رد میشوند. - عبور از سقف ۱۰ جستجوی DNS در SPF با includeهای زیاد.
- تغییر سرویس ایمیل بدون بهروزرسانی SPF و DKIM.
اگر رکوردها درستاند اما ایمیلها هنوز به اسپم میروند، علتهای دیگر را در چرا ایمیلها به اسپم میروند بررسی کنید.
سوالات متداول
آیا داشتن فقط SPF کافی است؟
خیر. SPF با فوروارد شدن ایمیل از کار میافتد و بهتنهایی فیلد From را محافظت نمیکند. ترکیب هر سه رکورد، استاندارد فعلی است.
تغییرات DNS ایمیل کی اعمال میشود؟
بسته به TTL رکوردها، از چند دقیقه تا چند ساعت.
گزارشهای DMARC را چطور بخوانم؟
گزارشها فایل XML فشردهاند. سرویسهای تحلیل DMARC آنها را به نمودار و فهرست فرستندگان تبدیل میکنند. یک صندوق جداگانه برای دریافت آنها بسازید.
در هاست cPanel این رکوردها را کجا تنظیم کنم؟
بخش Email Deliverability وضعیت SPF و DKIM را نشان میدهد و اگر DNS روی همان هاست باشد، اصلاح خودکار پیشنهاد میدهد. DMARC را از Zone Editor اضافه کنید. راهنما در آموزش cPanel.
ایمیل دامنه با تنظیمات درست
هاستهای cPanel تراست هاست امکان ساخت ایمیل روی دامنه و مدیریت رکوردهای SPF و DKIM را دارند. برای تنظیم ایمیل سرور اختصاصی هم خدمات مدیریت سرور در دسترس است.