Chinaunix首页 | 论坛 | 博客
  • 博客访问: 586396
  • 博文数量: 129
  • 博客积分: 6240
  • 博客等级: 准将
  • 技术积分: 1765
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-18 15:42
文章分类

全部博文(129)

文章存档

2015年(1)

2012年(3)

2011年(6)

2010年(14)

2009年(105)

我的朋友

分类:

2011-09-05 21:03:30

问题:

    我们公司有几个分公司,他们应用的是domino系统,邮件收发权限是这样设置的:对于本公司的大部分员工EMAIL是只准接收邮件,没有回复权限,比如A这个用户,他只有接收外部(其他域)的邮件,但是不能回复或者发送邮件给外部(其他域)。
   还有,我们的子公司都有自己的域名,如果限制了外发权限,但是要对自己其他子公司开绿色通道,这个如何在postfix里面定规则呢?

解决方案:

1)在main.cf里定义如下的smtpd_restriction_classes:引用:


# restrictions
smtpd_restriction_classes = local_out_only local_in_only
local_out_only = check_recipient_access hash:/etc/postfix/local_domains, reject
local_in_only = check_sender_access hash:/etc/postfix/local_domains, reject



2)将main.cf里的smtpd_recipient_restrctions定义为:引用:


smtpd_recipient_restrictions =
  check_sender_access hash:/etc/postfix/local_out_senders
  check_recipient_access hash:/etc/postfix/local_in_senders
  permit_mynetworks,
  permit_sasl_authenticated,
  reject_non_fqdn_hostname,
  reject_non_fqdn_sender,
  reject_non_fqdn_recipient,
  reject_unauth_destination,
  reject_unauth_pipelining,
  reject_invalid_hostname



3)编辑/etc/postfix/local_in_senders:引用:

local_in_only
local_in_only



4)编辑/etc/postifx/local_out_senders:引用:



local_out_only
local_out_only



5)编辑/etc/postfix/local_domains:引用:


byit.org OK
bbyyit.org OK



6)为3,4,5建立对应的hash文件: 引用:
# postmap hash:/etc/postfix/local_in_senders
# postmap hash:/etc/postfix/local_out_senders
# postmap hash:/etc/postfix/local_domains



    这样就定义了byit.org域名里两个用户bbb和ccc,他们是受限用户,在此允许他们域内byit.org往来邮件,也可以与域bbyyit.org的用户来往邮件,对于其他外部的邮件则没有收或发的能力。

    如果外部邮件企图给这2个用户发送,则遇到如下错误: 引用:


554 5.7.1 <>: Recipient address rejected: Access denied



    如果这2个内部用户要给其他外部用户发email,将遇到如下错误: 引用:


554 5.7.1 <>: Sender address rejected: Access denied



   目前这样的配置就可以比较完整的实现内部用户的功能需求,并且允许与指定域进行信件往来。

流程解析图,见附件
有更好的解决方法,流程图是根据我现有思路整理的,您可以根据此图转换A、B角色进行测试。
时间仓促,请大家多多指教!谢谢!

阅读(1654) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~