公司架设内网邮箱,要求:内网收发正常、可以接受外网邮件,不可以发送邮件到外网邮箱。
配置好邮件服务器,开启25端口后,内外网收发均正常,现在开始配置只能发送内部邮件(其实就是通过限制收件人的域名来达到不能发送外网邮箱的目的)
1. 进入控制台
su zimbar
2. 打开smtpd_sender_restrictions.cf,在顶部增加一行
vi /opt/zimbra/conf/zmconfigd/smtpd_sender_restrictions.cf
check_sender_access lmdb:/opt/zimbra/conf/restricted_senders
Zimbra 8.5以上版本hash改为lmdb
3. 打开zmconfigd.cf ,找到RESTART mta
,在前面添加两行
vi /opt/zimbra/conf/zmconfigd.cf
POSTCONF smtpd_restriction_classes local_only
POSTCONF local_only FILE postfix_check_recipient_access.cf
RESTART mta
4.在/opt/zimbra/conf/目录下创建postfix_check_recipient_access.cf 增加一行
vi /opt/zimbra/conf/postfix_check_recipient_access.cf
check_recipient_access lmdb:/opt/zimbra/conf/local_domains, reject
5.在/opt/zimbra/conf/目录下创建restricted_senders,列出收限制的发件人列表,可以是具体的某几个邮箱地址或邮箱后缀
vi /opt/zimbra/conf/restricted_senders
yourdomain.com local_only
或
user1@yourdomain.com local_only
user2@yourdomain.com local_only
6.在/opt/zimbra/conf/目录下创建local_domains,列出可以接受邮件的域名
vi /opt/zimbra/conf/local_domains
yourdomain.com OK
7. 运行命令
postmap /opt/zimbra/conf/restricted_senders
postmap /opt/zimbra/conf/local_domains
zmmtactl stop
zmmtactl start
postmap
命令会生成.lmdb的文件,所以在conf
目录下会有生成两个文件restricted_senders.lmdb
local_domains.lmdb
8.测试一下
成功!