2009年7月29日 星期三

Postfix的郵件"備份"方式

Postfix也可以使用BCC的方式來備份收發的信件

vim /etc/postfix/main.cf

有三種模式可以使用,直接在main.cf加入即可
1.以收件者判斷
recipient_bcc_maps = hash:/etc/postfix/recipient_bcc
加入後編輯規則檔
vim /etc/postfix/recipient_bcc
User@mail.com.tw bcc@mail.com.tw
存檔後產生DB
/usr/sbin/postmap /etc/postfix/recipient_bcc

2.以寄件者判斷
sender_bcc_maps = hash:/etc/postfix/sender_bcc
加入後編輯規則檔
vim /etc/postfix/sender_bcc
Sender@mail.com.tw bcc@mail.com.tw
存檔後產生DB
/usr/sbin/postmap /etc/postfix/sender_bcc


3.全部備份
always_bcc = Admin@mail.com.tw
直接加入要轉寄的帳號即可

※關鍵字範例

1."user@mail.tw":指定帳號
2."user*@mail.tw":指定帳號含萬用字元
3."user":指定本機帳號
4."user*":指定本機帳號含萬用字元
5."@mail.tw":指定網域

33 意見:

匿名 提到...

MIS大大請問以收件者判斷和以寄件者判斷可同時使用嗎

Yow 提到...

可以~

匿名 提到...

不好意思是否需重啟postfix
因我重啟後
就變不能收發信了

Yow 提到...

可以不用重啟~
但是
重啟後也不應該會不能收發

你改了什麼設定?

匿名 提到...

我只在main.cf加入
recipient_bcc_maps = hash:/etc/postfix/recipient_bcc
sender_bcc_maps = hash:/etc/postfix/sender_bcc
這樣而已

Yow 提到...

只有加這個不至於會不能收發呀~
檢查看看maillog的錯誤訊息,看看是什麼地方出錯?

匿名 提到...

問題已經解決了
目前可以cc了
在main.cf中加入
recipient_bcc_maps = hash:/etc/postfix/recipient_bcc後
在終端執行postmap /etc/postfix/recipient_bcc
重啟postfix 就OK了
sender_bcc操作方法一樣

Yow 提到...

你之前都沒有做 postmap 呀....

匿名 提到...

之前都沒碰過postfix
剛來時就有postfix了
都靠mis大大的教學學習的
所以也不知道有沒有

Yow 提到...

我的意思是....
每次修改 /etc/postfix/recipient_bcc 後,都要記得做 postmap 來產生DB,不然規則不會生效喔~

匿名 提到...

mis您好
請問我有些特定帳號有用iphone與outlook收信
要怎樣設定才能讓iphone與outlook都能收到一樣的信

Yow 提到...

iphone與outlook是使用同一個帳號還是不同帳號?

不同帳號的話用recipient_bcc_maps就可以

如果是同一個帳號的話,可以在OUTLOOK的帳號設定"在伺服器上保留一份郵件複本"

匿名 提到...

同一帳號 我也有在outlook設定保留一份複本 但iphone上無法設定 如iphone先收 那outlook還收得到一樣的信嗎 謝謝

Yow 提到...

http://support.apple.com/kb/HT1668?viewlocale=zh_TW&locale=zh_TW

APPLE的網站說明:
1.在 iPhone 或 iPod touch 上,POP 帳號的預設值是將郵件保留在伺服器上。如果您已變更 iPhone 上的預設值,則郵件只會儲存在您的 iPhone 上。

2.如果將 [移除刪除的郵件] 選項設定為 [永不],則清除功能仍會根據上述 [顯示] 設定,移除裝置中的郵件。不過,郵件仍保留在伺服器上。請注意,[移除刪除的郵件] 設定位於設定 > 電子郵件/聯絡資訊/行事曆 >(點一下電子郵件帳戶)> 進階。

所以,
用iPhone收信時信應該還會留在伺服器上

匿名 提到...

感謝MIS大大提供的寶貴資訊
感激不盡

匿名 提到...

請問mis大大
可以一個帳號同時cc給兩個不同帳號嗎

Yow 提到...

POSTFIX官網的說明是:

Optional BCC (blind carbon-copy) address lookup tables, indexed by recipient address. The BCC address (multiple results are not supported) is added when mail enters from outside of Postfix.

只能CC到一個帳號,需要CC到多個信箱建議可搭配MailScanner來達成。

匿名 提到...

再請問mis大大如果etc底下無MailScanner資料夾是不是就代表之前沒安裝MailScanner?
可以只單獨裝MailScanner嗎?

Yow 提到...

理論上是,也是有可能裝在別的地方
你可以看看有沒有Mailscanner的scrvice

如果CC的兩個信箱是用來備份的
可以試試看 A->B,B->C 的方式

匿名 提到...

請問如何查有沒有Mailscanner的scrvice呢?
A->B,B->C 的方式試過不行><

Yow 提到...

執行
service MailScanner status
可以看到MailScanner的狀態

匿名 提到...

不好意思MIS大大我執行service MailScanner status
顯示MailScanner: 服務未能辨識
You have new mail in /var/spool/mail/root
應該就代表沒裝MailScanner吧
請問我只要再只安裝MailScanner就可以了嗎?如果要備份POSTFIX中的所有帳號資料該如何備份呢?

Yow 提到...

對~沒有安裝。
建議先架個測試環境來模擬安裝。
帳號的部分一般是使用系統帳號或是資料庫,最好先備份POSTFIX的設定檔。

匿名 提到...

已用另一方法測試成功
編輯/etc/aliases
zzz: aaa@ mail.com.tw, bbb@ mail.com.tw
終端執行
postalias /etc/aliases

編輯/etc/postfix/ sender_bcc
yyy zzz → yyy寄出的信自動cc給aaa和bbb
終端執行
postmap /etc/postfix/ sender_bcc
service postfix restart

Yow 提到...

XD 原來還可以用別名這招~

匿名 提到...

大大 請教一下

我的需求如下

mail 帳號 有 a@com.tw b@com.tw 分別要備份到 admin@com.tw

我在sender_bcc設定
a@com.tw admin@com.tw
b@com.tw admin@com.tw

這樣可行嗎?

Yow 提到...

可以~ sender_bcc的規則可以有很多條

匿名 提到...

MIS大大請教一下,使用者大都是用outlook來寄,收信件,透過Mail主機收發信,請問我可用aliases郵件別名方式,將單一使用者帳號的寄出郵件備份到指定信箱嗎?請問語法該如何設定?

Yow 提到...

如果只是要備份寄出的信,建議使用 sender_bcc

如本文內第二種方式
先設定
sender_bcc_maps = hash:/etc/postfix/sender_bcc

後編輯規則檔
/etc/postfix/sender_bcc

Sender@mail.com.tw bcc@mail.com.tw
(寄件者的帳號) (用來備份的帳號)
存檔後產生DB
/usr/sbin/postmap /etc/postfix/sender_bcc

匿名 提到...

請教一下
如果是單一帳號轉送到多個帳號要如何設定

a@domain.com b@domain.com
a@domain.com c@domain.com

這樣設定嗎?測試結果只有 b 帳號可收到信 c 帳號就沒有.請問要如何修正?謝謝

Yow 提到...

postfix只支援單帳號喔~
要多帳號建議使用Mailscanner

焄懷 提到...

請問 postfix 備份"包含"被 spam 檔掉 的信件嗎 ? 感謝!

Yow 提到...

一般SPAM過濾會放在POSTFIX之前,所以在進入POSTFIX前被擋掉就備份不到了

##EasyReadMore##