邮箱服务中的代发邮件-发送邮件登录账号不等于发件地址 MAIL FROM≠登录账号

SMTP协议本身是"允许伪造发件人"的!

在原始SMTP(RFC 5321)中:

复制代码
MAIL FROM:<任何地址>


也就是说:
SMTP AUTH ≠ MAIL FROM
登录身份 ≠ 发件人

协议层根本不关心你是谁,两者默认是完全独立的

即发邮件时以a@mydomain.com登录然后以b@mydomain.com作为发件人地址是允许的。

Postfix 邮局默认设置是允许"代发邮件"的。宝塔邮局(基于 Postfix 和 Dovecot 搭建)也是默认允许已认证的用户以该域名下的任何邮箱地址发送邮件,并且界面上没有相应的开关。

要禁用这个功能,需要修改Postfix配置文件中的 smtpd_sender_restrictions 选项开启 reject_sender_login_mismatch。 (SMTPd 发送方限制规则中开启"拒绝发送方登录不匹配")

文件路径:/etc/postfix/main.cf

如果要设置指定的账号登录可以用任意地址发邮件,但其他未显式声明的账号只能用自己地址发邮件,则需要开启 reject_authenticated_sender_login_mismatch,。并用一个文件定义"特权用户"

1、创建白名单文件:

复制代码
vi /etc/postfix/admin_exception

2、输入"特权用户" 账号+ "OK"(每行一个):

复制代码
admin@mydomain.com    OK
manager@mydomain.com  OK

3、生成数据库:

复制代码
postmap /etc/postfix/admin_exception

4、修改 Postfix 配置逻辑,编辑 /etc/postfix/main.cf,找到 smtpd_sender_restrictions 部分。如果不存在,请直接添加。

复制代码
smtpd_sender_restrictions =
    check_sasl_access hash:/etc/postfix/admin_exception,
    reject_authenticated_sender_login_mismatch,
    permit_sasl_authenticated



备注:此处顺序不能错,check_sasl_access 必须在 reject_authenticated_sender_login_mismatch 之前。

这里的执行逻辑是从上到下、命中即停止 :

  • (1) check_sasl_access : Postfix 先看登录 SMTP 的账号是不是在 admin_exception 里。如果是管理员,直接返回 OK。由于命中了 OK,Postfix 会跳过后面所有的检查,管理员从此可以随意代发。

  • (2) reject_authenticated_sender_login_mismatch : 如果登录账号不在白名单中,则进入这一条。它是 Postfix 的内置硬规则:"登录账号=发件人"。

5、重启 Postfix

复制代码
systemctl restart postfix

===========

如果要启用日志,翻查谁冒充谁,启用邮件日志记录。

复制代码
# 启用邮件日志记录
smtpd_tls_loglevel = 1
相关推荐
爱和冰阔落43 分钟前
【Linux网络】TCP 服务器怎么写?从 listen、accept 到 read/write,手写完整 Echo Server
linux·运维·服务器·网络
全栈陈序员3 小时前
【Git】从入门到精通(十)—— 撤销与恢复:git checkout与git restore
运维·网络·数据库·git
天远Date Lab11 小时前
零信任架构实战:基于天远租凭分期报告构建自动化汽车以租代购免押风控网关
网络·人工智能·架构·自动化
IT猿手13 小时前
实现NAPT、Easy-IP、NATserver、NATstatic
网络
迪康Defender13 小时前
终端供应链安全:应用白名单与软件正版化检测落地|终端安全治理实践
运维·服务器·网络·安全·web安全·自动化·运维开发
xiaoye-duck15 小时前
《C++ 项目:手写大模型接入 SDK》DeepSeek接口设计(下):流式响应实现和测试
开发语言·网络·c++·语言模型
其实防守也摸鱼16 小时前
信创安全竞赛知识总结与题库
大数据·网络·人工智能·算法·安全·php
万联WANFLOW16 小时前
异地厂区视频监控远程运维:从组网到安全的实施要点
运维·网络·安全·企业组网·sdwan
衍玊17 小时前
深入剖析 TCP/IP 网络通信原理与内核实现
服务器·网络·tcp/ip
.Bryce.17 小时前
从零到一开发技术名词大全:从需求分析到 AI Agent 工程
java·网络·人工智能·agent·需求分析·agent评测