为了确保邮件能稳定送达(不被当作垃圾邮件拦截),我们使用 msmtp。它是一个非常轻量级的工具,专门用于通过外部 SMTP 服务器(如 Gmail、QQ、网易等)发送邮件。

以下是完整的配置步骤:

第一步:安装 msmtp

在宿主机上运行:

apt-get update && apt-get install msmtp msmtp-mta ca-certificates -y

第二步:配置 SMTP 账号

创建全局配置文件 /etc/msmtprc(建议使用全局配置,方便 root 脚本调用):

# 编辑配置文件
nano /etc/msmtprc

将以下内容复制进去,并根据你的邮箱服务商修改:

# 设置默认参数
defaults
auth           on
tls            on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
logfile        /var/log/msmtp.log

# 配置账户 (以 QQ 邮箱为例,Gmail 或其他类似)
account        default
host           smtp.qq.com
port           465
tls_starttls   off
from           你的邮箱@qq.com
user           你的邮箱@qq.com
# 注意:这里填写的是“授权码”或“应用专用密码”,不是登录密码!
password       你的授权码

# 如果是 Gmail:
# host         smtp.gmail.com
# port         587
# tls_starttls on

极其重要: 设置权限以保护你的密码:

chmod 600 /etc/msmtprc
chown root:root /etc/msmtprc

第三步:测试与部署

  1. 测试发送邮件:
    手动运行一下看看配置是否正确(即便 MAC 没变):
echo "Subject: Test\n\nThis is a test." | msmtp -t 你的接收邮箱@example.com