چگونه یک سرور ایمیل SMTP روی سرور ابری هتزنر فعال کنیم؟
آموزش گام به گام فعال‌سازی سرور ایمیل SMTP بر روی سرور ابری هتزنر و جلوگیری از اسپم شدن ایمیل‌ها با تنظیمات مناسب دامنه و هاست.

چگونه یک سرور ایمیل SMTP روی سرور ابری هتزنر فعال کنیم؟

این مقاله به شما یاد می‌دهد که چگونه یک سرور ایمیل SMTP را روی سرور ابری هتزنر راه‌اندازی کنید و از اسپم شدن ایمیل‌ها جلوگیری کنید. با تنظیمات صحیح DNS و احراز هویت، ایمیل‌های امن و قابل اعتمادی ارسال کنید.
0 اشتراک گذاری
0
0
0
0
  1. چطور یک سرور SMTP روی هتزنر راه‌اندازی کنیم که ایمیل ارسال کند و اسپم نشود؟
  2. معماری پیشنهادی و نکات اولیه
  3. مراحل آماده‌سازی سرور ارسال (هتزنر)
    1. نصب بسته‌های پایه (Debian/Ubuntu)
    2. تنظیم hostname و PTR
    3. پیکربندی TLS با Let’s Encrypt
    4. تنظیمات پایه Postfix (گزیده main.cf)
    5. فعال‌سازی SASL با Dovecot (برای اعتبارسنجی کاربران ارسال‌کننده)
  4. DKIM، SPF و DMARC — پیکربندی DNS
    1. تولید کلید DKIM با OpenDKIM
    2. رکورد SPF
    3. رکورد DMARC
  5. دریافت ایمیل روی سرور دیگر و مدیریت Bounce
    1. نحوه تنظیم MX برای دریافت
    2. کانفیگ Return-Path و مدیریت Bounce
    3. نمونه روند پردازش bounce با flanker (پایتون)
  6. جلوگیری از اسپم شدن — بهترین شیوه‌ها
    1. تنظیمات فنی
    2. سیاست‌های محتوا و لیست‌ها
  7. کنترل نرخ ارسال، صف و جلوگیری از ریپوتیشن منفی
  8. تست و ابزارها برای بررسی deliverability
  9. مثال کامل روند: ارسال از اپلیکیشن A با استفاده از هتزنر به‌عنوان relay
  10. نکات امنیتی و عملیاتی تکمیلی
  11. ابزارهای متن‌باز پیشنهادی برای اتوماسیون (رایگان)
  12. پیوند با خدمات شرکت (۸۵+ لوکیشن و سرویس‌ها)
  13. نکته پایانی

چطور یک سرور SMTP روی هتزنر راه‌اندازی کنیم که ایمیل ارسال کند و اسپم نشود؟

در این راهنما قدم‌به‌قدم پیاده‌سازی SMTP روی یک سرور ابری هتزنر برای ارسال ایمیل و نگاشت دریافت ایمیل روی سرور دیگر توضیح داده می‌شود. همچنین تنظیمات مهم DNS (SPF، DKIM، DMARC، PTR)، احراز هویت (SASL/TLS)، مدیریت Bounce و unsubscribe و توصیه‌های عملی برای جلوگیری از قرار گرفتن در فهرست سیاه پوشش داده می‌شود.

معماری پیشنهادی و نکات اولیه

معماری پیشنهادی:

  • سرور ارسال (Hetzner Cloud): نصب Postfix + OpenDKIM + OpenDMARC + TLS — مسئول ارسال ایمیل (SMTP relay).
  • سرور دریافت (مثلاً VPS یا هاست شما): MX رکوردها به این سرور اشاره می‌کنند؛ مسئول تحویل و دریافت ورودی‌ها (POP/IMAP/Dovecot یا سرویس ایمیل شما).
  • صندوق مخصوص Bounce و Unsubscribe: بازگشتی‌ها به یک آدرس اختصاصی فرستاده شوند و آن صندوق توسط سروری که دریافت را انجام می‌دهد، پردازش گردد.
  • کاربران/اپلیکیشن‌ها: با استفاده از SMTP AUTH (یا مجوز مبتنی بر IP) روی سرور هتزنر احراز هویت می‌کنند تا اجازه رله داشته باشند.

