ارسال و دریافت ایمیل، قلب تپنده ارتباطات تجاری در دنیای امروز است. کانفیگ سرور ایمیل (Mail Server) اختصاصی، به شما قدرتی می‌دهد که هیچ سرویس اشتراکی یا رایگانی نمی‌تواند ارائه دهد: کنترل کامل بر داده‌ها، عدم محدودیت در تعداد کاربران و امنیت سفارشی‌سازی شده. اگر به دنبال استقلال از سرویس‌دهنده‌هایی مثل جیمیل یا یاهو برای کسب‌وکار خود هستید و می‌خواهید یک سیستم آموزش کانفیگ Mail Server را به صورت عملی پیاده‌سازی کنید، جای درستی آمده‌اید.
💡 سرور ایمیل (Mail Server) چیست؟
نرم‌افزاری است که وظیفه دریافت، مسیریابی و تحویل ایمیل‌ها را بر عهده دارد، درست مانند اداره پست در دنیای اینترنت.
✅ با راه‌اندازی سرور شخصی، دیگر نگران مسدود شدن اکانت توسط قوانین سخت‌گیرانه سرویس‌های اشتراکی نخواهید بود.
حتماً زمانی که این مقاله را باز کرده‌اید، به دنبال راهکاری هستید تا از شر هزینه‌های لایسنس کنترل‌پنل‌هایی مثل cPanel خلاص شوید و یا می‌خواهید دانش فنی خود را در لینوکس به چالش بکشید. ما در اینجا قصد داریم کانفیگ Mail Server را به زبان ساده اما کاملاً فنی بررسی کنیم. برخلاف بسیاری از آموزش‌های سطحی، ما به عمق ماجرا می‌رویم: اتصال Postfix به دیتابیس MySQL برای مدیریت هزاران کاربر مجازی. 😉👇
کانفیگ سرور ایمیل

معماری سرور ایمیل (Postfix و Dovecot) چیست؟

قبل از اینکه وارد دستورات ترمینال شویم، باید بدانیم زیر کاپوت چه خبر است. کانفیگ سرور ایمیل نیازمند درک تعامل بین سه اجزای اصلی است. تصور کنید سرور ایمیل شما یک اداره پست مرکزی است.
Postfix (MTA): نقش مامور پست و کامیون‌های حمل‌ونقل را دارد. وظیفه آن انتقال ایمیل‌ها از فرستنده به گیرنده (SMTP) است.
Dovecot (MDA/POP3/IMAP): نقش صندوق پستی شخصی شما را دارد. ایمیل‌ها را تحویل می‌گیرد، ذخیره می‌کند و به کاربر اجازه می‌دهد آن‌ها را بخواند.
MySQL/MariaDB: نقش دفترچه تلفن و لیست مشترکین را بازی می‌کند. به جای ساخت یوزر در لینوکس، اطلاعات ورود و آدرس‌ها را در دیتابیس نگه می‌داریم (Virtual Users).
📝 نمودار جریان ایمیل:
ارسال کننده (Outlook/Webmail)
      ⬇️
   اینترنت
      ⬇️
[سرور شما]
┌──────────────────────────────┐
│  Postfix (SMTP - پورت 25)    │⬅️ چک کردن مقصد
├─────────────┬────────────────┤
│             ⬇️               │
│ MySQL (لیست کاربران و دامنه‌ها) │
│             ⬇️               │
│ Dovecot (ذخیره در دیسک/Maildir)│
└─────────────┬────────────────┘
              ⬇️
      دریافت کننده (IMAP - پورت 143)
🔸 در سال 2025، استفاده از کاربران مجازی (Virtual Users) در MySQL استاندارد طلایی است. این روش امنیت را بالا می‌برد زیرا برای هر ایمیل نیازی به ساخت یک کاربر واقعی لینوکس (Shell User) که دسترسی به سیستم عامل داشته باشد، نیست.

چرا به کانفیگ Mail Server اختصاصی نیاز داریم؟

