qq邮箱收不到sendmail发送的邮件
封面图
•
2026-01-02
•
Windows
246
0
0
0
QQ邮箱收不到通过 `sendmail` 发送的邮件,可能是由以下几个原因导致的。我们可以逐一排查: --- ## ✅ 1. **检查邮件是否被误判为垃圾邮件** QQ邮箱对垃圾邮件过滤非常严格,如果你的邮件内容或发送方式不符合规范,可能会被直接丢进垃圾箱。 ### 解决方法: - 检查 QQ 邮箱的 **垃圾邮件文件夹**。 - 如果是测试邮件,可以尝试将发件人地址加入白名单(在 QQ 邮箱中设置)。 --- ## ✅ 2. **检查 sendmail 配置是否正确** 确保你使用的是正确的 SMTP 配置,包括: - SMTP 服务器地址:`smtp.qq.com` - 端口:`465`(SSL)或 `587`(TLS) - 使用 SSL/TLS 加密 - 正确的用户名和密码(注意不是 QQ 号,而是完整的邮箱地址) ### 示例配置(以 `sendmail` 的配置文件为例): ```bash # /etc/mail/sendmail.mc define(`SMART_HOST', `smtp.qq.com') define(`RELAY_MAILER', `smtp') define(`RELAY_NETWORKS', `your_network_ip_or_range') ``` 然后重启 sendmail 服务: ```bash systemctl restart sendmail ``` --- ## ✅ 3. **检查是否启用了 SMTP 授权码** QQ 邮箱默认要求使用“授权码”而不是登录密码,需要手动开启。 ### 如何获取 SMTP 授权码: 1. 登录 [QQ 邮箱](https://mail.qq.com/) 2. 进入 **设置 > 邮件设置 > POP3/IMAP/SMTP/HTTPS 设置** 3. 开启 **SMTP 服务** 4. 生成并保存 **SMTP 授权码** > 注意:不要用你的 QQ 登录密码,要用这个授权码。 --- ## ✅ 4. **检查 sendmail 是否发送成功** 你可以查看 sendmail 的日志文件,确认是否真的发送了邮件。 日志路径通常为: ```bash /var/log/maillog ``` 或者: ```bash tail -f /var/log/mail.log ``` 如果看到类似下面的信息,说明邮件已经发送出去了: ``` Mar 10 10:23:45 hostname sendmail[1234]: s2A23456789: to=recipient@qq.com, ctladdr=user@localhost (0/0), msgsize=1234 ``` --- ## ✅ 5. **检查网络连接与防火墙** 确保 sendmail 所在的服务器能访问 `smtp.qq.com` 的 465 或 587 端口。 ### 测试端口连通性: ```bash telnet smtp.qq.com 465 ``` 或 ```bash nc -zv smtp.qq.com 465 ``` 如果无法连接,可能是: - 防火墙阻止了该端口 - DNS 解析问题 - 网络策略限制 --- ## ✅ 6. **检查邮件内容格式** QQ 邮箱对邮件内容格式也有一定要求,比如: - 太多 HTML 标签 - 垃圾词(如“免费”、“点击”等) - 大量附件 - 发件人信息不完整 建议使用简单的文本邮件进行测试。 --- ## ✅ 7. **尝试用其他工具测试发送** 比如使用 `mutt`、`mailx` 或 Python 的 `smtplib` 来测试发送,看是否能收到邮件。 ### Python 示例: ```python import smtplib server = smtplib.SMTP('smtp.qq.com', 465) server.starttls() server.login('your_email@qq.com', 'your_authorization_code') server.sendmail('from@qq.com', ['to@qq.com'], 'Subject: Test\n\nThis is a test email.') server.quit() ``` --- ## ✅ 8. **联系 QQ 邮箱客服** 如果以上都试过还是不行,可能有临时封禁或系统问题,可以联系腾讯客服或通过 QQ 邮箱的帮助中心反馈问题。 --- ## 📌 总结 | 问题类型 | 解决方案 | |---------|----------| | 邮件被误判为垃圾邮件 | 检查垃圾邮件文件夹,设置白名单 | | sendmail 配置错误 | 检查 SMTP 配置、端口、加密方式 | | 授权码未启用 | 在 QQ 邮箱中开启 SMTP 并获取授权码 | | 日志无记录 | 查看 `/var/log/maillog` 确认发送状态 | | 网络不通 | 测试 `smtp.qq.com` 的连通性 | | 内容格式问题 | 使用简单文本邮件,避免垃圾词 | | 其他工具测试 | 用 Python、mutt 等验证 | --- 如果你愿意提供更多信息(比如 sendmail 的配置、日志片段、使用的命令等),我可以帮你进一步排查!
上一篇:
让WinSCP和Putty一直保持连接
下一篇:
【web开发原理】B/S架构原理分析
标题录入,一次不能超过6条
留言
评论