مراحل آماده‌سازی سرور ارسال (هتزنر)

نصب بسته‌های پایه (Debian/Ubuntu)

مثال برای اوبونتو/دبیان:

sudo apt update
sudo apt install -y postfix dovecot-core dovecot-imapd opendkim opendkim-tools opendmarc certbot postfix-policyd-spf-python rspamd

تنظیم hostname و PTR

تنظیم hostname روی سرور ارسال و ثبت Reverse DNS در پنل هتزنر ضروری است.

sudo hostnamectl set-hostname mail.example.com

نکات تنظیمات Postfix: مقدار myhostname را برابر mail.example.com قرار دهید و در پنل هتزنر برای IP معکوس مقدار mail.example.com را ثبت کنید.

پیکربندی TLS با Let’s Encrypt

صدور گواهی و ارجاع آن در تنظیمات Postfix:

sudo certbot certonly --standalone -d mail.example.com

در main.cf مقادیر زیر را اضافه کنید:

smtpd_tls_cert_file = /etc/letsencrypt/live/mail.example.com/fullchain.pem
smtpd_tls_key_file = /etc/letsencrypt/live/mail.example.com/privkey.pem
smtpd_use_tls = yes
smtp_tls_security_level = may
smtpd_tls_security_level = may

تنظیمات پایه Postfix (گزیده main.cf)

نمونه‌ی گزیده‌ای از تنظیمات مهم در main.cf:

myhostname = mail.example.com
myorigin = /etc/mailname
mydestination = localhost
relay_domains =
mynetworks = 127.0.0.0/8
smtp_tls_security_level = may
smtpd_tls_security_level = may
smtpd_tls_auth_only = yes
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
smtpd_helo_required = yes

توضیح: reject_unauth_destination از استفاده سرور شما به‌عنوان open relay جلوگیری می‌کند؛ فقط کاربران مجاز یا ماشین‌های شناخته‌شده می‌توانند رله کنند.

فعال‌سازی SASL با Dovecot (برای اعتبارسنجی کاربران ارسال‌کننده)

در فایل /etc/dovecot/conf.d/10-master.conf بخش service auth را به این شکل تنظیم کنید:

service auth {
  unix_listener /var/spool/postfix/private/auth {
    mode = 0660
    user = postfix
    group = postfix
  }
}

برای احراز هویت می‌توانید از passwd محلی، پایگاه داده SQL یا LDAP استفاده کنید. سپس سرویس‌ها را ریستارت کنید:

sudo systemctl restart dovecot postfix

DKIM، SPF و DMARC — پیکربندی DNS

تولید کلید DKIM با OpenDKIM

مثال ایجاد کلید DKIM روی سرور ارسال:

sudo mkdir /etc/opendkim/keys/example.com
sudo opendkim-genkey -b 2048 -d example.com -s mail -D /etc/opendkim/keys/example.com

فایل mail.txt تولید می‌شود؛ محتوی رکورد TXT که باید در DNS اضافه شود: selector = mailmail._domainkey.example.com.

نمونه تنظیمات /etc/opendkim.conf (گزیده):

Domain                  example.com
KeyFile                 /etc/opendkim/keys/example.com/mail.private
Selector                mail
AutoRestart             yes
Socket                  local:/var/spool/postfix/opendkim/opendkim.sock

و در /etc/postfix/main.cf اضافه کنید:

milter_default_action = accept
smtpd_milters = unix:/var/spool/postfix/opendkim/opendkim.sock
non_smtpd_milters = $smtpd_milters

رکورد SPF

در DNS دامنه نمونه:

example.com. IN TXT "v=spf1 ip4:YOUR_HETZNER_IP include:spf.protection.example ?all"

یا سخت‌گیرانه‌تر:

"v=spf1 ip4:YOUR_HETZNER_IP -all"