شاید بپرسید چرا وقتی سرویس‌های آماده هستند، باید دردسر آموزش کانفیگ Mail Server را به جان بخریم؟ پاسخ در “مقیاس‌پذیری” و “حریم خصوصی” نهفته است.
مالکیت داده‌ها: ایمیل‌های سازمانی شما در سرور خودتان است، نه در دیتاسنترهای شرکت‌های ثالث که ممکن است داده‌های شما را تحلیل کنند.
کاهش هزینه‌ها: سرویس‌های تجاری ایمیل معمولاً به ازای هر کاربر (Per User) هزینه می‌گیرند. در سرور اختصاصی، هزینه شما ثابت است، چه 10 کاربر داشته باشید چه 10,000 کاربر.
سفارشی‌سازی: می‌توانید محدودیت‌های حجم ضمیمه (Attachment Size) یا تعداد ارسال روزانه را خودتان تعیین کنید.
کنترل کامل: هیچ محدودیتی در تعداد دامنه‌ها یا ایمیل‌ها ندارید.

پیش نیازها و شرایط لازم برای کانفیگ سرور ایمیل

برای شروع کانفیگ Mail Server، شما به ابزارها و شرایط خاصی نیاز دارید. بدون این موارد، ایمیل‌های شما به احتمال 99% وارد پوشه اسپم (Spam) می‌شوند.

الزامات:

  • سرور مجازی (VPS): حداقل 2GB RAM، 20GB دیسک (پیشنهاد: Ubuntu 22.04 و بالاتر)
  • دامنه (Domain): یک نام دامنه ثبت شده
  • IP استاتیک تمیز: نه در بلک‌لیست
  • دسترسی root: برای نصب و پیکربندی

تنظیمات حیاتی DNS:

# A Record
mail.yourdomain.com.    IN  A    192.0.2.1

# MX Record
yourdomain.com.         IN  MX   10 mail.yourdomain.com.

# PTR (Reverse DNS) - از هاستینگ درخواست کنید
1.2.0.192.in-addr.arpa. IN PTR mail.yourdomain.com.

# SPF Record
yourdomain.com.         IN  TXT  "v=spf1 mx ip4:192.0.2.1 ~all"

# DMARC Record
_dmarc.yourdomain.com.  IN  TXT  "v=DMARC1; p=quarantine; rua=mailto:[email protected]"

آموزش کانفیگ سرور ایمیل گام‌به‌گام

در این بخش همراه تیم وب‌داده باشید تا به صورت عملی و گام‌به‌گام، کانفیگ سرور ایمیل را انجام دهیم. ما از سیستم عامل Ubuntu استفاده می‌کنیم.
📝 سناریوی آموزش:
  • دامنه فرضی: example.com
  • ساب‌دامین سرور: mail.example.com
  • دیتابیس: MariaDB
  • IP سرور: 192.0.2.1

1- آماده‌سازی سیستم

# بروزرسانی سیستم
sudo apt update && sudo apt upgrade -y

# تنظیم hostname
sudo hostnamectl set-hostname mail.example.com

# ویرایش /etc/hosts
sudo nano /etc/hosts
محتوای /etc/hosts:
127.0.0.1 localhost
192.0.2.1 mail.example.com mail

2- نصب پکیج‌های ضروری

sudo apt install postfix postfix-mysql dovecot-core dovecot-imapd dovecot-pop3d dovecot-lmtpd dovecot-mysql mariadb-server opendkim opendkim-tools -y
در حین نصب Postfix:
  • انتخاب کنید: Internet Site
  • System mail name: example.com

3- ساخت دیتابیس و جداول

sudo mysql -u root -p
CREATE DATABASE mailserver CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

CREATE USER 'mailuser'@'localhost' IDENTIFIED BY 'StrongPassword123!';
GRANT ALL PRIVILEGES ON mailserver.* TO 'mailuser'@'localhost';
FLUSH PRIVILEGES;

USE mailserver;

