送进行控制:
对于外域到本域的邮件,接收,否则,收不到任何来自外部的邮件;
对于本域到外域的邮件,只允许从本机发出,否则,其他人通过伪造本域地址就可以向外域发信;
对于外域到外域的邮件,直接拒绝,否则我们的邮件服务器就是Open Relay,将被视为垃圾邮件服务器.
先设置发件人的规则:
smtpd_sender_restrictions = permit_mynetworks, check_sender_access hash:/etc/postfix/sender_access, permit
以上规则先判断是否是本域地址,如果是,允许,然后再从sender_access文件里检查发件人是否存在,拒绝存在的发件人,允许其他发件人
然后设置收件人规则:
smtpd_recipient_restrictions = permit_mynetworks, check_recipient_access hash:/etc/postfix/recipient_access, reject
以上规则先判断是否是本域地址,如果是,允许,然后再从recipient_access文件里检查收件人是否存在,允许存在的收件人,拒绝其他收件人.
/etc/postfix/sender_access的内容:
michael.com REJECT
目的是防止其他用户从外部xx@michael.com身份发送邮件,但登录到本机再发送则不受影响,第一条规则permit_mynetworks允许本机登录用户发送邮件.
/etc/postfix/recipient_access的内容:
michael@michael.com OK 51cto@michael.com OK
因此,外域只能发送给以上两个Email地址,其他任何地址都将被拒绝.但本机到本机发送不受影响.
用postmap生成hash格式的文件:
# postmap sender_access
# postmap recipient_access
发送正常
现在我们来禁止发件人51cto@michael.com,修改main.cf去掉permit_mynetworks
设置michael.com为OK,51cto@michael.com为REJECT
测试一下
而其他本域用户可以正常收发~现在我们取消限制
又可以发送了~
#####################Michael分割线####################
参考:
4.1 postfix的配置文件结构
postfix的配置文件位于/etc/postfix下,安装完postfix以后,我们可以通过ls命令查看postfix的配置文件:
[root@mail postfix]# ls
install.cf main.cf master.cf postfix-script
这四个文件就是postfix最基本的配置文件,它们的区别在于:
mail.cf:是postfix主要的配置文件.
Install.cf:包含安装过程中安装程序产生的postfix初始化设置.
master.cf:是postfix的master进程的配置文件,该文件中的每一行都是用来配置postfix的组件进程的运行方式.
postfix-script:包装了一些postfix命令,以便我们在linux环境中安全地执行这些postfix命令.
4.2 postfix的基本配置
postfix大约有100个配置参数,这些参数都可以通过main.cf 指定.配置的格式是这样的,用等号连接参数和参数的值.如:
myhostname = mail.mydomain.com
等号的左边是参数的名称,等号的右边是参数的值; 当然,我们也可以在参数的前面加上$来引用该参数,如:
myorigin = $myhostname
虽然postfix有100个左右的参数,但是postfix为大多数的参数都设置了缺省值,在让postfix正常为你服务之前,你只需要配置为数不多的几个参数.下面我们一起来看一看这些基本的postfix参数.需要注意的是,一旦你更改了main.cf文件的内容,则运行 postfix reload命令使其生效.
1. myorigin
myorigin参数指明发件人所在的域名.如果你的用户的邮件地址为user@domain.com,则该参数指定@后面的域名.缺省地, postfix使用本地主机名作为myorigin,但是建议你最好使用你的域名,这样更具有可读性.比如:安装postfix的主机为 mail.domain.com则我们可以这样指定myorigin:myorigin = domain.com
当然我们也可以引用其他参数,如:
myorigin = $mydomain
2. mydestination
mydestination参数指定postfix接收邮件时收件人的域名,换句话说,也就是你 |