Postfix

如何丟棄從特定本地使用者發送到外部地址的郵件?

  • January 26, 2017

如何將 Postfix 配置為靜默丟棄/丟棄從我的一位使用者發送到外部地址的郵件?

我已經能夠使用以下 transport_maps 將所有郵件丟棄到外部地址

example.com      :
*          discard:

但是,我只想將此規則應用於我的 Postfix 伺服器中的一個使用者。

此外,發往外部和本地地址的郵件也應僅發送給本地使用者。

為什麼我需要這個?

我工作的公司認為實習生不應該直接給客戶發郵件。因此,實習生將使用客戶地址發送一封郵件to,並將他的主管添加到cc. 那麼 Postfix 應該只把郵件投遞給主管,這樣他就可以在不搜尋客戶地址的情況下查看並發送郵件給客戶。

為了做 OP 需要的事情,我們需要在傳輸層進行檢查,這很簡單。

  1. 將以下行添加到**/etc/postfix/main.cf**
sender_dependent_default_transport_maps = hash:/etc/postfix/sender_transport_maps
  1. 創建**/etc/postfix/sender_transport_maps**如下
user@local.domain   discard
  1. 創建 postfix 映射文件並重新啟動 postfix
cd /etc/postfix
postmap sender_transport_maps
service postfix restart

此方法有效,因為 postfix 僅對出站郵件使用傳輸映射。在這種情況下,我們不使用普通的 smtp 服務 (smtp:),而是使用 postfix DISCARD 服務。

引用自:https://unix.stackexchange.com/questions/58633