ابر آروان

راه حل‌های مبتنی بر شبکه توزیع محتوا
CDN, DDoS Protection, Video Platform

معرفی رکورد SPF و تنظیم آن در پنل کاربری ابر آروان

۸ خرداد ۱۳۹۸

Sender Policy Framework یا SPF روشی امنیتی و استاندارد برای محافظت از دامنه‌ در برابر حملات Email Spoofing، هم‌چنین اطمینان از تحویل ایمیل‌ها به مخاطبان، بدون spam شدن آن‌هاست. منظور از حملات Email Spoofing، حملاتی هستند که مهاجم از یک دامنه برای ارسال ایمیل‌های جعلی خود به قربانیان استفاده می‌کند.

 

رکورد SPF

رکورد SPF از نوع رکوردهای TXT بوده و شامل فهرستی از hostها/آدرس IPهای مُجازی است که اجازه‌ی ارسال ایمیل از سمت یک دامنه‌‌ی خاص را دارند. اهمیت رکورد SPF از آن روست که اگر این رکورد در تنظیمات مدیریت DNS  تعریف نشود، سرویس‌دهنده‌های ایمیلی همانند Gmail، Yahoo و … به‌شکل پیش‌فرض دامنه‌ی ارسال کننده‌ی ایمیل را در فهرست اسپمرها قرار می‌دهند.

 

مراحل پیش از تعریف رکورد SPF

۱. شناسایی ایمیل سرورهایی که از آن‌ها برای ارسال ایمیل به مخاطبان خود استفاده می‌کنید؛ برای نمونه این سرور ایمیل می‌تواند هر یک از موارد زیر باشد:

    • وب‌سرور
    • سرویس‌های ایمیل واسط همانند mailgun ،zoho ،gsuite و…

۲. تهیه‌ی فهرستی از دامنه‌هایی که برای ارسال ایمیل استفاده می‌شوند. اگر سازمانی با تعداد فراوان دامنه هستید، احتمالن از برخی دامنه‌ها (دامنه‌های فعال) برای ارسال ایمیل استفاده می‌کنید و از برخی دیگر نه. نکته‌ی مهم آن است که هنگام تعریف رکورد SPF، این رکورد را باید به‌ازای تمام دامنه‌های تحت کنترل خود، حتا دامنه‌هایی که از آن‌ها برای ارسال ایمیل استفاده نمی‌کنید نیز، تعریف کنید. اغلب مهاجم در نخستین گام، اقدام به دست‌یابی به دامنه‌هایی می‌کند که از آن‌ها برای ارسال ایمیل استفاده نمی‌شود، چراکه فرض را بر امن نشدن آن‌ها به‌وسیله‌ی SPF می‌گذارد.

 

تعریف رکورد SPF

رکورد SPF در قالب تک‌رشته‌ای متنی به شکل زیر مشخص می‌شود:

v=spf1 ip4:x.x.x.x include:_spf.example.com ~all

این رکورد همیشه با عبارت «v» آغاز می‌شود. v مخفف version است و به نسخه‌ی SPF مورد استفاده اشاره دارد. تنها نسخه‌ی ارایه شده برای SPF تاکنون، SPFv1 است. از سوی دیگر، خط بالا مشخص‌کننده‌ی چند مکانیزم مختلف برای تطبیق است. در حالت عادی و بدون استفاده از کاراکترهای زیر تمام مکانیزم‌ها بررسی و همگی اعمال می‌شوند:

  • + : به قبول مکانیزم تعریف‌شده اشاره دارد. به بیانی، آدرس یا host مشخص‌شده در مکانیزم، مجاز به ارسال ایمیل است. این کاراکتر، کاراکتر پیش‌فرض میان مکانیزم‌ها در خط تعریفی رکورد SPF است.
  • : این کاراکتر به معنای رد مکانیزم تعریف شده است. پس اگر پیش از مکانیزمی این گزینه درج شود، آدرس مشخص‌شده در مکانیزم مجاز به ارسال ایمیل نیست.
  • ~ : مکانیزم پذیرفته می‌شود اما آدرس مشخص شده در آن برچسب non-compliant mail می‌خورد.
  • ? : بیان‌گر آن است که مکانیزم نه قبول و نه رد شده است. احتمالن آدرس یا host مطابقت‌یافته با این مکانیزم پذیرفته شود.

مکانیزم‌هایی که می‌توانند در تعریف رکورد SPF استفاده شوند عبارت‌اند از:

  • ip4: برای مشخص کردن آدرس‌های IP مجاز به‌منظور ارسال ایمیل از این مکانیزم استفاده می‌شود. اگر ایمیل سرورها از IPv6 پشتیبانی می‌کنند، می‌توانید به‌جای ip4 از ip6 استفاده کنید.
  • include: با استفاده از این مکانیزم می‌توان ایمیل سرورهایی که خارج از کنترل و مدیریت ما بوده و خدمات ایمیل ارایه می‌دهند را مشخص کرد. برای نمونه include:_spf.google.com.
  • all: این عبارت به همه چیز اشاره دارد و هر آدرس و host با آن مطابقت پیدا می‌کند. معمولن از این عبارت در انتهای سایر مکانیزم‌ها استفاده می‌شود تا شیوه‌ی برخورد با آدرس‌‌های IP که با هیچ‌یک از مکانیزم‌های مشخص شده در خط مطابقت پیدا نکرده‌اند، تعیین شود.
    • +all : به معنای آن است که هر سروری می‌تواند از دامنه‌ی شما برای ارسال ایمیل استفاده کند.
    • -all : اگر از این عبارت در پایان خطی شامل چند مکانیزم استفاده شود، به معنای آن است که هیچ IP یا host دیگری جز آن‌چه در خط مشخص شده، اجازه‌ی ارسال ایمیل ندارد. اگر در تعریف رکورد SPF این گزینه به‌تنهایی به کار رود یعنی هیچ سروری مجاز به ارسال ایمیل نیست.
    • all~ : ایمیل‌ها از سمت سرورهایی جز آن‌چه در سایر مکانیزم‌ها مشخص شده، پذیرفته می‌شوند اما برچسب non-compliant mail می‌خورد.
  • a: این مکانیزم به تمام آدرس‌های درون رکورد A اشاره دارد.
  • mx: این مکانیزم مشخص‌کننده‌ی تمام رکوردهای A مربوط به MX record هر host است.
  • ptr: این مکانیزم مشخص‌کننده‌ی رکوردهای A مربوط به رکورد PTR هر host است.
  • exists: با استفاده از این مکانیزم می‌توان یک یا چند دامنه را به‌عنوان استثنا تعریف کرد.

 

SPF Modifierها

Modifierها ترکیبی از نام و مقداری هستند که به‌وسیله‌ی = از هم متمایز می‌شوند. Modifierها معمولن در انتهای خطِ تعریفِ رکورد SPF قرار می‌گیرند و فقط یک‌بار می‌توان از آن‌ها در تعریف یک رکورد SPF استفاده کرد:

  • redirect: از redirect modifier برای اشاره به SPF رکوردی دیگر استفاده می‌شود. از این مکانیزم می‌توان هنگام اعمال رکورد SPF یک‌سان به چند دامنه استفاده کرد. دقت داشته باشید تنها هنگامی می‌توان از redirect استفاده کرد که مدیریت دامنه‌ی دیگری که redirect به آن انجام می‌شود را نیز در اختیار داشته باشید، وگرنه باید از مکانیزم include استفاده کنید. نمونه‌ای از چگونگی استفاده از این مکانیزم عبارت است از:
v=spf1 redirect=_spf.yourdomain.com
  • exp: با استفاده از این modifier می‌توان توضیحی را در رابطه با دلیل شکست spf query ارایه کرد. این توضیح در SPF log دیده می‌شود. نمونه‌ای از شیوه‌ی استفاده از این مکانیزم عبارت است از:
exp=spf-error

 

تنظیم رکورد SPF در پنل کاربری ابر آروان

برای تنظیم رکورد SPF برای دامنه‌ی خود، به پنل کاربری ابر آروان، بخش DNS ابری، سپس مدیریت رکوردها بروید و در قسمت تنظیمات DNS، نوع رکورد را TXT و عنوان را  @ (این عبارت به دامنه‌ی شما اشاره می‌کند) قرار دهید.

تنظیم رکورد SPF در پنل

سپس روی مقدار کلیک و در پنجره‌ی باز شده خط تعریف رکورد SPF را نوشته و روی ذخیره کلیک کنید.

نهایتن مدت‌زمان اعتبار این رکورد را مقدار مورد نظر خود قرار دهید و روی افزودن کلیک کنید تا این رکورد جدید اضافه شود.

 

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

حالت نخست: ارسال ایمیل از آدرس‌های IP مجاز

اگر قصد دارید تا تنها وب‌سروری که روی آن سرویس ایمیل را فعال کرده‌اید مجاز به ارسال ایمیل باشد (برای نمونه تصور کنید آدرس IP وب‌سرور شما که مجاز به ارسال ایمیل است: 192.168.243.1 است)، در بخش عنوان، کاراکتر @ و در بخش مقدار عبارتی همانند زیر درج کنید:

v=spf1 ip4:192.168.243.1

در انتهای عبارت بالا می‌توانید از گزینه‌های +a و +mx نیز استفاده کنید.

 

حالت دوم: ارسال ایمیل از mailgun.org

به‌محض ثبت دامنه در ایمیل سرویس mailgun، این سرویس مقدار رکورد SPF را در اختیار شما قرار می‌دهد.

سپس این عبارت را در بخش مقدار، در تنظیمات DNS قرار دهید. هم‌چنین برای کسب اطلاعات بیش‌تر می‌توانید راهنمای mailgun در این زمینه را بخوانید.

 

حالت سوم: ارسال ایمیل از G suite

برطبق راهنمای گوگل، مقدار رکورد TXT باید به شکل زیر تعیین شود:

v=spf1 include:_spf.google.com ~all

هم‌چنین اگر از چند دامنه دیگر جز گوگل نیز استفاده می‌کنید، این مقدار می‌تواند به یکی از دو روش زیر تعریف شود:

v=spf1 ip4:172.16.254.1 include:_spf.google.com ~all

یا

v=spf1 include:serverdomain.com include:_spf.google.com ~all

برای کسب اطلاع بیش‌تر می‌توانید راهنمای G suite در این زمینه را بخوانید.

× برای اطلاع از آخرین اخبار و مقالات آروان عضو خبرنامه ما شوید