Почему письма, отправленные в root, никому не перенаправляются?
$ uname -a
Linux xxxx 4.9.0-4-amd64 #1 SMP Debian 4.9.51-1 (2017-09-28) x86_64 GNU/Linux
$ cat /etc/aliases
# See man 5 aliases for format
postmaster: root
root: root@xxxx.xxxx
письмо не получено никем.
$ sudo mail -f /var/spool/mail/nobody
"/var/spool/mail/nobody": 23 messages 1 new 19 unread
1 Anacron Tue Jan 9 00:07 20/823 Anacron job
'cron.daily' on xxxx
From: Anacron <root@xxxx.xxxx>
To: root@xxxx.xxxx
Subject: Anacron job 'cron.daily' on xxxx
Content-Type: text/plain; charset=UTF-8
Почему письмо, отправленное root, никому не перенаправлено?
$ sudo mail -f /var/spool/mail/root
/var/spool/mail/root: 0 messages
Нет почты в почтовом ящике root.
Отправьте письмо на root для проверки.
$ echo "This is the body of the email" | mail -s "This is the subject line" root
Все они могут получить электронное письмо.
$ sudo mail -f /var/spool/mail/root
$ sudo mail -f /var/mail/root
$ sudo mail -f /root/Maildir
Только никто не может получить электронное письмо.
$ sudo mail -f /var/spool/mail/nobody
Информация журнала в /var/log/mail.log
$ sudo cat /var/log/mail.log
Apr 27 17:48:43 xxxx postfix/pickup[7114]: 1FE0D2801E3: uid=1000 from=<debian9@xxxx.xxxx>
Apr 27 17:48:43 xxxx postfix/cleanup[7492]: 1FE0D2801E3: message-id=<20180427094843.1FE0D2801E3@xxxx.xxxx>
Apr 27 17:48:43 xxxx postfix/qmgr[1394]: 1FE0D2801E3: from=<debian9@xxxx.xxxx>, size=360, nrcpt=1 (queue active)
Apr 27 17:48:43 xxxx postfix/local[7494]: 1FE0D2801E3: to=<root@xxxx.xxxx>, relay=local, delay=0.21, delays=0.17/0/0/0.04, dsn=2.0.0, status=sent (delivered to command: procmail -a "$EXTENSION")
Apr 27 17:48:43 xxxx postfix/qmgr[1394]: 1FE0D2801E3: removed
Почему postfix перенаправляет почту из root никому?
3 ответа
Проверьте наличие файла с именем $HOME/.forward
, Если этот файл существует и содержит адрес электронной почты или локальное имя пользователя, то входящая почта для пользователя, которому принадлежит файл, будет перенаправлена на указанный адрес.
Например, это может выглядеть так:
debian9@hwy:~$ sudo cat /root/.forward
nobody
debian9@hwy:~$
Как говорится в некоторых материалах:
Procmail
Почта root не доставляется никому. Если вы используете procmail (или какую-либо другую команду) для локальной доставки почты, Postfix не будет доставлять почту как root. Вместо этого Postfix запускает procmail (или что-то еще) как никто. Возможно, однажды Wietse будет доверять Postfix достаточно для запуска внешних команд от имени root.
Postfix не только запускает procmail (или что-то еще) от имени пользователя, но также доставляет электронную почту никому от имени пользователя root.
Некоторый старый материал в сети: Странная доставка в конфигурации postfix / procmail
Собственный агент доставки Postfix может доставить в почтовый ящик root, но postfix НИКОГДА не будет разветвлять внешнюю программу (например, procmail) как root. он либо изменяет UID на владельца доставляемой почты, либо, если этот пользователь является пользователем root, то он меняет UID ни на кого.
Таким образом, procmail запускается как никто при доставке почты root.
Как отметил пользователь @scrapy, перенаправление/пересылка выполняется с помощью procmail. Посмотрите файл /etc/postfix/main.cf , чтобы проверить, присутствует ли эта строка:
Чтобы пользователь root мог получать электронную почту, вы можете просто связать корневой mbox с none mbox , вот так (если вы используете mbox):
ln -s /var/mail/{nobody,root}