~2 min read • Updated Jan 27, 2026
1. چرا OpenDKIM و OpenDMARC حیاتیاند؟
در دنیای امروز، بدون DKIM و DMARC:
- ایمیلها بهاحتمال زیاد وارد Spam میشوند
- Gmail / Outlook به دامنهٔ شما اعتماد نمیکنند
- هر کسی میتواند از نام دامنهٔ شما ایمیل جعلی ارسال کند
اینها امنیت محتوایی نیستند؛ امنیت هویتی هستند.
2. جایگاه DKIM و DMARC در معماری iRedMail
Outgoing Mail ↓ Postfix ↓ OpenDKIM ← امضای دیجیتال ↓ Internet ↓ Receiver Mail Server ↓ OpenDMARC ← بررسی سیاست
DKIM = امضا | DMARC = سیاست تصمیمگیری
3. OpenDKIM چیست؟
OpenDKIM ایمیلهای خروجی را با کلید خصوصی دامنه امضا میکند. سرور گیرنده:
- امضا را با Public Key موجود در DNS بررسی میکند
- مطمئن میشود ایمیل دستکاری نشده
- هویت فرستنده را تأیید میکند
4. اجزای OpenDKIM
- opendkim (daemon)
- Key Table
- Signing Table
- DNS TXT Record
مسیرهای مهم:
| مسیر | توضیح |
|---|---|
| /etc/opendkim/ | تنظیمات اصلی |
| keys/ | کلیدهای DKIM |
| opendkim.conf | فایل تنظیمات |
| /var/log/maillog | لاگها |
5. تولید DKIM Key در iRedMail
amavisd-new genrsa /var/lib/dkim/example.com.pem 2048
نمایش Public Key:
amavisd-new showkey example.com
6. رکورد DNS برای DKIM
نمونه رکورد:
dkim._domainkey.example.com TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkq..."
برای تست، TTL را کوتاه بگذار.
7. تست DKIM
opendkim-testkey -d example.com -s dkim
یا ارسال ایمیل به Gmail و بررسی:
DKIM=PASS
8. OpenDMARC چیست؟
OpenDMARC سیاستهای DMARC را اعمال میکند. DMARC مشخص میکند اگر SPF یا DKIM fail شد چه اتفاقی بیفتد:
- Accept
- Quarantine
- Reject
9. نمونه رکورد DMARC
v=DMARC1; p=none; rua=mailto:[email protected]; ruf=mailto:[email protected]; fo=1
Policyها:
| p | معنی |
|---|---|
| none | فقط گزارش |
| quarantine | ارسال به Spam |
| reject | رد کامل |
10. پیشنهاد مرحلهای DMARC
- p=none (فقط مانیتور)
- p=quarantine
- p=reject
عجله نکن؛ اگر سریع به reject بروی، inbox rate میریزد.
11. گزارشهای DMARC
گزارشهای XML روزانه از:
- Gmail
- Yahoo
- Microsoft
ابزارهای خواندن:
- dmarcian
- Mail Analyzer
12. لاگها
grep dkim /var/log/maillog grep dmarc /var/log/maillog
13. خطاهای رایج
❌ DKIM fail
- DNS اشتباه
- selector mismatch
❌ DMARC reject ناخواسته
- SPF ناقص
- DKIM ناقص
14. Best Practice حرفهای
- استفاده از DKIM با کلید 2048-bit
- یک selector برای هر دامنه
- DMARC مرحلهای
- مانیتور گزارشها
15. بدون DKIM / DMARC چه میشود؟
| وضعیت | نتیجه |
|---|---|
| بدون DKIM | Spam |
| بدون DMARC | Spoofing |
| تنظیم اشتباه | Reject ایمیلهای سالم |
نتیجهگیری
OpenDKIM هویت ایمیل را امضا میکند و OpenDMARC سیاست اعتماد را اعمال میکند. بدون این دو، ایمیل مدرن عملاً بیمعناست. با تنظیم درست، دامنهٔ شما معتبر، امن و قابلاعتماد خواهد بود.
Written & researched by Dr. Shahin Siami