CREATE TABLE virtual_domains (
    id INT NOT NULL AUTO_INCREMENT,
    name VARCHAR(50) NOT NULL,
    PRIMARY KEY (id),
    UNIQUE KEY (name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE virtual_users (
    id INT NOT NULL AUTO_INCREMENT,
    domain_id INT NOT NULL,
    email VARCHAR(120) NOT NULL,
    password VARCHAR(150) NOT NULL,
    PRIMARY KEY (id),
    UNIQUE KEY (email),
    FOREIGN KEY (domain_id) REFERENCES virtual_domains(id) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE virtual_aliases (
    id INT NOT NULL AUTO_INCREMENT,
    domain_id INT NOT NULL,
    source VARCHAR(120) NOT NULL,
    destination VARCHAR(120) NOT NULL,
    PRIMARY KEY (id),
    FOREIGN KEY (domain_id) REFERENCES virtual_domains(id) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

INSERT INTO virtual_domains (name) VALUES ('example.com');

EXIT;

4- ساخت کاربر ایمیل با Hash Password

# نصب ابزار doveadm (باید Dovecot نصب باشد)
doveadm pw -s SHA512-CRYPT -p YourPassword123
خروجی مثال:
{SHA512-CRYPT}$6$rounds=5000$...hashstring...
اضافه کردن به دیتابیس:
sudo mysql -u root -p mailserver
INSERT INTO virtual_users (domain_id, email, password) 
VALUES (
    1, 
    '[email protected]', 
    '{SHA512-CRYPT}$6$rounds=5000$...hashstring...'
);

SELECT * FROM virtual_users;
EXIT;

5- ساخت کاربر vmail

# ساخت گروه و کاربر سیستمی
sudo groupadd -g 5000 vmail
sudo useradd -g vmail -u 5000 vmail -d /var/mail -m

# ساخت دایرکتوری ایمیل‌ها
sudo mkdir -p /var/mail/vhosts/example.com

# تنظیم مالکیت
sudo chown -R vmail:vmail /var/mail

# تنظیم Permission
sudo chmod -R 770 /var/mail

6- پیکربندی Postfix (SMTP)

Postfix قلب تپنده سیستم ارسال و دریافت ایمیل شماست. این سرویس وظیفه دارد تا ایمیل‌هایی که از طریق پروتکل SMTP (Simple Mail Transfer Protocol) ارسال می‌شوند را مدیریت کند. به زبان ساده‌تر، Postfix مثل یک اداره پست هوشمند عمل می‌کند که:
  • ✅ ایمیل‌های ارسالی شما را به سرورهای دیگر تحویل می‌دهد
  • ✅ ایمیل‌های ورودی را دریافت و به Dovecot منتقل می‌کند
  • ✅ با دیتابیس MySQL ارتباط برقرار می‌کند تا بفهمد کدام ایمیل‌ها معتبرند
  • ✅ از امنیت ارتباطات با TLS/SSL محافظت می‌کند
  • ✅ با سیستم احراز هویت SASL از ارسال ایمیل توسط افراد غیرمجاز جلوگیری می‌کند
6-1: ایجاد فایل‌های اتصال MySQL
فایل اول:
sudo nano /etc/postfix/mysql-virtual-mailbox-domains.cf
محتوا:
user = mailuser
password = StrongPassword123!
hosts = 127.0.0.1
dbname = mailserver
query = SELECT 1 FROM virtual_domains WHERE name='%s'
فایل دوم:
sudo nano /etc/postfix/mysql-virtual-mailbox-maps.cf
محتوا:
user = mailuser
password = StrongPassword123!
hosts = 127.0.0.1
dbname = mailserver
query = SELECT 1 FROM virtual_users WHERE email='%s'
فایل سوم:
sudo nano /etc/postfix/mysql-virtual-alias-maps.cf
محتوا:
user = mailuser
password = StrongPassword123!
hosts = 127.0.0.1
dbname = mailserver
query = SELECT destination FROM virtual_aliases WHERE source='%s'
تنظیم Permission:
sudo chmod 640 /etc/postfix/mysql-virtual-*.cf
sudo chown root:postfix /etc/postfix/mysql-virtual-*.cf
6-2: ویرایش main.cf
sudo cp /etc/postfix/main.cf /etc/postfix/main.cf.backup
sudo nano /etc/postfix/main.cf
محتوای پیشنهادی (اضافه یا ویرایش کنید):
# تنظیمات اصلی
myhostname = mail.example.com
mydomain = example.com
myorigin = $mydomain
mydestination = localhost
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
inet_interfaces = all
inet_protocols = all

# Virtual domains
virtual_transport = lmtp:unix:private/dovecot-lmtp
virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf
virtual_alias_maps = mysql:/etc/postfix/mysql-virtual-alias-maps.cf

# TLS/SSL
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
smtpd_tls_security_level = may
smtpd_tls_auth_only = yes
smtpd_tls_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtp_tls_security_level = may
smtp_tls_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1

# SASL Authentication
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname

# Restrictions
smtpd_helo_required = yes
smtpd_recipient_restrictions =
    permit_sasl_authenticated,
    permit_mynetworks,
    reject_unauth_destination,
    reject_non_fqdn_recipient,
    reject_unknown_recipient_domain

smtpd_sender_restrictions =
    permit_sasl_authenticated,
    permit_mynetworks,
    reject_non_fqdn_sender,
    reject_unknown_sender_domain

smtpd_relay_restrictions =
    permit_sasl_authenticated,
    permit_mynetworks,
    defer_unauth_destination

# محدودیت‌ها
message_size_limit = 52428800
mailbox_size_limit = 0

# DKIM
milter_default_action = accept
milter_protocol = 6
smtpd_milters = inet:127.0.0.1:8891
non_smtpd_milters = $smtpd_milters
6-3: ویرایش master.cf
sudo nano /etc/postfix/master.cf
اضافه کردن یا فعال‌سازی خطوط زیر:
submission inet n       -       y       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_tls_auth_only=yes
  -o smtpd_reject_unlisted_recipient=no
  -o smtpd_recipient_restrictions=
  -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING

smtps     inet  n       -       y       -       -       smtpd
  -o syslog_name=postfix/smtps
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_recipient_restrictions=
  -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING

7- پیکربندی Dovecot (IMAP/POP3)

Dovecot نقش صندوق پستی شخصی و نگهبان ایمیل‌های شماست. در حالی که Postfix وظیفه حمل‌ونقل ایمیل‌ها را دارد، Dovecot مسئول ذخیره‌سازی، سازماندهی و ارائه ایمیل‌ها به کاربران نهایی از طریق پروتکل‌های IMAP (پورت 143/993) و POP3 (پورت 110/995) است. در این بخش، ما Dovecot را طوری پیکربندی می‌کنیم که اطلاعات کاربران را از دیتابیس MySQL بخواند، ایمیل‌ها را در فرمت Maildir ذخیره کند و با Postfix از طریق LMTP ارتباط برقرار کند.
7-1: ویرایش dovecot.conf
sudo nano /etc/dovecot/dovecot.conf
اضافه یا ویرایش:
protocols = imap pop3 lmtp
listen = *, ::
7-2: تنظیمات Mail
sudo nano /etc/dovecot/conf.d/10-mail.conf
mail_location = maildir:/var/mail/vhosts/%d/%n
mail_privileged_group = mail
first_valid_uid = 5000
last_valid_uid = 5000
first_valid_gid = 5000
last_valid_gid = 5000
7-3: تنظیمات Authentication
sudo nano /etc/dovecot/conf.d/10-auth.conf
disable_plaintext_auth = yes
auth_mechanisms = plain login

# کامنت کردن این خط:
#!include auth-system.conf.ext

# فعال کردن این خط:
!include auth-sql.conf.ext
7-4: پیکربندی SQL
sudo nano /etc/dovecot/conf.d/auth-sql.conf.ext
passdb {
  driver = sql
  args = /etc/dovecot/dovecot-sql.conf.ext
}

userdb {
  driver = static
  args = uid=vmail gid=vmail home=/var/mail/vhosts/%d/%n
}
7-5: اتصال MySQL
sudo nano /etc/dovecot/dovecot-sql.conf.ext
driver = mysql
connect = host=127.0.0.1 dbname=mailserver user=mailuser password=StrongPassword123!
default_pass_scheme = SHA512-CRYPT
password_query = SELECT email as user, password FROM virtual_users WHERE email='%u'
user_query = SELECT 5000 AS uid, 5000 AS gid, '/var/mail/vhosts/%d/%n' as home FROM virtual_users WHERE email='%u'
تنظیم Permission:
sudo chown root:dovecot /etc/dovecot/dovecot-sql.conf.ext
sudo chmod 640 /etc/dovecot/dovecot-sql.conf.ext
7-6: تنظیمات SSL
sudo nano /etc/dovecot/conf.d/10-ssl.conf
ssl = required
ssl_cert = </etc/letsencrypt/live/mail.example.com/fullchain.pem
ssl_key = </etc/letsencrypt/live/mail.example.com/privkey.pem
ssl_prefer_server_ciphers = yes
ssl_min_protocol = TLSv1.2
7-7: تنظیمات Master
sudo nano /etc/dovecot/conf.d/10-master.conf
service lmtp {
  unix_listener /var/spool/postfix/private/dovecot-lmtp {
    mode = 0600
    user = postfix
    group = postfix
  }
}

service auth {
  unix_listener /var/spool/postfix/private/auth {
    mode = 0660
    user = postfix
    group = postfix
  }
  
  unix_listener auth-userdb {
    mode = 0600
    user = vmail
    group = vmail
  }
  
  user = dovecot
}

service auth-worker {
  user = vmail
}
💡 بیشتر بدانید: آموزش نصب SSL رایگان با استفاده از LetsEncrypt

8- نصب SSL با Let’s Encrypt

گواهینامه SSL/TLS برای رمزنگاری ارتباطات بین کلاینت‌های ایمیل (Outlook، Thunderbird، موبایل) و سرور شما ضروری است. بدون SSL، تمام اطلاعات شامل رمز عبور و محتوای ایمیل‌ها به صورت متن ساده (Plain Text) در اینترنت منتقل می‌شوند که یک ریسک امنیتی جدی محسوب می‌شود. Let’s Encrypt یک سرویس رایگان و معتبر است که گواهینامه‌های SSL با اعتبار 90 روزه صادر می‌کند و به راحتی قابل تمدید خودکار است، بنابراین نیازی به خرید SSL تجاری ندارید.
# نصب Certbot
sudo apt install certbot -y

# دریافت گواهینامه (توقف موقت Postfix/Dovecot)
sudo systemctl stop postfix dovecot
sudo certbot certonly --standalone -d mail.example.com

# راه‌اندازی مجدد
sudo systemctl start postfix dovecot

# تمدید خودکار
sudo crontab -e
اضافه کردن به crontab:
0 3 * * * certbot renew --quiet --post-hook "systemctl reload postfix dovecot"

9- پیکربندی OpenDKIM

DKIM (DomainKeys Identified Mail) یک سیستم امضای دیجیتال است که اصالت و یکپارچگی ایمیل‌های ارسالی شما را تضمین می‌کند و به سرورهای گیرنده ثابت می‌کند که ایمیل واقعاً از دامنه شما ارسال شده و در مسیر دستکاری نشده است. بدون DKIM، ایمیل‌های شما احتمال بسیار بالایی دارد که توسط Gmail، Yahoo و Outlook به عنوان اسپم شناسایی شوند یا اصلاً رد شوند. OpenDKIM با تولید یک جفت کلید عمومی/خصوصی، ایمیل‌ها را با کلید خصوصی امضا می‌کند و سرورهای گیرنده با استفاده از کلید عمومی منتشر شده در DNS شما، امضا را تأیید می‌کنند.
9-1: ایجاد دایرکتوری
sudo mkdir -p /etc/opendkim/keys/example.com
cd /etc/opendkim/keys/example.com
9-2: تولید کلید
sudo opendkim-genkey -s default -d example.com
sudo chown opendkim:opendkim default.private
9-3: نمایش کلید عمومی برای DNS
sudo cat default.txt
خروجی شبیه این است:
default._domainkey IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC..."
این را در DNS اضافه کنید.
9-4: ویرایش opendkim.conf
sudo nano /etc/opendkim.conf
Syslog yes
SyslogSuccess yes
LogWhy yes
UMask 002
OversignHeaders From
Canonicalization relaxed/simple
Mode sv
SubDomains no
AutoRestart yes
AutoRestartRate 10/1M
Background yes
DNSTimeout 5
SignatureAlgorithm rsa-sha256

# Domains
Domain example.com
KeyFile /etc/opendkim/keys/example.com/default.private
Selector default

# Sockets
Socket inet:8891@localhost
PidFile /run/opendkim/opendkim.pid
9-5: راه‌اندازی
sudo systemctl enable opendkim
sudo systemctl restart opendkim postfix

10- تنظیم Firewall

فایروال (Firewall) دیوار امنیتی سرور شماست که تعیین می‌کند چه پورت‌ها و سرویس‌هایی از اینترنت قابل دسترسی باشند و بقیه درها را می‌بندد تا از نفوذ هکرها و حملات خودکار جلوگیری کند.
sudo ufw allow 25/tcp    # SMTP
sudo ufw allow 587/tcp   # Submission
sudo ufw allow 465/tcp   # SMTPS
sudo ufw allow 143/tcp   # IMAP
sudo ufw allow 993/tcp   # IMAPS
sudo ufw allow 110/tcp   # POP3
sudo ufw allow 995/tcp   # POP3S

sudo ufw enable
sudo ufw status

11- تست و عیب‌یابی

تست و عیب‌یابی مرحله حیاتی بعد از راه‌اندازی سرور ایمیل است که بدون آن نمی‌توانید مطمئن شوید تمام تنظیمات به درستی کار می‌کنند یا در صورت بروز مشکل، نقطه خرابی را شناسایی کنید. در این بخش با استفاده از ابزارهایی مثل telnet، mailq و بررسی لاگ‌های /var/log/mail.log می‌آموزید چگونه اتصال SMTP و IMAP را تست کنید، وضعیت صف ایمیل‌ها را بررسی کنید و خطاهای رایج مثل “Relay access denied” یا مشکلات احراز هویت را حل کنید. همچنین با ارسال ایمیل تست به سرویس‌هایی مثل mail-tester.com می‌توانید امتیاز spam score و صحت تنظیمات SPF/DKIM/DMARC خود را ارزیابی کنید.
تست Postfix
# بررسی وضعیت
sudo systemctl status postfix

# بررسی لاگ
sudo tail -f /var/log/mail.log

# تست اتصال SMTP
telnet localhost 25
در telnet:
EHLO mail.example.com
QUIT
تست Dovecot
# بررسی وضعیت
sudo systemctl status dovecot

# تست IMAP
telnet localhost 143
تست ارسال ایمیل
# نصب mailutils
sudo apt install mailutils -y

# ارسال ایمیل تست
echo "This is a test email" | mail -s "Test Subject" [email protected]
تست DKIM
ایمیلی به [email protected] بفرستید و نتیجه را بررسی کنید.
بررسی صف ایمیل
mailq
پاک کردن صف
sudo postsuper -d ALL

تنظیمات DNS کامل

# A Record
mail.example.com.    IN  A    192.0.2.1

# MX Record
example.com.         IN  MX   10 mail.example.com.

# PTR (Reverse DNS) - درخواست از هاستینگ
1.2.0.192.in-addr.arpa. IN PTR mail.example.com.

# SPF Record
example.com.         IN  TXT  "v=spf1 mx ip4:192.0.2.1 ~all"

# DKIM Record (از فایل default.txt کپی کنید)
default._domainkey.example.com. IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCS..."

# DMARC Record
_dmarc.example.com.  IN  TXT  "v=DMARC1; p=quarantine; rua=mailto:[email protected]; ruf=mailto:[email protected]; fo=1"

جدول مقایسه Mail Server دستی و cPanel

ویژگیسرور اختصاصی (Postfix/Dovecot)cPanel Mail Server
هزینهرایگان (فقط هزینه سرور)هزینه بالای لایسنس ماهانه
مصرف منابعبسیار کم و بهینهبالا (به دلیل سرویس‌های اضافی)
انعطاف‌پذیریبی‌نهایت (دسترسی روت)محدود به رابط کاربری
سختی نگهداریمتوسط (نیاز به دانش لینوکس)آسان (گرافیکی)
امنیتکنترل کاملمحدود به تنظیمات پیش‌فرض
تعداد کاربرنامحدودمحدود به لایسنس

نتیجه‌گیری: آموزش کانفیگ سرور ایمیل یا Mail Server

در این مقاله جامع، ما سعی کردیم آموزش کانفیگ سرور ایمیل (Mail Server) به کمک Postfix, Dovecot, MySQL را از پایه تا مفاهیم پیشرفته امنیتی پوشش دهیم. راه‌اندازی یک سرور ایمیل شاید در نگاه اول ترسناک باشد، اما آزادی عمل و امنیتی که به ارمغان می‌آورد، ارزشش را دارد.
خلاصه آموخته‌ها:
  • ✅ نصب و پیکربندی Postfix برای ارسال (SMTP)
  • ✅ نصب و پیکربندی Dovecot برای دریافت (IMAP/POP3)
  • ✅ استفاده از MySQL برای مدیریت کاربران مجازی
  • ✅ امنیت‌سازی با SSL/TLS
  • ✅ پیاده‌سازی DKIM با OpenDKIM
  • ✅ تنظیم رکوردهای SPF و DMARC
  • ✅ تست و عیب‌یابی سرور
اگر در هر مرحله از کانفیگ سرور ایمیل دچار مشکل شدید یا نیاز به سروری قدرتمند با پشتیبانی فنی داشتید، تیم فنی وب‌داده آماده کمک به شماست. نظرات و تجربیات خود را در پایین همین صفحه با ما به اشتراک بگذارید.

سوالات متداول از آموزش کانفیگ سرور ایمیل Postfix + Dovecot + MySQL

1- آیا کانفیگ سرور ایمیل روی سرور خانگی امکان‌پذیر است؟

خیر، اکثر ISPهای خانگی پورت 25 را بسته‌اند و IPهای خانگی در لیست سیاه اکثر سرویس‌دهنده‌ها قرار دارند. شما حتماً به یک VPS دیتاسنتری نیاز دارید.

نرسی مزداب
نرسی مزداب

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

مقاله‌ها: 86
پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *