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

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

این مقاله به شما یاد می‌دهد که چگونه یک سرور ایمیل SMTP را روی سرور ابری هتزنر راه‌اندازی کنید و از اسپم شدن ایمیل‌ها جلوگیری کنید. با تنظیمات صحیح DNS و احراز هویت، ایمیل‌های امن و قابل اعتمادی ارسال کنید.
0 Aktien
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 و توصیه‌های عملی برای جلوگیری از قرار گرفتن در فهرست سیاه پوشش داده می‌شود.

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

Vorgeschlagene Architektur:

  • سرور ارسال (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: Menge myhostname را برابر mail.example.com قرار دهید و در پنل هتزنر برای IP معکوس مقدار mail.example.com را ثبت کنید.

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

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

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

In 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

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

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

In der Datei /etc/dovecot/conf.d/10-master.conf Abschnitt 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

Datei 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 Hinzufügen:

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"

Empfehlung: در آغاز از ~all Oder ?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"

Notiz: برای شروع می‌توانید p=none بگذارید تا گزارش‌ها را ببینید، سپس p = Quarantäne Oder p = ablehnen Aktivieren.

دریافت ایمیل روی سرور دیگر و مدیریت 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 Oder Mail::Delivery::BounceParser Verwenden.

نمونه روند پردازش 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 رکورد باشد.
  • Lichtschutzfaktor, DKIM, DMARC فعال و DKIM امضا کند.
  • HELO/SMTP banner با hostname منطبق باشد.
  • TLS فعال و smtpd_tls_auth_only = yes برای جلوگیری از ارسال رمزنگاری‌نشده.
  • اجتناب از آی‌پی‌های با سابقه بد و استفاده از rDNS مناسب.

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

  • Immer von double opt-in برای لیست ایمیل استفاده کنید.
  • هر ایمیل باید لینک unsubscribe ساده و قابل‌فهم داشته باشد؛ در header از List-Unsubscribe Verwenden:
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 Oder rspamd Verwenden.

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

postqueue -p
postsuper -d ALLDeferred

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

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

تحلیل گزارش‌های DMARC از طریق مقادیر rua Und 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 بهبود یابد.

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

نکته پایانی

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

Das könnte Ihnen auch gefallen
TLS vs. SSL – Die wichtigsten Unterschiede verstehen und warum sie wichtig sind

TLS vs. SSL – Unterschiede, Geschichte und Bedeutung für die Websicherheit

Wenn es um Websicherheit geht, fallen ständig die Begriffe «SSL» und «TLS». Doch worin genau besteht der Unterschied zwischen den beiden? Warum gilt TLS heute als sicherer Webstandard, während SSL fast in Vergessenheit geraten ist? In diesem Artikel beleuchten wir dieses Thema professionell, um Ihnen ein besseres Verständnis von Websicherheitsprotokollen und der Bedeutung der richtigen Wahl zu vermitteln.