توصیه: در آغاز از ~all یا ?all استفاده کنید تا اشکالات اولیه باعث ریجکت کامل نشود و سپس سخت‌گیرانه‌تر کنید.

رکورد DMARC

نمونه DMARC در DNS:

_dmarc.example.com. IN TXT "v=DMARC1; p=quarantine; rua=mailto:[email protected]; ruf=mailto:[email protected]; pct=100; adkim=s; aspf=s"

نکته: برای شروع می‌توانید p=none بگذارید تا گزارش‌ها را ببینید، سپس p=quarantine یا p=reject را فعال کنید.

دریافت ایمیل روی سرور دیگر و مدیریت Bounce

نحوه تنظیم MX برای دریافت

مثال رکورد MX در DNS:

example.com. IN MX 10 mail-receive.example.org

نکته: MX باید به سرور دریافت اشاره کند؛ ارسال‌کننده شما از هتزنر برای ایمیل خروجی استفاده می‌کند — بنابراین رکورد SPF/DKIM برای دامنه ارسال تنظیم شده باشد.

کانفیگ Return-Path و مدیریت Bounce

چند نکته مهم:

  • Return-Path باید برای مدیریت بازگشتی‌ها مشخص باشد؛ بهتر است به یک ساب‌دامین اختصاصی مثل bounce.example.com اشاره کند.
  • برای هر ایمیل می‌توانید از VERP استفاده کنید: envelope-from="[email protected]" تا بازگشت دقیق‌تر مشخص شود.

پردازش bounces — روند پیشنهادی:

  1. یک آدرس [email protected] بسازید و MX آن را به سروری که پردازش می‌کند اشاره دهید.
  2. آن سرور با fetchmail / getmail یا مستقیم IMAP صندوق را واکشی کند و با اسکریپت‌های پردازش bounce اقدام نماید.
  3. برای پارس کردن bounce می‌توانید از ابزارهایی مانند flanker یا Mail::Delivery::BounceParser استفاده کنید.

نمونه روند پردازش bounce با flanker (پایتون)

ابتدا نصب:

pip install flanker

نمونه اسکریپت ساده (خواندن از stdin و پردازش):

from flanker import mime
from flanker.utils import bounces
import sys

raw = sys.stdin.read()
msg = mime.from_string(raw)
bounce = bounces.parse(raw)
# classify and store bounce info in database or suppression list

با دسته‌بندی hard bounce (خطاهای 5xx) و soft bounce (4xx) می‌توانید سیاست‌های حذف یا تلاش مجدد اعمال کنید.

جلوگیری از اسپم شدن — بهترین شیوه‌ها

تنظیمات فنی

  • PTR همخوان با myhostname و A رکورد باشد.
  • SPF، DKIM، DMARC فعال و DKIM امضا کند.
  • HELO/SMTP banner با hostname منطبق باشد.
  • TLS فعال و smtpd_tls_auth_only = yes برای جلوگیری از ارسال رمزنگاری‌نشده.
  • اجتناب از آی‌پی‌های با سابقه بد و استفاده از rDNS مناسب.

سیاست‌های محتوا و لیست‌ها

  • همیشه از double opt-in برای لیست ایمیل استفاده کنید.
  • هر ایمیل باید لینک unsubscribe ساده و قابل‌فهم داشته باشد؛ در header از List-Unsubscribe استفاده کنید:
List-Unsubscribe: <mailto:[email protected]>, <https://example.com/unsubscribe?email=...>
  • گرم کردن IP (IP warm-up): از روز اول مقدار کم ارسال کنید و به‌تدریج افزایش دهید.
  • حذف یا تگ کردن آدرس‌هایی با bounce یا نرخ شکایت بالا.
  • رعایت قوانین مانند CAN-SPAM و GDPR برای کاربران اروپایی.

کنترل نرخ ارسال، صف و جلوگیری از ریپوتیشن منفی

تنظیمات محدودکننده همزمانی و تاخیر به مقصد در Postfix:

postconf -e "smtp_destination_concurrency_limit = 20"
postconf -e "smtp_destination_rate_delay = 1s"

