Postfix 根据信件目标地址选择relay

博客围绕宿舍机器发信问题展开,因宿舍机器只能访问免费地址,发往国外的信常发不出,需用可发信到各处的smtp服务器作中继。作者给出了一种设置方案,编辑相关文件并进行操作,但未完全满足根据免费IP选择中继的需求,欢迎大家讨论新想法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 
感谢网友
马剑 马剑的网志: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的需求
大家如果有什么新的想法欢迎讨论:)

由 coffee 发表23:05 | 回复 (0) | 引用
### 安装和配置Postfix邮件服务器 #### 准备工作 为了确保系统的稳定性和安全性,在开始安装之前应该先更新系统软件包列表并升级已有的软件包。对于基于Debian的发行版,如Ubuntu,可以执行如下命令来完成这一步骤[^1]。 ```bash sudo apt update && sudo apt upgrade -y ``` #### 安装Postfix 通过官方仓库可以直接安装Postfix邮件传输代理(MTA),这是构建电子邮件基础设施的关键组件之一。具体来说,可以通过下面这条简单的APT命令来进行安装: ```bash sudo apt install postfix -y ``` 需要注意的是,如果希望集成MySQL数据库支持,则应使用`postfix-mysql`代替普通的`postfix`包名进行安装[^2]。 #### 配置Postfix 安装完成后,默认情况下会启动服务并且创建基本配置文件位于路径`/etc/postfix/main.cf`下。要将其设置成仅发送模式或其他特定功能需求,就需要编辑此文件以调整参数设定。例如,更改mydestination选项为空字符串表示不接收外部发来的信件;而inet_interfaces设为loopback-only则意味着只监听本地接口上的连接请求[^4]。 ```bash vim /etc/postfix/main.cf ``` 在该文件内添加或修改以下几项重要的全局变量定义: - `myhostname`: 设置主机名称。 - `mydomain`: 设定域名部分。 - `myorigin`: 发送者地址中的域后缀。 - `relayhost`: 中继服务器地址(如果有)。 - `mynetworks`: 可信任网络范围内的IP地址列表。 保存更改后的配置文件,并重启Postfix使新的设置生效: ```bash sudo systemctl restart postfix ``` 最后验证服务状态以及能否正常运行非常重要。可以利用systemctl工具查看当前的服务状况,也可以尝试向其他邮箱发送一封测试邮件确认整个过程无误。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值