SPF، DKIM و DMARC چیست و چرا برای ایمیل دامنهٔ شما ضروری است؟

این سه رکورد DNS ثابت می‌کنند ایمیل‌هایی که از دامنهٔ شما ارسال می‌شود واقعی است؛ بدون آن‌ها ایمیل‌هایتان به اسپم می‌رود و دیگران می‌توانند به نام شما ایمیل جعلی بفرستند.

پروتکل ایمیل در دهه‌ها پیش طراحی شده و در اصل هیچ سازوکاری برای تأیید هویت فرستنده ندارد. هر کسی می‌تواند ایمیلی بفرستد و در قسمت فرستنده آدرس info@example.com را بنویسد، حتی اگر هیچ ارتباطی با آن دامنه نداشته باشد. به همین دلیل سه استاندارد مکمل به وجود آمده‌اند که همگی از طریق رکوردهای TXT در DNS پیاده‌سازی می‌شوند: SPF، DKIM و DMARC.

چرا این رکوردها مهم‌اند؟

SPF: چه سرورهایی اجازهٔ ارسال دارند؟

رکورد SPF فهرستی از سرورها یا آدرس‌های IP است که مجازند از طرف دامنهٔ شما ایمیل بفرستند. سرور گیرنده با دیدن این رکورد بررسی می‌کند آیا ایمیل از یکی از این سرورها آمده یا نه.

یک نمونهٔ ساده:

example.com.    TXT    "v=spf1 a mx include:_spf.google.com ~all"

نکته: هر دامنه فقط باید یک رکورد SPF داشته باشد. اگر از چند سرویس برای ارسال ایمیل استفاده می‌کنید، همه را در همان یک رکورد با include اضافه کنید.

DKIM: امضای دیجیتال ایمیل

DKIM به هر ایمیل خروجی یک امضای رمزنگاری‌شده اضافه می‌کند. کلید خصوصی روی سرور ایمیل شما نگهداری می‌شود و کلید عمومی در یک رکورد TXT در DNS منتشر می‌شود. سرور گیرنده با کلید عمومی بررسی می‌کند که:

  1. ایمیل واقعاً از سرور شما ارسال شده، و
  2. محتوای آن در مسیر دست‌کاری نشده است.

رکورد DKIM معمولاً روی زیردامنه‌ای با این الگو قرار می‌گیرد:

default._domainkey.example.com.    TXT    "v=DKIM1; k=rsa; p=MIIBIjANBgkq..."

بخش default را سلکتور می‌گویند و هر سرویس ارسال ایمیل سلکتور مخصوص خودش را دارد؛ بنابراین می‌توانید چند رکورد DKIM برای سرویس‌های مختلف داشته باشید.

DMARC: سیاست و گزارش

DMARC روی SPF و DKIM سوار می‌شود و دو کار انجام می‌دهد:

  1. به سرور گیرنده می‌گوید اگر ایمیلی از SPF یا DKIM رد شد، با آن چه کند: هیچ (none)، به اسپم بفرستد (quarantine) یا کاملاً رد کند (reject).
  2. گزارش ایمیل‌های رد‌شده را به آدرسی که تعیین کرده‌اید می‌فرستد تا بفهمید چه کسی به نام شما ایمیل می‌فرستد.
_dmarc.example.com.    TXT    "v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com"

توصیهٔ رایج این است که ابتدا با p=none شروع کنید و گزارش‌ها را بررسی کنید؛ وقتی مطمئن شدید همهٔ سرویس‌های مجاز شما درست تنظیم شده‌اند، به quarantine و سپس reject بروید.

این سه با هم چگونه کار می‌کنند؟

استاندارد چه چیزی را ثابت می‌کند کجا تنظیم می‌شود
SPF ایمیل از سرور مجاز آمده رکورد TXT روی خود دامنه
DKIM ایمیل امضا شده و دست‌نخورده است رکورد TXT روی سلکتور._domainkey
DMARC با ایمیل‌های ناموفق چه شود + گزارش‌دهی رکورد TXT روی _dmarc

SPF به‌تنهایی کافی نیست (مثلاً هنگام فوروارد شدن ایمیل از کار می‌افتد) و DKIM هم به‌تنهایی سیاستی تعیین نمی‌کند؛ هر سه با هم یک مجموعهٔ کامل می‌سازند.

در سرویس‌های تدبیر.نت

برای دامنه‌هایی که هم هاست و هم DNS آن‌ها نزد تدبیر.نت است، رکوردهای SPF و DKIM به‌صورت پیش‌فرض تنظیم می‌شوند. اگر:

با پشتیبانی تماس بگیرید تا رکوردها را برای شما بررسی و تنظیم کنیم. یک فاصله یا نقل‌قول اشتباه در این رکوردها کافی است تا کل ایمیل دامنه از کار بیفتد؛ پس اگر تجربهٔ کار با DNS ندارید، بهتر است تغییرات را به ما بسپارید.

مطالب دیگر