You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Postfix作为中继升级邮件加密版本的配置方案咨询

Postfix作为中继升级邮件加密版本的配置方案咨询

嘿,这个需求其实挺典型的——老旧嵌入式设备卡着TLSv1.1没法对接现代公共邮件服务器,用Postfix做中间中继来“升级”加密版本是完全可行的,我给你梳理下具体的配置步骤和关键要点:

一、基础准备

先确保你的树莓派上已经装好Postfix,没装的话直接用包管理器安装:

sudo apt update && sudo apt install postfix

安装过程中会让你选择配置类型,选Satellite system或者Internet Site都行,后续我们会通过配置文件调整成中继模式。

二、核心配置修改(/etc/postfix/main.cf)

我们要分成两部分配置:接收嵌入式设备邮件时允许TLSv1.1,以及转发到公共邮件服务器时强制使用TLSv1.2+。

1. 配置接收端(适配嵌入式设备)

找到并修改以下参数:

# 允许接收的TLS版本,包含老旧设备支持的TLSv1.1
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3, TLSv1.1, TLSv1.2, TLSv1.3
# 指定Postfix的证书和密钥(可以用自签证书,后面会说生成方法)
smtpd_tls_cert_file = /etc/postfix/smtpd.cert
smtpd_tls_key_file = /etc/postfix/smtpd.key
# 允许局域网内的嵌入式设备连接(替换成你的设备IP或局域网网段)
mynetworks = 127.0.0.0/8 192.168.1.0/24

如果你的嵌入式设备不验证服务器证书,可以加一行跳过验证:

smtpd_tls_ask_ccert = no

要是设备需要验证证书,就生成自签证书并导入到设备的信任存储里:

sudo postfix genkey

按照提示完成生成,证书和密钥会自动放到上面配置的路径里。

2. 配置转发端(对接公共邮件服务器)

继续在main.cf里添加/修改以下参数:

# 转发时强制使用TLSv1.2及以上版本,彻底禁用旧版本
smtp_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1, TLSv1.2, TLSv1.3
# 指定你的公共邮件服务器地址和端口(587是常用的提交端口)
relayhost = [smtp.yourpublicserver.com]:587
# 开启SMTP认证(公共服务器几乎都需要身份验证)
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
# 强制转发时使用加密连接
smtp_tls_security_level = encrypt

三、配置SMTP认证信息

创建sasl_passwd文件存储公共邮件服务器的账号密码:

sudo nano /etc/postfix/sasl_passwd

写入内容(替换成你的实际邮箱信息):

[smtp.yourpublicserver.com]:587 your-email@example.com:your-password

然后生成哈希映射文件并设置严格权限(避免密码泄露):

sudo postmap /etc/postfix/sasl_passwd
sudo chmod 600 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db

四、重启服务并测试

重启Postfix让配置生效:

sudo systemctl restart postfix

测试方法:

  1. 用嵌入式设备直接发邮件到目标地址,查看树莓派的邮件日志/var/log/mail.log,确认接收时用了TLSv1.1,转发时用了TLSv1.2+。
  2. 也可以在树莓派本地快速测试:
echo "测试邮件内容" | sendmail -v your-target-email@example.com

观察日志里的TLS版本信息是否符合预期。

注意事项

  • 要是用Gmail这类公共邮箱,可能需要开启应用专用密码(不推荐用普通密码或开启“不太安全的应用”)。
  • 嵌入式设备如果验证证书,一定要把树莓派的自签证书导入设备的信任列表,否则设备会拒绝发送邮件。
  • 定期检查/var/log/mail.log,排查可能的连接或认证错误。

备注:内容来源于stack exchange,提问作者Hans

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 11:49:30