自建邮箱服务器可以完全掌控企业邮件数据,使用自己的域名(如info@yourdomain.com)发送和接收邮件。本文使用Postfix(发信)+ Dovecot(收信)方案,配合DKIM、SPF和DMARC认证确保邮件不进垃圾箱。
Tip: 搬瓦工部分IP段的25端口可能被限制。如遇此情况,可使用587端口提交邮件,或联系客服解封。建议先测试端口连通性。
在域名DNS管理处添加以下记录:
| 类型 | 名称 | 值 | 说明 |
|---|---|---|---|
| A | 你的VPS IP | 邮件服务器地址 | |
| MX | @ | mail.yourdomain.com(优先级10) | 邮件接收路由 |
| TXT | @ | v=spf1 mx ip4:你的IP ~all | SPF记录 |
| TXT | _dmarc | v=DMARC1; p=quarantine; rua=mailto:admin@yourdomain.com | DMARC策略 |
| PTR | - | mail.yourdomain.com | 反向DNS(联系VPS商设置) |
hostnamectl set-hostname mail.yourdomain.com
# 编辑/etc/hosts,添加:
# 你的IP mail.yourdomain.com mail
apt update
apt install postfix -y
安装过程中选择"Internet Site",系统邮件名称填写 yourdomain.com。
编辑 /etc/postfix/main.cf,关键配置项:
# 基本设置
myhostname = mail.yourdomain.com
mydomain = yourdomain.com
myorigin = $mydomain
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
# TLS配置
smtpd_tls_cert_file = /etc/letsencrypt/live/mail.yourdomain.com/fullchain.pem
smtpd_tls_key_file = /etc/letsencrypt/live/mail.yourdomain.com/privkey.pem
smtpd_use_tls = yes
smtpd_tls_security_level = may
smtp_tls_security_level = may
# SASL认证
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
# 邮件大小限制(25MB)
message_size_limit = 26214400
# Maildir格式
home_mailbox = Maildir/
编辑 /etc/postfix/master.cf,取消submission行的注释:
submission inet n - y - - smtpd
-o syslog_name=postfix/submission
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_reject_unlisted_recipient=no
apt install dovecot-core dovecot-imapd dovecot-lmtpd -y
编辑 /etc/dovecot/conf.d/10-auth.conf:
auth_mechanisms = plain login
disable_plaintext_auth = yes
编辑 /etc/dovecot/conf.d/10-mail.conf:
mail_location = maildir:~/Maildir
编辑 /etc/dovecot/conf.d/10-ssl.conf:
ssl = required
ssl_cert = </etc/letsencrypt/live/mail.yourdomain.com/fullchain.pem
ssl_key = </etc/letsencrypt/live/mail.yourdomain.com/privkey.pem
ssl_min_protocol = TLSv1.2
编辑 /etc/dovecot/conf.d/10-master.conf,在service auth部分添加:
service auth {
unix_listener /var/spool/postfix/private/auth {
mode = 0660
user = postfix
group = postfix
}
}
DKIM让接收方验证邮件确实来自你的域名,大幅提升送达率。
apt install opendkim opendkim-tools -y
# 生成DKIM密钥
mkdir -p /etc/opendkim/keys/yourdomain.com
opendkim-genkey -b 2048 -d yourdomain.com -D /etc/opendkim/keys/yourdomain.com -s default -v
chown -R opendkim:opendkim /etc/opendkim
编辑 /etc/opendkim.conf:
AutoRestart Yes
AutoRestartRate 10/1h
Syslog yes
SyslogSuccess Yes
LogWhy Yes
Mode sv
Canonicalization relaxed/simple
ExternalIgnoreList refile:/etc/opendkim/TrustedHosts
InternalHosts refile:/etc/opendkim/TrustedHosts
KeyTable refile:/etc/opendkim/KeyTable
SigningTable refile:/etc/opendkim/SigningTable
Socket inet:12301@localhost
查看生成的公钥:
cat /etc/opendkim/keys/yourdomain.com/default.txt
将输出的内容添加为DNS的TXT记录,名称为 default._domainkey。
在 /etc/postfix/main.cf 添加:
milter_protocol = 6
milter_default_action = accept
smtpd_milters = inet:localhost:12301
non_smtpd_milters = $smtpd_milters
# 创建系统用户作为邮箱账户
adduser --disabled-login --gecos "" emailuser
passwd emailuser
用户可以使用Thunderbird、Outlook等邮件客户端,配置IMAP和SMTP连接到服务器。
systemctl restart postfix dovecot opendkim
systemctl enable postfix dovecot opendkim
# 测试发送
echo "测试邮件" | mail -s "Test" your-external@email.com
使用 mail-tester.com 发送测试邮件检查SPF、DKIM和DMARC配置是否正确,目标分数8/10以上。
apt install fail2ban -ypostqueue -p/var/log/mail.log邮箱服务器对资源需求不高,1GB内存即可。CN2 GIA线路确保邮件收发稳定。
价格:$49.99/季,使用优惠码 NODESEEK2026 再省6.77%。
Tip: 更多教程请查看新手教程。