星期六, 6月 02, 2007

[linux] mail server 的觀念

for sendmail
relay-domains, access, sendmail.cw 的問題已經是 FAQ 了,再作一次回覆
也順便整理一下自己的思路。(之前常說錯 :P)

1. 如果要讓別人能夠寄信給自己的主機:
一台主機常有好幾個別名,如:mail.domain, dns.domain, domain 等,
只要將這些別名全部放入 sendmail.cw 中,sendmail 收到寄給這些
domain 的信件就會收下來。(這些別名在 DNS 中的設定也要配合)
注意:要讓別人能夠寄信給自己的主機 *無需* 設定 relay-domains 和
access 就可以達成!

2. 如果要讓別人可以用自己的主機寄信:
這就是要在 access 中加入,例如: 192.168.1 RELAY 這樣就開放給
192.168.1.xxx 的 IP 位置的電腦,可以用這台主機來寄信。而且只要
這台主機所能連結到的地方,都可以寄。這個檔案也可以用來檔信,
spam.domain REJECT 這樣就可以檔下由 spam.domain 所寄來的信。

3. 如果要作為另一台的備援主機:
當另一台 mail server 當機時,可以先收下她的信件,等到她恢復時再
轉回給她,這時就要在 relay-domains 中記入另一台 mail server 的
domain name 了,而且只要是在 relay-domains 中的主機,也都可以用
我們這台主機寄信(relay mail)。(備援主機還牽涉到 DNS 的 MX 記錄。)

sendmail.cw 及 relay-domains 修改後均須重新啟動 sendmail 才會生效,
而 access 則要作 makemap hash /etc/mail/access < /etc/mail/access
不需重新啟動 sendmail 。

沒有留言: