این راهنما فرآیند پیکربندی SPF، DKIM و DMARC را به شما نشان می دهد - سه جزء حیاتی برای بهبود عملکرد ارسال ایمیل.
پیکربندی مناسب SPF، DKIM و DMARC باعث افزایش اعتماد سرورهای ایمیل می شود و احتمال ورود نامه های شما به هرزنامه را به حداقل می رساند.
- SPF (Sender Policy Framework) یک اقدام امنیتی است که برای جلوگیری از ارسال ایمیل توسط دیگران توسط شما طراحی شده است. تعیین می کند که کدام آدرس های IP مجاز به ارسال ایمیل هستند و کدام ها مجاز نیستند.
- DKIM (DomainKeys Identified Mail) یک روش احراز هویت پیام است. هنگامی که هر ایمیل ارسال می شود، با کلید خصوصی امضا می شود و سپس در سرور ایمیل دریافت کننده (یا ارائه دهنده خدمات اینترنت) با کلید عمومی DNS تأیید می شود.
- DMARC (تأیید هویت، گزارش و انطباق پیام مبتنی بر دامنه) از SPF و DKIM برای احراز هویت ایمیل، کاهش حملات هرزنامه و فیشینگ استفاده می کند.
پیکربندی SPF (چارچوب خط مشی فرستنده)
1.1. برای پیکربندی SPF، یک رکورد TXT باید به تنظیمات DNS دامنه شما اضافه شود.
1.2. این سینتکس زیر رکورد SPF است:
- v=spf1: یک نسخه SPF مورد استفاده شما را تعیین می کند. امروزه فقط از SPF1 استفاده می شود.
- ip4:[Your_Mail_Server_IP]: نشان می دهد که آدرس IP سرور ایمیل شما مجاز به ارسال ایمیل از طرف دامنه شما است.
- a: مشخص می کند که اگر دامنه ای دارای یک رکورد A (آدرس IPv4) در DNS باشد، سرور مشخص شده در آن رکورد می تواند از طرف دامنه ایمیل ارسال کند.
- mx: نشان می دهد که اگر دامنه ای دارای رکورد MX (مبادله نامه) در DNS باشد، سرور مشخص شده در این رکورد می تواند از طرف دامنه ایمیل ارسال کند.
- ~all: نشان می دهد که فقط سرورهای موجود در رکورد SPF می توانند از طرف دامنه ایمیل ارسال کنند. اگر ایمیل از سرور دیگری باشد، به عنوان "نرم تطابق" (~) علامت گذاری می شود، به این معنی که می توان آن را پذیرفت، اما به عنوان هرزنامه احتمالی علامت گذاری شد.
این عناصر با هم یک SPF را تشکیل می دهند که به شکل زیر است:
نام: [Your_Domain]
v=spf1 ip4:[Your_Mail_Server_IP] a mx ~all
آدرس IP سرور ایمیل خود را جایگزین [Your_Mail_Server_IP] کنید.
پیکربندی DKIM (DomainKeys Identified Mail).
2.1. ابتدا opendkim و opendkim-tools را نصب کنید. فرآیند نصب بستگی به سیستم عامل دارد:
برای CentOS:
yum install opendkim -y
برای دبیان/اوبونتو:
apt install opendkim opendkim-tools -y
2.2. در مرحله بعد، سرویس opendkim را راه اندازی کنید و راه اندازی آن را در هنگام بوت فعال کنید:
systemctl start opendkim
systemctl enable opendkim
2.3. یک دایرکتوری برای ذخیره سازی کلیدها ایجاد کنید:
mkdir -p /etc/opendkim/keys/yourdomain.com
2.4. با استفاده از ابزار opendkim-genkey کلیدها را ایجاد کنید:
opendkim-genkey --directory /etc/opendkim/keys/yourdomain.com/ --domain yourdomain.com --selector dkim
فراموش نکنید که 'yourdomain.com' را با نام دامنه واقعی خود جایگزین کنید.
2.5. تنظیم مجوزهای مناسب برای کلیدها:
chown -R opendkim:opendkim /etc/opendkim/keys/yourdomain.com
2.6. اکنون باید opendkim را پیکربندی کنیم. فایل /etc/opendkim.conf را باز کنید و تنظیمات زیر را اضافه کنید:
AutoRestart Yes
AutoRestartRate 10/1h
Umask 002
Syslog Yes
SyslogSuccess Yes
LogWhy Yes
Canonicalization relaxed/simple
ExternalIgnoreList refile:/etc/opendkim/TrustedHosts
InternalHosts refile:/etc/opendkim/TrustedHosts
KeyTable refile:/etc/opendkim/KeyTable
SigningTable refile:/etc/opendkim/SigningTable
Mode sv
PidFile /var/run/opendkim/opendkim.pid
SignatureAlgorithm rsa-sha256
UserID opendkim:opendkim
Socket inet:8891@localhost
2.7. دامنه خود را به فایل /etc/opendkim/TrustedHosts اضافه کنید
127.0.0.1
localhost
*.yourdomain.com
2.8. فایل /etc/opendkim/KeyTable را به شکل زیر ویرایش کنید:
dkim._domainkey.yourdomain.com yourdomain.com:dkim:/etc/opendkim/keys/yourdomain.com/dkim.private
2.9. فایل /etc/opendkim/SigningTable را تغییر دهید. برای اینکه اینجوری به نظر برسه
*@yourdomain.com dkim._domainkey.yourdomain.com
2.10. اگر از Debian/Ubuntu استفاده می کنید، پورت opendkim را مشخص کنید:
echo 'SOCKET="inet:8891@localhost"' >> /etc/default/opendkim
2.11. برای اعمال تغییرات، سرویس opendkim را مجددا راه اندازی کنید:
systemctl restart opendkim
2.12. در نهایت، کلید عمومی را به تنظیمات DNS دامنه خود اضافه کنید. کلیدها در /etc/opendkim/keys/yourdomain.com/dkim.txt هستند.
پیکربندی DMARC (تأیید هویت، گزارش و انطباق پیام مبتنی بر دامنه)
3.1. برای پیکربندی DMARC، یک رکورد TXT به تنظیمات دامنه خود اضافه کنید:
Name: _dmarc.[Your_Domain].
Значение: v=DMARC1; p=none; aspf=r; sp=none
نام دامنه خود را جایگزین [Your_Domain] کنید.
پیکربندی PTR (رکورد اشاره گر).
4.1. رکورد PTR که به عنوان رکورد DNS معکوس نیز شناخته می شود، برای تبدیل یک آدرس IP به نام دامنه استفاده می شود. این برای سرورهای پست مهم است زیرا برخی از سرورها ممکن است پیامهای بدون رکورد PTR را رد کنند.
4.2. رکورد PTR معمولاً در تنظیمات ارائه دهنده خدمات اینترنت یا ارائه دهنده میزبان پیکربندی می شود. اگر به این تنظیمات دسترسی دارید، می توانید یک رکورد PTR را با تعیین آدرس IP سرور خود و نام دامنه مربوط به آن تنظیم کنید.
4.3. اگر به تنظیمات ضبط PTR دسترسی ندارید، با ارائه دهنده خدمات اینترنت یا ارائه دهنده میزبانی خود با درخواست پیکربندی رکورد PTR تماس بگیرید.
4.4. پس از نصب PTR، می توانید آن را با استفاده از دستور dig در لینوکس بررسی کنید:
dig -x your_server_IP
آدرس IP سرور خود را جایگزین «your_server_IP» کنید. پاسخ باید شامل نام دامنه شما باشد.
پس از تکمیل تمام مراحل پیکربندی SPF، DKIM و DMARC، سرور ایمیل کمتر احتمال دارد که نامههای شما را بهعنوان هرزنامه علامتگذاری کند - تضمین میکند که نامههای شما به دست گیرندگان میرسد.