Debian
新電子郵件到達時執行腳本(Postfix / Dovecot)
當我在我的郵件伺服器上收到一封新郵件時,我想執行一個備份腳本 (.sh)(在帶有 Postfix / Dovecot 的 Debian 上執行)。我發現了很多關於這個主題的文章,但沒有人給我一個可行的解決方案。這是我測試過的最後一個解決方案:https ://stackoverflow.com/questions/27230324/run-script-when-postfix-dovecot-get-new-mail 。有人有建議嗎?
編輯:當我收到一封新郵件時,我想執行一個 bash 腳本並讓 postfix/dovecot 將此新郵件放在 ~/Maildir 文件夾中。我正在尋找一種不會阻塞標準流程的“中間件”
如果您的實際問題是如何保留郵件伺服器接收(和發送)的每條消息的備份,則答案是設置選項
always_bcc
並指定郵箱。根據您的設置,您可以將該郵箱(或別名)收到的消息轉發到腳本以進行進一步處理。
例如在/etc/aliases中:
mailbox: "| /usr/local/bin/script.pl"
根據評論編輯:
相當老派,但是當您的電子郵件使用者是系統使用者並且有主目錄時,有舊的 sendmail 樣式
.forward
文件,仍然受 postfix 支持。語法有點神秘,但是具有~mailuser/.forward
以下內容的內容既可以將消息傳遞到使用者的郵件儲存庫,也可以將其轉發到腳本:\mailbox, "| /usr/local/bin/script.pl"