edenCC
sendmail 如何做到只让部分用户直接走MX发信
如题, 用RHEL AS4-U5自带的sendmail程序, 希望实现这样的功能:
部分用户的信件保留在本地
部分用户的信件直接走MX投递
kenduest
[quote]原帖由 [i]edenCC[/i] 于 2008-3-5 21:25 发表 [url=http://bbs.chinaunix.net/redirect.php?goto=findpost&pid=8043643&ptid=1061322][img]http://bbs.chinaunix.net/images/common/back.gif[/img][/url]
如题, 用RHEL AS4-U5自带的sendmail程序, 希望实现这样的功能:
部分用户的信件保留在本地
部分用户的信件直接走MX投递 [/quote]
老實說完全看不懂你要的需求。
--
edenCC
邮件服务器在本机, 但是MX记录指向了另一台主机A.
客户发信时,先发到本机, 然后A主机会自动从本地主机收取邮件处理.
希望实现这样的功能, 让邮件服务器直接把本地部分客户的邮件通过MX投递到A, 另外一部分客户的邮件留在本地.
kenduest
需求有點奇怪...
若是 [email]id@hostname.com[/email] 就是指這台實際的 mail server, 那寄給 id@hostname 時就會連到該機器的 mta 來處理, mta 會收到後直接放到使用者 mailbox 內.
既然如此的話,怎麼又會出現再次投遞寄信出去的問題呢 ?
那假設該主機只是 relay host 的話,那情況就會比較合理。該情況來說 postfix 可以設定 /etc/postfix/transport 達成需求,一般確認 postfix 組態設定帶有該項目:
[code]transport_maps = hash:/etc/postfix/transport[/code]
內容格式像是:
[code]abc.com smtp:[mail.xxx.com][/code]
表示要寄信給 [email]id@abc.com[/email] 信件請 mail.xxx.com 主機代為 relay 寄信處理. 當然不要忘記該文件改好後要使用 postmap 建立後續使用的 transport.db 才可使用.
若是使用 sendmail 的話,一般考慮使用 mailertable 即可,像是 /etc/mail/mailertable 配置:
[code]
[code]abc.com smtp:[mail.xxx.com][/code]
[/code]
最後用 makemap hash mailertable < mailertable 建立實際的 .db 檔即可使用.
--
gucuiwen
看了三次楼主的描述,终于看明白了,其实就是邮件路由的概念或者说relay,qmail可以修改smtproutes配置文件,postfix可以配置transport_maps, sendmail不熟悉。不知道如何配置,但是应该能实现。
其实这个需求平时还是有的,比如有一家小公司,有一台自己的邮件服务器,但是技术力量不强,反垃圾反病毒等需求就委托给另一家比较有技术力量的公司,进来的邮件先到那家技术力量大的公司去杀毒和反垃圾,然后再最终发到小公司自己的邮件服务器上。那家大公司也有自己的邮件应用,因此就产生了一部分邮件域的邮件要保留在本地,另一部分邮件域的邮件要转发到其他服务器的需求。