~2 دقیقه مطالعه • بروزرسانی ۷ بهمن ۱۴۰۴

1. iRedAPD چیست؟


iRedAPD یک Policy Server برای Postfix است. این سرویس:

  • ایمیل را اسکن نمی‌کند
  • اسپم تشخیص نمی‌دهد
  • محتوای ایمیل را نمی‌بیند

فقط تصمیم می‌گیرد که یک عملیات SMTP مجاز است یا خیر.


2. جایگاه iRedAPD در معماری iRedMail


Client / Internet
      ↓
    Postfix
      ↓  (policy check)
   iRedAPD  ← تصمیم‌گیری
      ↓
 Amavis / Queue

iRedAPD مستقیماً با Postfix صحبت می‌کند.


3. وظایف اصلی iRedAPD


1️⃣ Rate Limiting

  • محدودیت تعداد ایمیل در ساعت/روز
  • جلوگیری از spam burst

2️⃣ Sender Restrictions

  • جلوگیری از ارسال ایمیل با آدرس جعلی
  • اجبار به تطابق login با sender

3️⃣ Recipient Restrictions

  • جلوگیری از abuse به یک گیرنده خاص

4️⃣ Greylisting (اختیاری)

  • کاهش اسپم‌های خودکار

4. اجزای iRedAPD


  • iredapd (daemon) — سرویس اصلی نوشته‌شده با Python
  • Backend Database — MariaDB/MySQL یا PostgreSQL

5. مسیرهای مهم iRedAPD


مسیرتوضیح
/opt/iredapd/برنامه اصلی
/opt/iredapd/settings.pyفایل تنظیمات
/etc/postfix/main.cfاتصال به Postfix
/var/log/iredapd/لاگ‌ها

6. اتصال iRedAPD به Postfix


در فایل main.cf:

smtpd_recipient_restrictions =
    permit_mynetworks,
    permit_sasl_authenticated,
    check_policy_service inet:127.0.0.1:7777

پورت پیش‌فرض: 7777


7. تنظیمات مهم settings.py


مسیر:

/opt/iredapd/settings.py

7.1 فعال/غیرفعال کردن پلاگین‌ها

plugins = [
    'reject_null_sender',
    'reject_sender_login_mismatch',
    'throttle',
]

7.2 Rate Limit (بسیار مهم)

THROTTLE_SENDER = {
  'inbound': (60, 3600),
  'outbound': (200, 3600),
}

یعنی: ۲۰۰ ایمیل در ساعت برای outbound.

7.3 جلوگیری از Spoofing

REJECT_SENDER_LOGIN_MISMATCH = True

8. لاگ‌ها و Debug


مشاهده لاگ:

tail -f /var/log/iredapd/iredapd.log

نمونه پیام:

REJECT Throttled sender

9. نکات امنیتی مهم


  • Rate limit را جدی بگیر
  • Outbound را سخت‌تر از inbound تنظیم کن
  • Greylisting فقط اگر SMTP قوی داری
  • iRedAPD همیشه باید up باشد

10. خطاهای رایج


ایمیل ارسال نمی‌شود

  • Limit خیلی پایین است
  • پلاگین اشتباه فعال شده

سرور بلک‌لیست شده

  • iRedAPD غیرفعال بوده
  • Outbound بدون محدودیت بوده

11. مقایسه iRedAPD با Rspamd (در لایه Policy)


ویژگیiRedAPDRspamd
Rate limit
Greylisting
سادگی
مدرن بودن

نتیجه‌گیری


iRedAPD خط دفاعی قبل از ورود ایمیل به Queue است. اگر اشتباه تنظیم شود، می‌تواند باعث اختلال جدی در ارسال/دریافت ایمیل شود؛ اما اگر درست پیکربندی شود، امنیت، کنترل و آرامش کامل را برای سرور ایمیل فراهم می‌کند. این سرویس از spoofing جلوگیری می‌کند، ترافیک خروجی را کنترل می‌کند و سلامت کلی Mail Server را تضمین می‌کند.


نوشته و پژوهش شده توسط دکتر شاهین صیامی