求助:AIX 7.1上Sendmail 8.14.4信封发件人地址重写配置问题
AIX 7.1上Sendmail 8.14.4信封发件人地址重写配置方案
我在AIX上折腾过Sendmail的地址重写,刚好碰到过类似需求,给你一步步说怎么搞定:
1. 先备份配置文件(重要!)
修改之前一定要备份原文件,避免改崩了没法回滚:
cp /etc/mail/sendmail.mc /etc/mail/sendmail.mc.bak cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.bak
2. 编辑sendmail.mc配置
打开/etc/mail/sendmail.mc,找到MASQUERADE相关的配置块(如果没有就新增),添加以下内容:
# 确保信封发件人被重写(默认可能没开) FEATURE(masquerade_envelope)dnl # 将域名伪装为foo.com MASQUERADE_AS(foo.com)dnl # 自定义规则集1(专门处理信封发件人地址) LOCAL_RULE_1 # 匹配格式:用户名@servername.foo.org,替换为用户名_it@foo.com R$+ < @ servername.foo.org. > $1_it < @ foo.com. >dnl
注意:
- 把
servername替换成你实际的服务器主机名(比如你的服务器叫srv01,就写成srv01.foo.org.,末尾的点不能丢,Sendmail内部处理FQDN时会带点) dnl是Sendmail mc文件的注释标记,用来消除多余的换行和空格,一定要加上
3. 生成新的sendmail.cf配置文件
AIX上用m4命令把mc文件编译成cf文件:
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
4. 重启Sendmail服务
用AIX的系统资源控制器命令重启服务:
stopsrc -s sendmail startsrc -s sendmail
5. 测试配置是否生效
用sendmail -bv命令测试地址重写效果,比如:
sendmail -bv testuser@servername.foo.org
如果配置正确,输出应该显示testuser_it@foo.com... deliverable,说明地址已经被正确重写了。
也可以发一封测试邮件,查看邮件的信封发件人信息来验证。
内容的提问来源于stack exchange,提问作者azk
相关产品推荐
相关产品推荐

