Dovecot

使用 dovecot 創建自定義郵箱

  • August 16, 2017

我正在嘗試設置 dovecot + sieve 外掛。我正在起訴 Maildir 格式。我使用 Thunderbird 來閱讀電子郵件,所以我的伺服器上不需要網路郵件。基本配置工作正常,但現在我想在篩子中添加一些規則來重定向一些郵件,例如這個:

require ["envelope", "fileinto"];
if envelope :is "from" "test@mydomain.com" {
   fileinto "Test";
}

但是篩子找不到“測試”目錄,因此將其放入“收件箱”。/var/log/syslog輸出 :

dovecot: lda(test@mydomain.com): Error: sieve: msgid=<[...]>: failed to store into mailbox 'Test': Mailbox doesn't exist: Test
dovecot: lda(test@mydomain.com): sieve: msgid=<[...]>: stored mail into mailbox 'INBOX'

因此,我嘗試通過在 dovecot 中使用此 conf 手動添加郵箱(但理想情況下,我希望它在篩子請求新郵箱時自動添加):

namespace inbox {
 inbox = yes
 location = 
 mailbox Drafts {
   auto = subscribe
   special_use = \Drafts
 }
 mailbox Junk {
   auto = subscribe
   special_use = \Junk
 }
 mailbox Sent {
   auto = subscribe
   special_use = \Sent
 }
 mailbox Test {
   auto = subscribe
 }
 mailbox Trash {
   auto = subscribe
   special_use = \Trash
 }
 prefix = 
}

就像在收到郵件時創建郵箱並將郵件儲存在其中~/mail/Test/new/但我在 Thunderbird 中找不到文件夾/郵箱“測試”。每個其他郵箱在 Thunderbird 中正確顯示為文件夾,但不是新郵箱。

我究竟做錯了什麼 ?我找不到任何使用自定義郵箱(只有少數預設郵箱)的 dovecot 配置範例。dovecot甚至可以嗎?更好的是:有沒有辦法在篩子需要新郵箱時自動創建郵箱?

使用篩能力的:create參數mailbox(不要忘記require它!):

require ["envelope", "fileinto", "mailbox"];
if envelope :is "from" "test@mydomain.com" {
   fileinto :create "Test";
}

好的,Jens Erat 所說的正是我想要的。require我在嘗試使用時忘記了它,:create但現在可以了。伺服器在接收時創建新郵箱。

對於那些想知道的人,我還發現,在 Thunderbird 中,您必須右鍵點擊您的郵箱 > 訂閱 > 訂閱新文件夾,以便它檢查在伺服器端創建的文件夾中的郵件。它不會自動訂閱那些(除非有一個選項但我沒有看到它)

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