增强 SMTP 连接的安全性
2024年12月12日
ID 272882
SMTP 服务器和客户端通过互联网以纯文本方式进行通信。通信通常通过一个或多个路由器进行,这些路由器不受通信双方控制也不被信任。这种不受信任的路由器可能会允许第三方窃听服务器和客户端之间的连接或修改它。
此外,两个 SMTP 代理通常需要相互验证。为此,客户端和服务器在建立 SMTP 连接时以未加密的形式交换证书。
如果客户端不想显示其证书,它可以提示服务器使用匿名密码。一般来说,无法控制远程方的加密设置,但必须保证消息传递。在这种情况下,将应用发送和接收电子邮件的宽松设置。在 KSMG Web 界面中,“TLS 加密设置”位于“设置” → “内置 MTA” → “TLS 加密”部分。
当从远程服务器接收消息时,连接安全级别由“服务器 TLS 安全级别”下拉列表中的选择决定。默认设置为“尝试 TLS 加密”。在这种情况下,客户端会提示服务器使用 STARTTLS
命令建立加密连接。如果服务器无法建立加密连接,则在不进行 TLS 加密的情况下建立连接。更严格的设置,例如“要求 TLS 加密”,在此阶段终止连接,并且电子邮件不会被送达。
创建集群时,KSMG 应用程序会自动创建自签名证书。此证书显示在“TLS 证书表”中,在“设置” → “内置 MTA” → “TLS 加密”的具有“默认证书”名称的部分;该证书具有 4096 位的 RSA 密钥长度和 SHA-256 签名。如果您使用宽松设置,此证书足以用于连接的 TLS 加密。
向远程服务器发送消息时,连接安全级别由“客户端 TLS 安全级别”下拉列表中的选择决定。默认设置是“尝试 TLS 加密”,这意味着 KSMG 提示远程服务器建立使用 TLS 加密的连接,如果拒绝,则以未加密的形式发送消息。更严格的设置,例如“要求 TLS 加密但不验证证书”,要求远程服务器支持 TLS 加密,无论 TLS 证书验证的结果如何。如果选择了“要求 TLS 加密并验证证书”,服务器必须另外生成匹配的 TLS 证书。远程服务器设置与配置的值不匹配会导致连接终止,电子邮件不会被传递。
在 KSMG 中,您可以为列表中的每个域配置使用 TLS 加密的邮件发送。您可以在“设置” → “内置 MTA” → “域”部分为单个域配置邮件发送。
在受信任的代理之间交换邮件时,您可以使用以下设置来增强 SMTP 连接的安全性,例如,在同一公司内部,对于代理的 TLS 加密设置应用同样严格的设置,使用证书认证机构颁发和上传的认证证书,从不接受来自未知来源的邮件。要编辑设置,请转至“设置” → “内置 MTA” → “TLS 加密”部分并设置以下值:
- 服务器 TLS 安全级别 – 要求 TLS 加密。
- 客户端 TLS 安全级别 – 要求 TLS 加密但不验证证书 或 要求 TLS 加密并验证证书。
应用严格的 TLS 加密设置会增加服务器计算资源的负载并限制网关的吞吐量。