【问题标题】:Which user are my php scripts sending email as?我的 php 脚本以哪个用户身份发送电子邮件?
【发布时间】:2011-02-07 21:09:19
【问题描述】:

我已经设置了一个 postfix 邮件服务器,现在我可以通过 'localhost' 端口 25 发送连接到 smtp 服务器的电子邮件。

但我不知道如何检查邮件是由哪个用户发送的。我可以在不验证自己的情况下发送,虽然它不是一个开放的中继:它似乎只适用于 localhost。

我想强制进行身份验证,或者至少知道哪个用户正在发送邮件,这样我就可以为他设置一个配额,以及一个允许的“发件人”(现在我可以选择任何可用的域作为发件人,通过 php 脚本发送时)

除了 /var/log/maillog 中的邮件“发件人”和“收件人”之外,我找不到任何其他内容。

有什么想法吗?

【问题讨论】:

    标签: php linux email centos postfix-mta


    【解决方案1】:

    你的问题很困惑。

    我假设您正在谈论使用“邮件”命令时会发生什么;在 Unix 系统上,它只运行 php.ini 文件中定义的程序 - 有一些库允许您通过创建到 MTA 的网络连接来发送邮件 - 在这种情况下,uid 不能直接用于 MTA - 和是大多数管理员会配置身份验证的场景。

    发送者的 uid 将是 PHP 运行的 uid。

    MTA 是否需要身份验证与调用邮件的 uid 关系不大。

    在这种情况下,电子邮件的发件人将是电子邮件的 FROM 地址。

    我想强制认证

    然后使用基于套接字的邮件程序,例如 phpmailer() 并将您的 MTA 配置为需要身份验证。

    【讨论】:

    • 我使用的是 MTA,但从 localhost 连接时不需要身份验证。我只是将邮件发送到 localhost 25 并且它可以工作。如何在 centos 中使用后缀禁用它?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-16
    • 1970-01-01
    • 2021-05-31
    • 1970-01-01
    • 2012-09-12
    • 2020-08-04
    • 2011-04-28
    相关资源
    最近更新 更多