ddn*_*mad 5 debian email postfix
我在我的 Debian VPS 中设置了一个邮件系统。除了我无法向 user 发送电子邮件外,一切都很顺利root
。
有一种解决方法可以指定/etc/aliases
类似
root: <some_other_user>
然后所有发送到的电子邮件root@<fqdn>
都会进入<some_other_user>@<fqdn>
邮箱。
从安全的角度来看,它甚至更好,但我想知道是否有办法向用户发送电子邮件root
。
所以是的,在技术上可以使用 Postfix 吗?如果是这样,我该怎么做?
更新:
这是postfix.service
日志:
Apr 26 22:18:25 <hostname><fqdn> postfix/qmgr[2375]: 3905421760: from=<ddnomad@<fqdn>>, size=631, nrcpt=1 (queue active)
Apr 26 22:18:26 <hostname><fqdn> postfix/local[2429]: 3905421760: to=<mailuser@<fqdn>>, orig_to=<root@<fqdn>>, relay=local, delay=1.3, delays=0.21/0.01/0/1, dsn=2.0.0, status=sent (delivered to command: procmail -a "$EXTENSION")
Run Code Online (Sandbox Code Playgroud)
据我了解,这意味着这封信已成功发送。但它从未被送到root
的邮箱。
postfix 使用procmail
, 来发送电子邮件,并且出于安全原因运行的postfix
调用,发送到的电子邮件最终将发送给用户。procmail
nobody
root
nobody
Debian 邮件列表比我解释得更好,并建议解决:
postfix 自己的投递代理可以投递到 root 的邮箱,但 postfix 永远不会以 root 身份分叉外部程序(例如 procmail)。它将 UID 更改为正在传递的邮件的所有者,或者如果该用户是 root,则将 UID 更改为 nobody。
所以 procmail 在传递 root 的邮件时会以 nobody 运行。
我通过将 /var/spool/mail/root 符号链接到 /var/spool/mail/nobody 来解决这个问题 - 然后我可以以 root 身份读取 root 的邮件。
请注意,这不是推荐的做法 - 大多数人会建议您将 root 的邮件定向到 /etc/aliases 中的另一个用户。
在线程的更深处,他们还记得postfix
有关根邮件的常见问题解答:
如果您使用 procmail(或其他一些命令)进行本地邮件传递,Postfix 将不会以 root 身份传递邮件。相反,Postfix 以无人身份运行 procmail(或其他)。也许有一天 Wietse 会足够信任 Postfix 来以 root 身份运行外部命令。解决方案:就像您不应该以 root 身份登录(异常情况除外)一样,您也不应该以 root 身份接收邮件。
为 root 创建一个邮件别名,将邮件转发给真实用户。
归档时间: |
|
查看次数: |
1415 次 |
最近记录: |