有些时候在postfix中需要控制某个用户只能发内部邮件(只能发给本域用户的邮件) 可以使用postfix 的 RESTRICTION CLASS 来解决 下面简单描述下RESTRICTION CLASS 的原理,明白这个原理就可以解决控制某个用户只能发内部邮件的问题 我们可以使用check_xxxx_access来进行一些控制,例如接受任何来自1.1.1.1的邮件,设置如下: smtpd_recipient_restrictions = check_client_access regexp:/etc/postfix/client_access.txt 在/etc/postfix/client_access.txt 加入以下内容: /1\.1\.1\.1/ OK 但是check_xxx_access的执行方式比较单一:如果符合某个“单一条件”,则执行某个动作 很多时候,我们需要符合“两个”或者多个条件才执行某个动作, 例如:拒接来自1.1.1.1的并且发送人地址为[email]a@a.com[/email]的邮件; 但是接受来自1.1.1.1,发送人地址为"非[email]a@a.com[/email]"的邮件 此时我们单一使用check_sender_access或者check_client_access都无法实现这个要求 需要结合这2个才行,此时就需要RESTRICTION CLASS 首先定义一个RESTRICTION CLASS : smtpd_restriction_classes = myrestriction myrestriction = check_sender_access regexp:/etc/postfix/sender_access.txt 在/etc/postfix/sender_access.txt文件加入以下内容: /a\@a.com/ REJECT YOU ARE BLOCKED 再定义: smtpd_recipient_restrictions = check_client_access regexp:/etc/postfix/client_access.txt 然后在/etc/postfix/client_access.txt加入: /1\.1\.1\.1/ myrestriction 最后reload postfix则可以生效
转载 http://postfix.cn99.com/RESTRICTION_CLASS_README.html
2008-09-21 20:10:07, 909 reviews, comment
send to mailbox
debian中架设postfix全功能邮件服务器
postfix一个帐户接收多个域的邮件
少女,不点下广告吗!
all by shitou
blog comments powered by Disqus