SPF، DKIM و DMARC چیست و چگونه مشکل اسپم شدن ایمیل را رفع کنیم؟
مقدمه:
اگر ایمیلهای سازمانی شما وارد پوشه Spam میشوند، تنظیم صحیح SPF، DKIM و DMARC یکی از اولین اقداماتی است که باید انجام دهید. SPF سرورهای مجاز ارسال کننده را معرفی میکند، DKIM اصالت و یکپارچگی پیام را با امضای رمزنگاری شده میسنجد و DMARC نتیجه این دو بررسی را به دامنه موجود در قسمت From مرتبط میکند. بااینحال، احراز هویت به تنهایی تحویل قطعی ایمیل به Inbox را تضمین نمیکند و باید اعتبار IP، محتوای پیام و شیوه ارسال نیز بررسی شود.
فهرست مطالب
SPF، DKIM و DMARC چگونه از دامنه محافظت میکنند؟
- رکورد SPF چیست و چگونه کار میکند؟
- DKIM چیست و چه تفاوتی با SPF دارد؟
- DMARC چیست و چه نقشی در تحویل ایمیل دارد؟
- مقایسه SPF، DKIM و DMARC
- آموزش تنظیم رکوردهای اعتبارسنجی ایمیل
- چگونه علت اسپم شدن ایمیل را پیدا کنیم؟
- خطاهای متداول در تنظیم رکوردها
- چک لیست رفع مشکل ورود ایمیل به Spam
- جمع بندی و سؤالات متداول
SPF، DKIM و DMARC چیست و چرا برای ایمیل سازمانی اهمیت دارد؟
این سه سازوکار مکمل یکدیگر هستند، اما وظیفه یکسانی ندارند. SPF مشخص میکند کدام سرور یا سرویس اجازه دارد از طرف دامنه ایمیل ارسال کند. DKIM یک امضای دیجیتال به سربرگ ایمیل اضافه میکند تا سرور مقصد بتواند اصالت فرستنده و تغییر نکردن بخشهای امضاشده پیام را بررسی کند.
DMARC بر پایه نتیجه SPF و DKIM عمل میکند و سیاست مالک دامنه را درباره پیامهای نامعتبر در اختیار سرور دریافت کننده قرار میدهد. این سیاست میتواند صرفاً برای پایش باشد یا از گیرنده بخواهد پیام نامعتبر را قرنطینه یا رد کند. استاندارد جاری DMARC در RFC 9989 کارگروه مهندسی اینترنت تشریح شده است.
بدون این رکوردها، تشخیص پیام واقعی از ایمیلی که آدرس فرستنده آن جعل شده است دشوارتر میشود. نبود اعتبارسنجی همچنین میتواند یکی از دلایلی باشد که سرویسهای دریافتکننده به پیامهای یک دامنه با احتیاط بیشتری نگاه میکنند.
مشاوره تخصصی: اگر چند سرویس مانند هاست، خبرنامه، نرمافزار حسابداری یا CRM از دامنه شما ایمیل ارسال میکنند، شناسایی تمام فرستندههای مجاز اهمیت زیادی دارد. کارشناسان شرکت تجارت الکترونیک نوژن میتوانند ساختار ارسال ایمیل و رکوردهای DNS دامنه را بررسی کنند تا تنظیمات بدون اختلال در سرویسهای فعال انجام شود.
مطالعه بیشتر: آشنایی با رکوردهای DNS
رکورد SPF چیست و چگونه کار میکند؟
SPF مخفف Sender Policy Framework است. مالک دامنه با انتشار یک رکورد TXT در DNS اعلام میکند چه IPها، میزبانها یا سرویسهایی اجازه دارند با استفاده از آن دامنه در مسیر بازگشت SMTP ایمیل ارسال کنند.
هنگامی که سرور مقصد پیام را دریافت میکند، دامنه مرتبط با فرستنده SMTP یا Return-Path را بررسی کرده و رکورد SPF آن را میخواند. سپس IP سرور ارسال کننده را با منابع مجاز موجود در رکورد مقایسه میکند. نحوه ارزیابی SPF در RFC 7208 تعریف شده است.
یک نمونه ساده رکورد SPF به شکل زیر است:
این رکورد صرفاً نمونه آموزشی است. IP و دامنه سرویس ارسال باید با اطلاعات واقعی شرکت ارائه دهنده ایمیل جایگزین شوند.
اجزای مهم رکورد SPF
v=spf1نسخه مورد استفاده SPF را مشخص میکند.ip4یاip6یک IP یا محدوده مجاز را معرفی میکند.includeاجازه استفاده از سیاست SPF یک سرویس دیگر را میدهد.aوmxمیتوانند IPهای مرتبط با رکوردهای A یا MX دامنه را مجاز کنند.~allبرای منابع ناشناخته نتیجه SoftFail ایجاد میکند.-allمنابع تعریف نشده را غیرمجاز اعلام میکند.
هر دامنه باید یک سیاست SPF یکپارچه داشته باشد. ساخت چند رکورد SPF جداگانه با v=spf1 برای یک نام دامنه میتواند به خطای اعتبارسنجی منجر شود. اگر چند سرویس ارسال دارید، مجوز تمام آنها باید با رعایت محدودیتها در یک رکورد ادغام شود.
محدودیت SPF در ارسال فوروارد شده
فوروارد شدن ایمیل ممکن است باعث شود IP واسط جدید در رکورد SPF فرستنده مجاز نباشد. در این حالت SPF میتواند شکست بخورد، حتی اگر پیام در ابتدا معتبر بوده باشد. یکی از دلایل اهمیت DKIM این است که امضای آن در بسیاری از مسیرهای فوروارد سالم میماند؛ البته تغییر محتوای پیام توسط واسط ممکن است DKIM را نیز نامعتبر کند.
DKIM چیست و چگونه اصالت ایمیل را تأیید میکند؟
DKIM مخفف DomainKeys Identified Mail است. سرور ارسال کننده با استفاده از کلید خصوصی، بخشهای مشخصی از پیام را امضا میکند. سرور مقصد نیز کلید عمومی را از DNS میخواند و امضا را مورد بررسی قرار میدهد.
کلید عمومی در یک رکورد TXT با نامی شبیه نمونه زیر قرار میگیرد:
مقدار رکورد ممکن است ساختاری مانند نمونه زیر داشته باشد:
عبارت selector1 سلکتور DKIM است. این نام به سرویس ارسال کننده اجازه میدهد میان چند کلید تفاوت قائل شود و در زمان مناسب کلیدها را تعویض کند. مقدار واقعی سلکتور و کلید عمومی را باید از کنترلپنل هاست یا سرویس ایمیل دریافت کرد؛ نباید یک کلید نمونه را در DNS قرار داد.
DKIM ثابت نمیکند که محتوای پیام حتماً امن یا مفید است. این سازوکار نشان میدهد بخشهای امضا شده پیام پس از امضا تغییر نکردهاند و امضا با دامنه معرفیشده قابل تأیید است.
آموزش ساخت ایمیل سازمانی در cPanel» ← مقاله آموزش ساخت ایمیل info و ایمیل سازمانی]
DMARC چیست و چه ارتباطی با SPF و DKIM دارد؟
DMARC مخفف Domain-based Message Authentication, Reporting and Conformance است. این سازوکار نتیجه SPF و DKIM را با دامنه ای که کاربر در قسمت قابل مشاهده From میبیند مرتبط میکند. به این تطابق، هم ترازی یا Alignment گفته میشود.
برای عبور از DMARC لازم نیست همیشه SPF و DKIM هر دو موفق باشند. موفقیت و هم ترازی حداقل یکی از آنها میتواند برای Pass شدن DMARC کافی باشد. با این حال، تنظیم هر دو روش مقاومت و انعطاف بیشتری در مسیرهای مختلف ارسال ایجاد میکند.
رکورد DMARC در آدرس زیر منتشر میشود:
یک رکورد مناسب برای شروع پایش ممکن است چنین باشد:
سیاست p=none معمولاً برای مشاهده گزارشها و شناسایی فرستندههای واقعی استفاده میشود. پس از تحلیل گزارشها و اطمینان از احراز هویت تمام منابع مجاز، میتوان سیاست را به صورت مرحله ای به quarantine و سپس، در صورت مناسب بودن شرایط، به reject تغییر داد.
سیاستهای اصلی DMARC
p=none: پیامها را فقط پایش میکند و برای دامنه سیاست اجرایی قرنطینه یا رد درخواست نمیکند.p=quarantine: از گیرنده میخواهد پیامهای نامعتبر را مشکوک تلقی کند؛ نحوه اجرای آن به گیرنده بستگی دارد.p=reject: از گیرنده میخواهد پیامهایی را که DMARC را رد میکنند نپذیرد.rua: آدرس دریافت گزارشهای تجمیعی را مشخص میکند.adkimوaspf: حالت هم ترازی سختگیرانه یا انعطاف پذیر DKIM و SPF را تعیین میکنند.
فعال کردن مستقیم p=reject بدون شناسایی تمام سامانههای ارسال میتواند باعث رد شدن ایمیلهای واقعی شود. خبرنامه، فرم تماس سایت، فروشگاه، سامانه تیکت، ابزار اتوماسیون و سرویسهای ابری باید پیش از اعمال سیاست سخت گیرانه بررسی شوند.
جدول مقایسه SPF، DKIM و DMARC
| ویژگی | SPF | DKIM | DMARC |
|---|---|---|---|
| وظیفه اصلی | تعیین سرورهای مجاز ارسال | امضای رمزنگاری شده پیام | تعیین سیاست و بررسی هم ترازی دامنه |
| محل تنظیم | رکورد TXT دامنه | رکورد TXT زیر _domainkey |
رکورد TXT زیر _dmarc |
| مبنای بررسی | IP فرستنده و هویت SMTP | امضای پیام و کلید عمومی | نتیجه هم تراز SPF یا DKIM |
| مقاومت در برابر فوروارد | ممکن است SPF شکست بخورد | در صورت تغییر نکردن بخشهای امضاشده معمولاً بهتر عمل میکند | به نتیجه هم تراز SPF یا DKIM وابسته است |
| قابلیت گزارش دهی | به صورت ذاتی ندارد | به صورت ذاتی ندارد | گزارشهای تجمیعی را پشتیبانی میکند |
| نقش در کاهش جعل دامنه | محدود به منابع ارسال | تأیید ارتباط امضا با دامنه | اعمال سیاست روی استفاده غیرمجاز از دامنه |
| آیا به تنهایی مانع Spam میشود؟ | خیر | خیر | خیر |
مشاهده خدمات مرتبط: کیفیت زیرساخت ایمیل، تنظیم DNS و اعتبار IP در کنار این رکوردها بر تحویل پیام اثر میگذارند. برای بررسی سرویسهای هاست و زیرساخت متناسب با ایمیل سازمانی میتوانید از خدمات شرکت تجارت الکترونیک نوژن بازدید کرده یا پیش از انتخاب سرویس، مشاوره فنی دریافت کنید.
مطالعه بیشتر: مشاهده سرویسهای هاست
آموزش تنظیم SPF، DKIM و DMARC در DNS
پیش از هر تغییری، از رکوردهای فعلی DNS نسخه پشتیبان یا تصویر تهیه کنید. همچنین فهرست تمام منابعی را که از دامنه ایمیل میفرستند بنویسید. تغییر اشتباه DNS ممکن است ارسال ایمیلهای سایت یا سامانه های سازمان را مختل کند.
مرحله اول: شناسایی سرویسهای ارسال کننده
منابع احتمالی را بررسی کنید:
- سرور ایمیل اصلی یا هاست
- فرم تماس و افزونههای وردپرس
- فروشگاه اینترنتی و سامانه پیامرسانی سفارش
- سرویس خبرنامه یا ایمیل انبوه
- CRM، نرمافزار حسابداری یا سامانه تیکت
- ابزارهای مانیتورینگ و ارسال هشدار
- سرویسهای Google Workspace یا Microsoft 365، در صورت استفاده
هر سرویس باید مستندات رسمی مربوط به SPF و DKIM خود را ارائه دهد. مقادیر سرویس دیگر را از روی یک مقاله عمومی کپی نکنید.
مرحله دوم: ساخت یا اصلاح SPF
رکورد TXT فعلی دامنه را بررسی کنید. اگر رکوردی با v=spf1 وجود دارد، منابع جدید باید به همان رکورد افزوده شوند؛ رکورد SPF دوم نسازید.
در SPF تعداد جست وجوهای DNS اهمیت دارد. استفاده زیاد یا تودرتو از include میتواند اعتبارسنجی را با خطا مواجه کند. همچنین استفاده از +all عملاً هر سروری را مجاز نشان میدهد و انتخاب مناسبی برای دامنه سازمانی نیست.
مرحله سوم: فعال سازی DKIM
در کنترل پنل سرویس ایمیل، DKIM را فعال و مقدار Selector و Public Key را دریافت کنید. سپس رکورد TXT اعلامشده را دقیقاً در DNS بسازید.
برخی پنلها نام دامنه را به صورت خودکار به فیلد Name اضافه میکنند. اگر نام کامل را وارد کنید، ممکن است دامنه دوبار تکرار شود. پس از ذخیره، نام نهایی رکورد را از بخش مدیریت DNS کنترل کنید.
مرحله چهارم: راهاندازی تدریجی DMARC
ابتدا رکوردی با سیاست پایش ایجاد کنید و گزارشها را به صندوقی اختصاصی یا یک سامانه تحلیل گزارش بفرستید. گزارشهای XML ممکن است فنی و پرتعداد باشند؛ بهتر است صندوق گزارش از ایمیلهای روزمره جدا باشد.
بعد از شناسایی منابع ناشناس و رفع خطاهای Alignment، سیاست را مرحله ای سخت گیرانه تر کنید. تصمیم برای استفاده از quarantine یا reject باید براساس نتایج واقعی گزارشها و ساختار ارسال سازمان گرفته شود.
مرحله پنجم: آزمایش از چند مسیر
از سرویسهای مختلف سایت و ایمیل سازمانی برای چند مقصد آزمایشی پیام بفرستید. فقط ارسال مستقیم از وب میل را آزمایش نکنید؛ فرم تماس، فاکتور فروشگاه، تیکت و خبرنامه نیز باید جداگانه بررسی شوند.
در سربرگ پیام دریافتی به دنبال نتیجههایی شبیه موارد زیر باشید:
Pass شدن هر سه مورد نشانه خوبی است، اما باید دامنههای ثبتشده در header.from، smtp.mailfrom و header.d را نیز بررسی کرد. ممکن است SPF یا DKIM بهتنهایی Pass باشد، ولی به دلیل ناهماهنگی دامنه، DMARC شکست بخورد.
مطالعه بیشتر: آموزش مدیریت DNS در کنترل پنل هاست
چرا با وجود Pass شدن SPF، DKIM و DMARC ایمیل هنوز اسپم میشود؟
احراز هویت فقط یکی از سیگنالهای ارزیابی ایمیل است. منابع رسمی DMARC نیز تأکید میکنند که استفاده از این فناوریها به تنهایی رسیدن پیام به Inbox را تضمین نمیکند. اگر هر سه نتیجه Pass هستند، عوامل زیر را بررسی کنید:
اعتبار IP و دامنه
ارسال از IP دارای سابقه نامناسب، IP اشتراکی آلوده یا دامنه ای با رفتار ارسال نامنظم ممکن است بر تحویل پیام اثر بگذارد. در هاست اشتراکی، رفتار سایر کاربران سرور نیز میتواند برای اعتبار IP اهمیت داشته باشد.
رکورد PTR و نام میزبان
برای سرور ایمیل اختصاصی، Reverse DNS یا PTR باید با هویت سرور هماهنگ باشد. تنظیم PTR معمولاً از سمت مالک IP یا ارائه دهنده سرور انجام میشود و با ساخت یک رکورد معمولی در DNS جایگزین نمیشود.
محتوای پیام
عنوان گمراه کننده، لینکهای مشکوک، پیوست نامناسب، HTML معیوب، استفاده افراطی از عبارتهای تبلیغاتی یا نبود نسخه متنی میتواند احتمال قرارگیری پیام در Spam را بیشتر کند. نام فرستنده، دامنه لینکها و محتوای ایمیل نیز باید با هویت کسب وکار سازگار باشند.
روش جمعآوری مخاطب و رفتار کاربران
ارسال به آدرسهای نامعتبر یا افرادی که پیام را درخواست نکردهاند، نرخ شکایت و برگشت ایمیل را افزایش میدهد. فهرست مخاطبان باید از مسیر شفاف و با رضایت گیرنده ایجاد شود و امکان لغو عضویت نیز در پیامهای خبرنامه وجود داشته باشد.
حجم و الگوی ارسال
افزایش ناگهانی حجم ارسال از یک دامنه یا IP تازه میتواند رفتاری غیرعادی به نظر برسد. ایمیلهای انبوه بهتر است از زیرساخت مناسب خود استفاده کنند و با ایمیلهای تراکنشی مهم مانند بازیابی رمز عبور یا فاکتور مخلوط نشوند.
مطالعه بیشتر: تفاوت IP اختصاصی و اشتراکی
خطاهای متداول در تنظیم اعتبارسنجی ایمیل
وجود چند رکورد SPF
دو رکورد مجزا که هر دو با v=spf1 آغاز میشوند، راه صحیح معرفی چند سرویس نیستند. همه منابع مجاز باید در یک سیاست معتبر ادغام شوند.
کپی کردن رکورد سرویس دیگر
رکوردهای SPF و DKIM به زیرساخت ارسال وابسته اند. استفاده از مقدار مربوط به یک شرکت یا دامنه دیگر نه تنها مشکل را حل نمیکند، بلکه میتواند باعث شکست احراز هویت شود.
اشتباه در نام رکورد DKIM
انتخاب Selector اشتباه، تکرار نام دامنه یا ثبت رکورد در DNS غیرفعال از خطاهای رایج است. ابتدا مطمئن شوید Name Serverهای دامنه به همان پنلی اشاره میکنند که رکورد را در آن ویرایش میکنید.
اجرای زودهنگام سیاست Reject
اگر یکی از سرویسهای مجاز هنوز SPF یا DKIM هم تراز نداشته باشد، سیاست p=reject ممکن است پیام واقعی آن را متوقف کند. پایش و تحلیل گزارش باید قبل از اعمال سیاست سختگیرانه انجام شود.
تصور اینکه رکورد MX برای ارسال کافی است
MX مقصد دریافت ایمیل دامنه را معرفی میکند و به تنهایی مجوز ارسال یا امضای پیام نیست. امکان دارد دریافت ایمیل درست کار کند، اما ایمیل خروجی به دلیل نقص SPF یا DKIM نامعتبر باشد.
چک لیست عملی رفع مشکل اسپم شدن ایمیل
- تمام سرورها و سرویسهای ارسال کننده را فهرست کنید.
- وجود تنها یک رکورد معتبر SPF را بررسی کنید.
- IPها و
includeهای غیرضروری را از SPF حذف کنید. - DKIM را برای هر سرویس ارسال فعال و آزمایش کنید.
- همترازی دامنه From با SPF یا DKIM را کنترل کنید.
- DMARC را ابتدا با سیاست پایش و گزارشدهی راهاندازی کنید.
- نتیجه Authentication-Results پیام دریافتی را بخوانید.
- PTR، نام میزبان، HELO و گواهی TLS سرور را بررسی کنید.
- اعتبار IP و دامنه را در ابزارهای معتبر کنترل کنید.
- محتوای HTML، لینکها، پیوست و نسخه متنی ایمیل را آزمایش کنید.
- آدرسهای نامعتبر و مخاطبان بدون رضایت را از فهرست حذف کنید.
- پیامهای تراکنشی و تبلیغاتی را در صورت نیاز از هم جدا کنید.
- پس از هر تغییر DNS، انتشار رکورد و ارسال مجدد را بررسی کنید.
مطالعه بیشتر: چرا SSL و ارتباط امن برای سایت ضروری است؟
جمع بندی
در پاسخ به پرسش «SPF، DKIM و DMARC چیست و چگونه مشکل اسپم شدن ایمیل را رفع کنیم؟» باید گفت SPF منابع مجاز ارسال را مشخص میکند، DKIM اصالت و یکپارچگی پیام را میسنجد و DMARC نتیجه همتراز این دو سازوکار را به دامنه قابلمشاهده فرستنده مرتبط میکند. استفاده هماهنگ از این سه روش، جعل دامنه را دشوارتر کرده و امکان نظارت بر منابع ارسال را فراهم میسازد.
برای رفع مشکل Spam، ابتدا باید خطاهای احراز هویت برطرف شوند و سپس اعتبار IP، Reverse DNS، محتوای پیام، کیفیت فهرست مخاطبان و الگوی ارسال بررسی شود. هیچ رکورد DNS بهتنهایی تحویل پیام به Inbox را تضمین نمیکند؛ نتیجه پایدار به تنظیم فنی صحیح و رفتار سالم ارسال وابسته است.
درخواست بررسی فنی: اگر با وجود تنظیم رکوردها همچنان ایمیلهای سایت یا سازمان شما به Spam میروند، شرکت تجارت الکترونیک نوژن میتواند در بررسی DNS، ساختار هاست، سرور ارسال و خطاهای احراز هویت همراه شما باشد. برای مشاهده سرویسهای مرتبط یا دریافت مشاوره فنی با کارشناسان مجموعه تماس بگیرید.
سؤالات متداول
آیا تنظیم SPF بهتنهایی برای جلوگیری از اسپم شدن ایمیل کافی است؟
خیر. SPF فقط مجاز بودن IP یا سرویس ارسال کننده را بررسی میکند. بهتر است DKIM و DMARC نیز تنظیم شوند و عواملی مانند اعتبار IP، محتوا و رفتار ارسال مورد بررسی قرار گیرند.
آیا برای یک دامنه میتوان دو رکورد SPF ساخت؟
نباید دو رکورد مجزای SPF با v=spf1 برای یک نام دامنه منتشر شود. مجوز سرویسهای مختلف باید در یک رکورد معتبر ادغام شود.
تفاوت p=none و p=reject در DMARC چیست؟
p=none برای پایش و جمعآوری گزارش استفاده میشود، اما p=reject از گیرنده میخواهد پیام نا معتبر را نپذیرد. قبل از Reject باید همه فرستندههای مجاز شناسایی و آزمایش شوند.
آیا Pass شدن DKIM به معنی سالم بودن محتوای ایمیل است؟
خیر. DKIM نشان میدهد امضا معتبر است و بخشهای امضا شده پس از امضا تغییر نکردهاند. این نتیجه مفید یا بیخطر بودن محتوای پیام را تضمین نمیکند.
چرا SPF Pass است اما DMARC Fail میشود؟
احتمالاً دامنه ای که SPF برای آن موفق شده با دامنه قابل مشاهده در From هم تراز نیست. DMARC علاوه بر Pass شدن، ارتباط دامنهها را نیز بررسی میکند.
تغییرات SPF و DKIM چه زمانی قابل آزمایش هستند؟
زمان مشاهده تغییر به TTL رکورد و کش DNS وابسته است. به جای اتکا به یک زمان ثابت، انتشار رکورد را از چند Resolver بررسی کنید و سپس پیام آزمایشی بفرستید.
آیا برای فرم تماس وردپرس نیز SPF و DKIM لازم است؟
اگر فرم از دامنه شما ایمیل ارسال میکند، مسیر ارسال آن باید احراز هویت شود. استفاده از SMTP معتبر و تنظیم صحیح SPF و DKIM معمولاً از ارسال مستقیم و بدون هویت از تابع محلی مطمئن تر است.
