邮件服务器
邮件服务器由多个组件组成。 邮件传输代理 (MTA) 通过 SMTP 接收和发送电子邮件。 接收和接受的电子邮件随后传递给 邮件投递代理 (MDA),MDA 将邮件存储在邮箱中(通常为 mbox 或 Maildir 格式)。 如果您希望用户能够使用 电子邮件客户端 (MUA) 远程访问他们的邮件,则需要运行 POP3 和/或 IMAP 服务器。
软件
下面是一个包含所有邮件服务器及其支持的功能的表格。
名称 | 邮件传输代理 | 邮件投递代理 | Sendmail | 邮件列表 | JMAP | 备注 | ||
---|---|---|---|---|---|---|---|---|
发送 | 接收 | POP3 | IMAP | |||||
dma | 是 | 是 | – | – | 是 | – | – | 不支持电子邮件域; 有限的 MTA 接收(请参阅 使用 Google SMTP) |
Exim | 是 | 是 | – | – | 是 | – | – | – |
OpenSMTPD | 是 | 是 | – | – | 是 | – | – | – |
Postfix | 是 | 是 | – | – | 是 | 部分支持,通过别名功能 | – | – |
Courier | 是 | 是 | 是 | 是 | 否 | 是 | – | 包含 Web 客户端 |
Cyrus IMAP | – | – | 是 | 是 | – | – | 是 | 可以从 cyrus-imapdAUR 安装 |
Dovecot | – | – | 是 | 是 | – | – | 否,已请求 | – |
UW IMAP | 是,使用 c-clientAUR | – | 是 | 是 | 是,c-clientAUR 具有相同的功能 | – | – | 项目已废弃 |
msmtp | 是 | 否 | – | – | 是,msmtp 具有相同的功能 | – | – | – |
Sendmail | 是 | 否 | – | – | 是 | – | – | Sendmail 实现已弃用 |
sSMTP | 是 | 否 | – | – | 是 | – | – | – |
fdm | – | – | 是 | 是 | – | – | – | 也可以从标准输入 (stdin) 获取邮件 |
Procmail | – | – | 部分支持,请参阅模块 [1] | 否 | – | – | – | 仅通过标准输入 (stdin) 读取邮件,上游已无人维护 |
Maildrop | – | – | 否 | 否 | – | – | – | 仅支持通过标准输入 (stdin) 接收电子邮件 |
Stalwart | 是 | 是 | 是 | 是 | – | – | 是 | – |
- Sendmail 可执行文件是命令行工具,允许通过 SMTP 发送电子邮件。
- “发送”和“接收”列指的是通过 SMTP 发送电子邮件和通过 SMTP 接收电子邮件的能力。
- “邮件列表”软件允许创建邮件列表,请参阅 邮件列表。
端口
用途 | 端口 | 协议 | 加密 |
---|---|---|---|
接受来自其他 MTA 的邮件。 | 25 | SMTP | STARTTLS |
接受来自 MUA 的提交。 | 587 | SMTP | STARTTLS |
465 | SMTPS | 隐式 TLS | |
允许 MUA 访问邮件。 | 110 | POP3 | STARTTLS |
995 | POP3S | 隐式 TLS | |
143 | IMAP | STARTTLS | |
993 | IMAPS | 隐式 TLS |
MX 记录
托管邮件服务器需要一个 域名,其中包含指向您的邮件传输代理的域名的 MX 记录。 用作 MX 记录值的域名必须映射到至少一个 地址记录 (A, AAAA),并且不得具有 CNAME 记录 以符合 RFC 2181,否则您可能无法从某些邮件服务器接收邮件。 配置 DNS 记录通常通过您的 域名注册商 的配置界面完成。
身份验证
有多种 电子邮件身份验证 技术。
发件人策略框架
来自 维基百科
- 发件人策略框架 (SPF) 是一种电子邮件验证协议,旨在通过提供一种机制来允许接收邮件交换机验证来自域的传入邮件是否来自该域管理员授权的 IP 地址,从而检测和阻止电子邮件欺骗。
要允许其他邮件交换机验证显然从您的域发送的邮件,您需要按照 维基百科文章 中所述设置 DNS TXT 记录(还有一个 在线向导)。 要使用 SPF 验证传入邮件,您需要配置您的邮件传输代理以使用 SPF 实现。 有几种 SPF 实现可用: libspf2、 perl-mail-spf 和 perl-mail-spf-query。
Courier | 是,内置 |
---|---|
Postfix | 是 |
Sendmail | 通过 Milter 和 spfmilter-acmeAUR |
Exim | 是,需要 libspf2 |
OpenSMTPD | 否 |
以下网站可让您验证您的 SPF 记录
v=spf1 -all
的策略会使任何强制执行 SPF 的邮件服务器拒绝来自您域名的电子邮件,从而防止滥用。发件人重写方案
发件人重写方案 (SRS) 是一种安全方案,允许服务器端转发的电子邮件进行可转发的退回,而不会破坏 发件人策略框架。
对于 Postfix,请参阅 Postfix#发件人重写方案。
DKIM
域密钥识别邮件 (DKIM) 是一种域级电子邮件身份验证方法,旨在检测电子邮件欺骗。
可用的 DKIM 实现包括 OpenDKIM 和 perl-mail-dkim。
ARC
ARC 是一项实验性标准,即 认证接收链 (ARC) 电子邮件身份验证系统。 它允许中间邮件服务器(如邮件列表或转发服务)签署电子邮件的原始身份验证结果。 ARC 由 Google、Microsoft、ProtonMail、Fastmail 等实现。
可用的 ARC 实现包括 rspamd(作为 rspamd 的模块)和 OpenARC(独立)。
测试
有多种选项可以帮助您测试 DNS 记录、传递能力和加密支持。
专用工具
专用网站
有几个方便的网站可以帮助您进行测试。
- https://mxtoolbox.com/
- https://ismyemailworking.com/
- https://www.mail-tester.com/ (仅限 3 次免费试用!)
- https://www.checktls.com/
- https://pingability.com/zoneinfo.jsp
提示与技巧
从电子邮件中移除 IP 地址
大多数邮件服务器都可以配置为从外发邮件中剥离用户的 IP 地址和 用户代理。
扫描电子邮件中的病毒
请参阅 ClamAV 以进行电子邮件防病毒扫描。
垃圾邮件过滤
请参阅 SpamAssassin 以进行垃圾邮件过滤。
网页邮件
请参阅 Roundcube 和 Squirrelmail 以设置网页邮件。