Postfix用户收发控制
实践过程:
smtpd_restriction_classes = insiders_only
insiders_only = check_sender_access hash:/etc/postfix/insiders,reject
##开头绝不能有空格、Tab之类,否则连接不到SMTP服务器。
smtpd_recipient_restrictions =
check_recipient_access hash:/etc/postfix/protected_list,
#/etc/postfix/protected_list: (要通过postmap hash:/etc/postfix/protected_list生成.db文件才有效)
all@domain.com insiders_only ##只允许/etc/postfix/insiders列表中的规则用户生效
#/etc/postfix/insiders:
erik@domain.com OK ##允许erik
xxx@domain.com discard ##不发送到发件人及收件人
domain.com OK ##内网用户允许
以上就实现了控制只有授权用户才可以发邮件到all@domain.com了。
以下是参考资料:
对于限制的用户,其实只能对其外发(或者说rcpt to)做限制,而对于任意来信人给其发来的email则没有限制能力,真正的内部收发邮件用户,应该是只允许它和指定的内部域名(用户)联系,对于发向任何外部邮件域,或任意外部邮件域发来的邮件,都是禁止的。
这里给出一个配置,仅供大家参考。
配置方法:
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:
foo@extmail.org local_in_only
bar@extmail.org local_in_only
4)编辑/etc/postifx/local_out_senders:
QUOTE:
foo@extmail.org local_out_only
bar@extmail.org local_out_only
5)编辑/etc/postfix/local_domains:
extmail.org OK
all@extmail.org reject
6)为3,4,5建立对应的hash文件:
# postmap hash:/etc/postfix/local_in_senders ##此处postmap命令要加上路径,或在程序所在目录下运行
# postmap hash:/etc/postfix/local_out_senders
# postmap hash:/etc/postfix/local_domains
这样就定义了extmail.org域名里两个用户foo和bar,只允许和internal.foo.com和internel.bar.com 两个内部域的用户来往邮件,对于外部的邮件则没有收或发的能力。如果外部邮件企图给这2个用户发送,则遇到如下错误:
554 5.7.1 <foo@extmail.org>: Recipient address rejected: Access denied
如果这2个内部用户要给外部用户发email,将遇到如下错误:
554 5.7.1 <bar@extmail.org>: Sender address rejected: Access denied
目前这样的配置就可以比较完整的实现内部用户的功能需求了。其实这种配置的方法和之前的帖子道理一样,关键得分清楚什么阶段,调用什么restrictions即可。
该文章转载自宋氏电脑 技术无忧:http://www.pc51.net/server/mail/2007-11-25/9815.html
Postfix用户收发控制相关推荐
- ZigBee-Z-Stack协议栈 第一节 无线收发控制LED
什么是 ZigBee 协议栈呢? 它和 ZigBee 协议有什么关系呢?协议是一系列的通信标准,通信双方需要共同按照这一标准 进行正常的数据发射和接收.协议栈是协议的具体实现形式,通俗点来理解就是协议 ...
- win7如何设置某个软件不弹出用户账户控制
手动修改注册表: 在 HKEY_CURRENT_USERS\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers 键下面 ...
- mysql用户控制登录_MySql用户权限控制_MySQL
bitsCN.com MySql用户权限控制 本文将介绍MySql创建帐号,删除帐号,设置和介绍各种帐号的权限 创建用户帐号: www.bitsCN.com [sql] CREATE USER use ...
- SSH远程管理(用户登录控制及密码验证)
SSH (secure shell) 是一种安全通道协议,主要实现字符界面的远程登录,远程复制等功能.SSH协议对通信双方的数据进行了加密处理, 其中包括用户登录时输入的用户口令. 实验环境:两台L ...
- Exchange 2007更改用户收发邮件大小限制
Exchange 2007更改用户收发邮件大小限制 exchange 2007更改用户收发邮件大小限制 2009-12-01 MS Exchange 2007默认附件设置为10M,用户通常要修改这些默 ...
- 要管理此计算机上的用户账户,win10用户账户控制 你要允许此应用 若要继续请输入管理员密码...
今天小编安装魔方电脑大师的时候出现提示:若要继续,请键入管理员密码,然后单击"是" 想必大家在安装或运行程序的时候多多少少都遇到过这种情况,关闭用户账户控制也是同样问题 仔细分析了 ...
- (笔记)Mysql命令grant on:增加新用户并控制其权限
grant on命令用于增加新用户并控制其权限. grant on命令格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码" ...
- 关闭 Windows Server 2008 用户权限控制(UAC)
1.开始--设置 --控制面板(切换成经典视图) --用户帐户--打开或关闭"用户账户控制"--取消选择 "使用用户控制帮助保护账户您的计算机"这个选项.确定重 ...
- asp.net core根据用户权限控制页面元素的显示
asp.net core根据用户权限控制页面元素的显示 Intro 在 web 应用中我们经常需要根据用户的不同允许用户访问不同的资源,显示不同的内容,之前做了一个 AccessControlHelp ...
最新文章
- R语言聚类分析之基于划分的聚类KMeans实战:基于菌株数据
- mysql主从不同步怎么恢复_mysql主从不同步时,怎么恢复
- Hibernate的基本配置
- Qt C++单例类写法
- 关于RNA-seq数据集的小结
- mybatis学习(5):安装 SQL Server installsharewowdir命令值无效的问题
- Collection的使用 对象 java
- 15日直播预告丨SQL条件等价改写秘笈(主讲人:怀晓明)
- 《Core Java 课件》Day02
- SQL Server高级查询之子查询(单行子查询)
- bzoj 1415: [Noi2005]聪聪和可可
- html中滚动字幕是什么属性,html中Marquee属性详解(滚动显示文本/图片)
- 三村合建水厂问题研究
- 360安全卫士和火绒之间的事
- 卫生统计学v是什么意思_卫生统计学 名词解释
- 美术绘画之原画场景深入刻画-张聪-专题视频课程
- linux无损扩空间,linux无损扩容的方法
- Xftp 传文件到虚拟机一直显示状态错误,传不进去
- 你会在 JitPack 上创建依赖库吗?
- 《Python编程:从入门到实践》答案
热门文章
- 申报成功后怎样修改_【小白教程】12月第3期《申报成功后,如何更正,快快收藏!》...
- 液晶模块 LM6063A接口转接
- 深度跑车 - DeepRacer
- 注解 java 反射_java注解和反射
- java有点_JAVA 有点儿冷
- 天线决定接受频率_对讲机天线到底有多重要?通讯效果好不好要靠它!
- java公平索非公平锁_Java 并发编程中使用 ReentrantLock 替代 synchronized
- kali linux提示安装系统失败,kali“安装系统”失败分析及解决
- 我的世界java路径_我的世界java路径在哪 路径有误怎么设置
- java 并发队列_JAVA并发编程:阻塞队列BlockingQueue之SynchronousQueue