感谢网友 马剑 的 马剑的网志:http://www.ieasy.org/coffee/archives/cat_ec.html
提供解方法!
Postfix 根据信件目标地址选择relay
先贴一下当时的问题:
现在的需求是
宿舍的机器只能访问免费地址
所以如果让postfix直接发信到目标的smtp服务器
很多发往国外的信就发不出去了。
我就不得不用一个能发信到各处的smtp服务器作为relay
(当然它允许在认证后relay)
而我希望的是能够根据目标的ip,
如果是免费ip,postfix就直接发送
如果不是,才使用relay
该怎么设置?
------------------
然后现在的解决方案
多亏了smth的一个高手指点:)
"man 5 transport"
讲一下我做的步骤
首先编辑/etc/postfix/transport
加入
#开始
pku.edu.cn smtp:
.pku.edu.cn smtp:
sohu.com smtp:
#以上几个地址的邮件使用smtp直接发送
* :
# 其他的地址使用main.cf里定义的默认的方式(默认的relay)发送
#结束
postmap /etc/postfix/transport
在/etc/postfix/main.cf里加入
transport_maps = hash:/etc/postfix/transport
postfix reload
这个解决了我的问题,不过还没有达到我的针对免费ip选择relay的需求
大家如果有什么新的想法欢迎讨论:)