ubuntu邮件服务器搭建指南
导读:Ubuntu 邮件服务器搭建指南 一 方案与环境准备 组件选型:使用 Postfix 作为 MTA(负责发送与投递)、Dovecot 作为 IMAP/POP3 MDA/LDA(负责邮件存取与认证)。 系统建议:Ubuntu 22.04/2...
Ubuntu 邮件服务器搭建指南
一 方案与环境准备
- 组件选型:使用 Postfix 作为 MTA(负责发送与投递)、Dovecot 作为 IMAP/POP3 MDA/LDA(负责邮件存取与认证)。
- 系统建议:Ubuntu 22.04/24.04 LTS,具备 固定公网 IP 与 可管理的域名。
- 基础条件:域名解析可控(可添加 A/MX/SPF/DKIM 记录),服务器可达公网,开放必要端口(见下文)。
- 安全基线:启用 UFW 防火墙,配置 TLS/SSL,并为外发建立 SPF 记录,后续可扩展 DKIM/DMARC 提升可信度。
二 安装与基础配置
- 更新系统并安装组件
- 命令:sudo apt update & & sudo apt upgrade -y
- 安装:sudo apt install postfix dovecot-core dovecot-imapd dovecot-lmtpd -y
- Postfix 安装时选择 Internet Site,系统邮件名称填写如:mail.example.com。
- Postfix 核心配置(/etc/postfix/main.cf)
- 关键参数示例:
- myhostname = mail.example.com
- mydomain = example.com
- myorigin = $mydomain
- inet_interfaces = all
- inet_protocols = ipv4
- mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
- mynetworks = 127.0.0.0/8 [::1]/128
- home_mailbox = Maildir/
- smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
- smtpd_sasl_auth_enable = yes
- smtpd_sasl_security_options = noanonymous
- smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
- 关键参数示例:
- Dovecot 基础配置
- 邮件存储(/etc/dovecot/conf.d/10-mail.conf):mail_location = maildir:~/Maildir
- 协议(/etc/dovecot/dovecot.conf 或 10-master.conf 的 protocols):protocols = imap lmtp
- SASL 认证(/etc/dovecot/conf.d/10-auth.conf):disable_plaintext_auth = no;auth_mechanisms = plain login
- LMTP 交付(/etc/dovecot/conf.d/10-master.conf,供 Postfix 投递):
- service lmtp { inet_listener lmtp { port = 24 } }
- Postfix 与 Dovecot 对接(SASL 与 LMTP)
- 在 /etc/postfix/main.cf 增加:
- smtpd_sasl_type = dovecot
- smtpd_sasl_path = private/auth
- mailbox_transport = lmtp:unix:private/dovecot-lmtp
- 在 /etc/postfix/main.cf 增加:
- 创建用户与目录
- 示例:sudo useradd -m -s /usr/sbin/nologin alice;echo “alice:StrongPass!” | sudo chpasswd
- 确保用户主目录存在 Maildir:sudo -u alice maildirmake.dovecot ~/Maildir(若不存在)
- 启动与开机自启
- 命令:sudo systemctl enable --now postfix dovecot。
三 DNS 与安全设置
- 必要 DNS 记录
- A 记录:mail.example.com → 服务器公网 IP
- MX 记录:example.com → 10 mail.example.com
- SPF 记录(TXT):v=spf1 mx ~all(按实际发送源细化)
- DKIM:部署后添加 DKIM TXT 记录(选择器._domainkey.example.com),值由 DKIM 工具生成
- DMARC(TXT):_dmarc.example.com → v=DMARC1; p=none; rua=mailto:dmarc@example.com
- 端口与防火墙
- 放行端口:
- 25/TCP(SMTP,入站/出站)
- 587/TCP(Submission,客户端发信,建议强制 TLS)
- 143/TCP(IMAP,建议 STARTTLS)
- 993/TCP(IMAPS)
- 110/TCP(POP3,建议 STARTTLS)
- 995/TCP(POP3S)
- UFW 示例:sudo ufw allow 25,587,143,993,110,995/tcp;sudo ufw enable
- 放行端口:
- TLS/SSL 证书
- 使用 Let’s Encrypt:sudo apt install certbot python3-certbot-nginx(或 certbot --postfix/dovecot 插件)
- 为 mail.example.com 申请证书,并在 Postfix/Dovecot 配置证书与私钥路径,启用 STARTTLS/IMAPS/POP3S。
四 测试与常见问题
- 本机/远程 SMTP 测试
- 命令:telnet mail.example.com 25 或 openssl s_client -connect mail.example.com:25 -starttls smtp
- 简单会话:HELO mail.example.com;MAIL FROM: alice@example.com;RCPT TO: you@example.org;DATA(输入主题与正文,以“.”结束);QUIT
- 客户端连通
- IMAP:alice@example.com / 993 / SSL;或 143 / STARTTLS
- POP3:995 / SSL
- 常见问题排查
- 无法外发:检查 25/587 出站是否被云厂商/本地运营商限制,检查 SPF 是否匹配实际发信源
- 收不到外部邮件:核对 MX 记录是否指向 mail.example.com,检查 rDNS/PTR 是否与域名一致
- 认证失败:确认 Dovecot 的 SASL 路径为 private/auth,Postfix 已启用 smtpd_sasl_type=dovecot
- 证书错误:确保证书覆盖 mail.example.com,证书与私钥权限正确,服务已重载。
五 进阶与扩展
- 虚拟域与数据库账号
- 使用 MySQL/MariaDB + Postfix + Dovecot 管理多域名与多用户,适合托管场景;可配合 Roundcube 提供 Webmail 界面。
- 反垃圾与合规
- 部署 SpamAssassin 进行垃圾邮件评分,配置 OpenDKIM 进行签名,结合 DMARC 策略提升到达率与信誉。
- 监控与维护
- 监控 /var/log/mail.log,定期备份 /etc/postfix /etc/dovecot 与用户 Maildir,并审计防火墙与证书有效期。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: ubuntu邮件服务器搭建指南
本文地址: https://pptw.com/jishu/750819.html
