【问题标题】:SASL in postfix/dovecot setup: Where is it used? [closed]后缀/鸽舍设置中的 SASL:它在哪里使用? [关闭]
【发布时间】:2020-12-24 17:43:14
【问题描述】:

我正在尝试使用 Postfix/Dovecot 设置邮件服务器以获得学习体验。 (这意味着你不必劝阻我!!)

大约有 2/3 的指南只是说“我们现在即将启用SASL 身份验证”。但我不知道 SASL 在哪里适合设置。

我绘制了以下架构来可视化我认为电子邮件通信的样子(省略号中的 smtp 和 smtpd 指的是 postfix 的子模块):

为什么需要 SASL? Postfix 和 Dovecot 已经使用 SSL 加密了它们的流量,这也是我将它们指向有效的 Let's Encrypt 证书的原因。 SASL 需要什么,为什么 postfix 需要 dovecot 来提供它? (注意:我确实理解为什么 postfix 需要像 dovecot 或 Cyrus 这样的外部 SASL 提供程序,所以 this 问题与我无关。)

还请更正这张图片,无论哪里有问题。我知道这不是正在发生的事情的全貌,但它应该涵盖足够有用的概念。

谢谢!

【问题讨论】:

    标签: email postfix-mta sasl dovecot


    【解决方案1】:

    SASL(简单身份验证和安全层)是一种身份验证框架。 SSL (TLS) 是一种通过网络提供安全通信的协议框架。 SSL (TLS) 可以通过客户端证书提供身份验证。我不知道支持证书身份验证的电子邮件客户端 (MUA)。

    SMTP 的原始设计允许电子邮件从任何地方到达并被转发到任何地方。在过去,我们将电子邮件服务器称为存储和转发服务器。然而,在垃圾邮件和网络钓鱼盛行的今天,允许任何人将电子邮件传输到 SMTP 服务器是一个坏主意。盲目转发邮件(开放中继)也是个坏主意。

    Postfix 使用 SASL 为邮件客户端 (MUA) 提供身份验证。这可以像用户名/密码一样简单,也可以是许多身份验证服务之一,例如 LDAP 或 Active Directory。 SASL 是代表 Postfix 处理身份验证的软件。

    有许多 SASL 软件供应商。选择取决于您的网络设计、身份验证源、设计目标等。如果您的用户名存储在 Azure Active Directory 中,那么您将选择支持 Azure Active Directory 的 SASL 软件。另一个例子是使用 MySQL 来存储您的用户。设计好网络后,选择通常会变得相当容易。

    Postfix 还实现了其他形式的授权来确定它是否应该接受来自其他 SMTP 服务器的电子邮件。这是使用网络关联(您是否在授权网络或 IP 地址上)、反向 DNS、SPF、DMARC、DKIM 等的地方。

    SSL 可用于加密 SMTP 服务器之间以及电子邮件客户端和 SMTP 服务器之间的通信。这提供保密但不提供授权。

    【讨论】:

    • 所以mail.domain1.tld 服务器必须完成SASL 身份验证才能通过SMTP 将他的邮件发送到我的服务器?这是我指定的:smtpd_relay_restrictions=permit_sasl_authenticated,reject
    • 通常没有。 SMTP 服务器使用授权(端口号、IP 地址、反向 DNS 等)来确定连接服务器是否是合法的 SMTP 服务器。这是 ISP 阻止端口 25 的原因之一。您的 Postfix 规则可能会影响决策过程。注意规则中的“接力”一词。如果其他 SMTP 服务器未通过隐含授权,则它们被确定为中继。然后,您的规则会拒绝来自未经身份验证的中继的电子邮件。中继应连接到端口 465 或 587 并进行身份验证,然后绕过您的规则。
    • 所以 SASL 仅用于在我(我的 MUA)通过 IMAP 接收电子邮件时对我进行身份验证,以在我(我的 MUA)通过 SMTP 发送电子邮件时用于后缀。来自其他服务器的连接(用于传入邮件)未经身份验证,而是由 postfix 本身直接授权。我说对了吗?
    • 还有前面提到的例外:如果其他服务器确实通过 SASL 进行身份验证,它们可以通过我的服务器进行中继。
    • SASL 通常用于客户端(MUA 和中继)进行身份验证。 Postfix 和 Dovecot 是两种不同的服务。第一个处理电子邮件传输 (SMTP),另一个处理您的邮箱(POP3 和 IMAP)。您将这两种服务混合在一起。对于您的第二条评论,是的,如果您向另一个系统提供凭据,他们可以登录并通过您的 SMTP 服务器发送电子邮件。
    猜你喜欢
    • 2012-09-29
    • 2022-06-11
    • 2012-01-09
    • 2011-12-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-09
    • 1970-01-01
    • 2022-01-23
    相关资源
    最近更新 更多