برای سیاست‌های پیچیده‌تر از policy-daemonها مانند postfwd، policyd یا rspamd استفاده کنید.

مدیریت صف با دستورات Postfix:

postqueue -p
postsuper -d ALLDeferred

تست و ابزارها برای بررسی deliverability

  • برای تست SMTP از swaks استفاده کنید:
swaks --to [email protected] --from [email protected] --server mail.example.com --auth LOGIN --auth-user smtpuser --auth-password smtppass --tls
  • بررسی Headers با mail-tester.com و MXToolbox برای بررسی blacklist و SPF/DKIM/DMARC.
  • مانیتورینگ لاگ‌ها با:
tail -f /var/log/mail.log

تحلیل گزارش‌های DMARC از طریق مقادیر rua و ruf کمک می‌کند مشکلات تحویل را پیدا کنید.

مثال کامل روند: ارسال از اپلیکیشن A با استفاده از هتزنر به‌عنوان relay

  1. اپلیکیشن A به mail.example.com:587 وصل می‌شود با کاربر smtp_user و رمز؛ احراز هویت انجام می‌شود.
  2. سرور هتزنر پس از تایید، ایمیل را خارج می‌کند و DKIM امضا می‌کند؛ SPF و PTR نیز تنظیم شده‌اند.
  3. در صورت بازگشت، bounce به [email protected] فرستاده می‌شود؛ MX برای bounce به سروری که پارس را انجام می‌دهد اشاره دارد.
  4. اپلیکیشن لیست suppression را خوانده و برای bounceهای سخت آدرس را غیرفعال می‌کند.

نکات امنیتی و عملیاتی تکمیلی

  • اطمینان حاصل کنید پورت 25 خروجی روی سرور باز باشد (هتزنر گاهی محدودیت‌های شبکه‌ای دارد).
  • برای جلوگیری از سوءاستفاده، authentication اجباری باشد؛ هرگز server را به‌عنوان open relay نگه ندارید.
  • لاگ‌ها را به سیستم مانیتورینگ (ELK/Graylog) ارسال کنید تا spikeهای ارسال یا پاسخ‌های خطا تحلیل شوند.
  • در صورت حجم بالای ارسال از IP اختصاصی استفاده کنید و آن IP را به‌تدریج گرم کنید.

ابزارهای متن‌باز پیشنهادی برای اتوماسیون (رایگان)

  • Postfix (SMTP)
  • Dovecot (SASL / IMAP)
  • OpenDKIM / OpenDMARC
  • Rspamd برای فیلترینگ و امتیازدهی
  • fetchmail / getmail برای واکشی bounces
  • flanker یا Mail::Delivery::BounceParser برای پردازش bounce
  • postfwd / policyd برای نرخ‌دهی و سیاست‌ها

پیوند با خدمات شرکت (۸۵+ لوکیشن و سرویس‌ها)

اگر دنبال زیرساختی با دسترسی شبکه‌ای گسترده و لوکیشن‌های متنوع هستید، می‌توانید از خدمات مناسب برای انتخاب نزدیک‌ترین دیتاسنتر به مخاطبان‌تان استفاده کنید تا تاخیر کاهش یابد و deliverability بهبود یابد.

  • بیش از ۸۵ لوکیشن جهانی برای انتخاب دیتاسنتر.
  • سرور ابری با عملکرد بالا و IP اختصاصی برای ایمیل مارکتینگ و سرویس‌های SMTP.
  • سرور ضد DDoS، VPSهای متنوع و پشتیبانی تنظیمات شبکه و امنیت.

نکته پایانی

اگر آماده راه‌اندازی هستید، می‌توانید پلن‌های سرور ابری، IP اختصاصی و خدمات مدیریت DNS و امنیت را بررسی کنید یا با تیم فنی تماس گرفته و درخواست پیکربندی اختصاصی، پیاده‌سازی DKIM/DMARC و مدیریت Bounce نمایید. تیم پشتیبانی در دسترس است تا راهنمایی فنی و کمک‌های لازم ارائه کند.

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

