Postfix

Postfix sendmail -bs 顯示沒有輸出 - 權限?

  • December 6, 2012

當我sendmail -bs以 root 身份執行命令時,我得到了預期的輸出:

$ sudo sendmail -bs
220 mydomain.com ESMTP Postfix
ehlo localhost
250-mydomain.com
250-PIPELINING
250-SIZE 15728640
250-ETRN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN

但是當我在沒有 sudo 的情況下執行相同的命令時,我根本沒有得到任何輸出,並且 sendmail 不會響應任何命令:

$ sendmail -bs
ehlo localhost
quit
wtf
^C
$ 

如何配置 Postfix 以便 sendmail 對每個使用者(或至少對某些特定使用者)都有效?我需要這個,因為 SwiftMailer for PHPsendmail -bs用於發送郵件並且在找不到任何輸出時失敗。

如文件所述,sendmail -bs通過執行smtpd(8)守護程序來實現。

由於它綁定到埠 25,因此它需要 root 權限。

考慮使用 SwiftMailer 代替其他發送選項之一,例如批處理模式或 SMTP 模式。

正如還記錄的那樣,除非您使用個性sendmail -bs執行它,否則它不會像“真正的”後綴 SMTP 伺服器一樣執行。mail_owner

與批處理模式相比,唯一的優勢是 SMTP 模式允許您通過 postfix 的訪問控制來執行消息。由於您無法按照目前使用的方式執行此操作,請改用批處理模式。

引用自:https://serverfault.com/questions/455614