چگونه یک سرور ایمیل 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=検疫 または p=拒否 活性化。.

دریافت ایمیل روی سرور دیگر و مدیریت 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 رکورد باشد.
  • SPFDKIMDMARC فعال و 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ها مانند postfwdpolicyd または rspamd 使用。.

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

postqueue -p
postsuper -d ALLDeferred

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

  • برای تست SMTP از スワック 使用:
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 بهبود یابد.

  • より多い 85か所 جهانی برای انتخاب دیتاسنتر.
  • سرور ابری با عملکرد بالا و IP اختصاصی برای ایمیل مارکتینگ و سرویس‌های SMTP.
  • سرور ضد DDoS، VPSهای متنوع و پشتیبانی تنظیمات شبکه و امنیت.

نکته پایانی

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

あなたも気に入るかもしれない
cPanel の技術的および高度なトピック

技術的なトピックと高度なcPanelツール

ホスティング管理にcPanelをご利用の場合、ファイルマネージャーやメールといった一般的な機能については既にご存知でしょう。しかし、cPanelには、ウェブサイトの速度、セキュリティ、安定性を大幅に向上させる、より高度で技術的な機能も備わっています。.
aapanelホスティング管理の機能と設定に関する完全ガイド

aapanelホスティング管理の機能と設定に関する完全ガイド

aaPanelは、ホスティングとアプリケーション管理のための多機能で効率的なコントロールパネルです。この記事では、その主要機能、インストール方法、データベース管理、セキュリティ、WHMCSとの連携について解説しており、ウェブマスターや開発者にとって役立つ内容となっています。.
TLSとSSLのキーの違いとその重要性を理解する

TLSとSSLの違い、歴史、そしてWebセキュリティにおける重要性

Webセキュリティといえば、「SSL」と「TLS」という言葉が頻繁に耳にします。しかし、この2つの違いは一体何なのでしょうか?なぜ今日、安全なWeb標準としてTLSが使用され、SSLはほぼ廃れてしまったのでしょうか?この記事では、このトピックを専門的に考察し、Webセキュリティプロトコルの理解を深め、適切なプロトコルを選択することの重要性について解説します。.