راهنمای جامع بهینه‌سازی عملکرد GPU برای یادگیری عمیق

در این مقاله به بررسی بهینه‌سازی عملکرد GPU برای یادگیری عمیق پرداخته‌ایم. با روش‌های عملی و فنی، به شما آموزش می‌دهیم که چگونه با استفاده از سخت‌افزار مناسب و تنظیمات بهینه، کمترین زمان آموزش و بالاترین بهره‌وری را به دست بیاورید.
راهن‌اندازی HA با Proxmox: راهنمای جامع برای کلاسترهای تولیدی

راه‌اندازی HA با Proxmox: راهنمای جامع برای کلاسترهای تولیدی

این راهنمای جامع به شما کمک می‌کند تا با راه‌اندازی HA با Proxmox، یک کلاستر تولیدی پایدار بسازید. از مراحل اولیه نصب تا پیکربندی‌های امنیتی و عملی، تمامی نکات به تفصیل توضیح داده شده است.
ساخت اپلیکیشن وب سرورلس با قابلیت‌های هوش مصنوعی با AWS Amplify

ساخت اپلیکیشن وب سرورلس با قابلیت‌های هوش مصنوعی با AWS Amplify

این مقاله به شما آموزش می‌دهد که چگونه یک اپلیکیشن وب سرورلس بسازید که از قابلیت‌های مولد (Generative AI) استفاده می‌کند، با استفاده از AWS Amplify و دیگر خدمات AWS. به بررسی امنیت، بهینه‌سازی هزینه و انتخاب لوکیشن دیتاسنتر می‌پردازد.
اتوماسیون تولید کمپین ایمیلی شخصی‌سازی‌شده با LLM اجرا شده روی VPS

اتوماسیون تولید کمپین ایمیلی شخصی‌سازی‌شده با LLM اجرا شده روی VPS

در این مقاله به بررسی اتوماسیون تولید کمپین ایمیلی شخصی‌سازی‌شده با استفاده از مدل‌های زبانی بر روی VPS پرداخته می‌شود. شما یاد می‌گیرید چگونه LLM را مستقر کرده، ایمیل‌های هدف‌گذاری‌شده تولید کنید و با تنظیمات مTA و سیاست‌های امنیتی، نرخ تبدیل کمپین‌ها را افزایش دهید.
نصب SourceGuardian در دایرکت ادمین: راهنمای قدم‌به‌قدم

آموزش نصب SourceGuardian در دایرکت ادمین

در این مقاله، به شما آموزش می‌دهیم که چگونه SourceGuardian را روی کنترل پنل دایرکت‌ادمین نصب کنید. با این راهنما می‌توانید از رمزگذاری‌های PHP به‌صورت امن و کارآمد استفاده کنید. به‌طور خاص، به نکات مربوط به نسخه‌های مختلف PHP و محیط‌های سرور پرداخته شده است.
راهنمای کامل خودکارسازی گرم‌‌سازی IP و دامنه برای سرور ایمیل

راهنمای کامل خودکارسازی گرم‌‌سازی IP و دامنه برای سرور ایمیل

در این مقاله به بررسی کامل فرایند گرم‌سازی IP و دامنه برای سرور ایمیل می‌پردازیم. با روش‌های خودکار این فرایند، می‌توانید اعتبارسنجی بهتری داشته باشید و از ورود ایمیل‌ها به پوشه spam جلوگیری کنید. همچنین به نکات فنی، مدیریتی و بهترین شیوه‌ها در این زمینه پرداخته‌ایم.
آموزش کامل RAID سرور سخت‌افزاری و نرم‌افزاری

آموزش کامل RAID سرور سخت‌افزاری و نرم‌افزاری

این مقاله به آموزش کامل RAID در سرورهای سخت‌افزاری و نرم‌افزاری می‌پردازد و شامل مفاهیم، مزایا، نحوه پیاده‌سازی و نکات کلیدی است. با مطالعه این راهنما می‌توانید بهترین گزینه RAID را با توجه به نیازهای خود انتخاب کنید.