主题: 黑白名单相关解惑

==== 必填信息。没有填写将不予回复 ====
- iRedMail 版本号:
- 使用哪个数据库存储用户帐号(OpenLDAP,MySQL,PostgreSQL):
- 使用的 Linux/BSD 发行版名称及版本号:
- 与您的问题相关的日志信息:
====
iRadmail 0.8.7
oenldap
Centos 6.5 
张工麻烦请问下 果我用postfix做黑白名单与Policyd (cluebringer)做黑白名单 有什么区别  以及SpamAssassin做黑白名单的区别

1 [root@email postfix]# cat sender_access
qq.com OK
550891493@qq.com REJECT
163.com  REJECT
smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/sender_access

这是我用postfix 做的黑白名单 
应该是这么配置吧 因为测试成功 别人发我邮箱信息都被退信了  只是可惜一点 没有退信信息
如果用postfix做黑名单的话  能否可以配置退信自定义消息吗? 



2 我用  SpamAssassin 做黑名单  但对方照样可以发送消息过来 只是收到的消息被标志为垃圾信息 
前面被标记为***Spam***
具体配置为   whitelist_from  test@test.com
                    blacklist_from  abc@abc.com
请问是不是这样配置 ? 为什么 我定义了 黑名单  还是会收到 我可以这么理解吗 SpamAssassin只是用来扫描垃圾邮件 这么配置
定义的黑名单 是当垃圾处理的  那么 可不可以 让我在 SpamAssassin 里面定义的黑名单 不能接收 
还有一点 我在这里 定义的qq白名单 对方发我服务器邮件  还是会延时5分钟 才能收到  而 163邮箱可以秒收 
抱歉 问题有点多还希望 张工  能耐心 把我的这一段的每一个疑问  全面的回答完整  (问题太多 不好意思 麻烦你了  真是不好意思)

3 网上查资料 看到 Amavisd-new 也可设置黑白名单  那么 Amavisd-new 与 Policyd (cluebringer) 设置的黑白名单 目的(效果) 是不是 一样的 抱歉打扰了

4 用QQ发送邮件为什么 每次都需要延时5分钟以上才能发到我的iredmail邮箱里面  按道理来讲  灰名单机制 只是对第一次发送邮件
起做用 也就是  QQ邮箱第一次发送邮件 由于回名单机制 可能收信 会延时 但 现实是 每个qq邮箱用户 发送邮件 到我iredmail邮箱  都会延时到 5分钟以上 甚至 更久  而其它邮箱 发送邮件到我邮件服务器iredmail 都可以 秒收   
对于 我们公司对邮箱的即时性需求 是完全 不符合的
如果  我也想让qq邮箱用户发邮件 到我iredmail邮箱里面 能够秒收 需要在哪里设置白名单 (我试过在   SpamAssassin 里面设置qq白名单是 不行的 还是会被延时)那么 能不能在 Amavisd-new   Policyd (cluebringer) 或者 postfix设置 qq邮箱的白名单  达到及时性需求 (网速没问题  我看过 邮件日志  只要是qq邮箱发过来的邮件全部被显示 灰名单 标志 

问题真的很多,真不好意思  我一直在网上查资料效果甚微 反而网上资料 太多,有时候 会把自己带入到另一个思维点(或带入到其它相关领域 有种很无力的感觉 甚至查找资料时候 被资料带人到其它相关领域 而浪费自己的时间)

end   给添麻烦了  谢谢!

回复: 黑白名单相关解惑

550891493 写道:

如果用postfix做黑名单的话  能否可以配置退信自定义消息吗? 

可以。看 Postfix 文档: http://www.postfix.org/access.5.html

550891493 写道:

2 我用  SpamAssassin 做黑名单  但对方照样可以发送消息过来 只是收到的消息被标志为垃圾信息 

SpamAssassin 是一个 after-queue 的垃圾邮件检测工具。用到它的时候邮件已经进入 postfix 队列,所以无法在 smtp 会话阶段就拒收。

550891493 写道:

3 网上查资料 看到 Amavisd-new 也可设置黑白名单  那么 Amavisd-new 与 Policyd (cluebringer) 设置的黑白名单 目的(效果) 是不是 一样的 抱歉打扰了

Amavisd-new 在 iRedMail 里被配置为 after-queue 的邮件检测工具,所以和 spamassassin 一样,也是无法在 smtp 会话阶段就拒收。

总结:

实现黑白名单的办法有非常多种,postfix/spamassassin/amavisd/policyd/cluebringer,但要考虑的情况也很多:它们各自在邮件接收过程的哪个阶段起作用、如何管理黑白名单数据、是否可能让数据在多个程序之间共享?

* postfix 自带的 check_sender_access 类似的机制是自带的,但管理它的黑白名单只能是编辑系统上的文件。如果是 hash 格式,编辑完后还要执行 postmap 命令让 postfix 读取修改后的文件。且黑白名单数据无法直接被其它程序使用。

* amavisd 自己也有黑白名单机制(需要用到参数 @lookup_sql_dsn),但因为 amavisd 被配置为 after-queue 里使用,所以无法作用于 smtp 会话阶段直接拒收。

* spamassassin 的情况与 amavisd 类似,不赘述。

* policyd/cluebringer 是直接作用于 smtp 会话阶段的。好处是直接就拒收,节省系统资源。

cluebringer 自带了一个 amavisd 补丁,使得 cluebringer 可以读取 amavisd 里的黑白名单,将原本在 after-queue 阶段的 amavisd 黑白名单变成在 smtp 会话阶段就可以处理,节省了系统资源。但问题在于,这个补丁 amavisd 官方并没有收录,所以你得自己打补丁。这样的后果就是,打了补丁之后,会影响通过 yum/apt-get 等工具升级软件包,并且你还得重新打补丁。

即将发布的 iRedMail-0.9.0 里采用的方案是:

* 因为 amavisd 是核心的 after-queue 的垃圾/病毒邮件检测工具,所以我们将黑白名单保存在 amavisd 里。
* 增加一个 iRedAPD 插件用于在 smtp 会话阶段就读取 amavisd 里的黑白名单来拒收黑名单用户发来的邮件。
* 在 iRedAdmin-Pro 里可以管理 amavisd 的黑白名单。

这个方案还有一点额外的好处:

* 黑白名单可以是针对全局(整个服务器),也可以是单个域,或单个用户。
* 因为上面的配置用到了 amavisd 里的 @lookup_sql_dsn,所以 iRedAdmin-Pro 现在也可以管理 per-recipient policy lookup。例如:配合 iRedAdmin-Pro 里的 self-service(自助服务),用户可以登录 iRedAdmin-Pro 并设置自己的 spam score,管理黑白名单,等。当然管理员也可以管理。

回复: 黑白名单相关解惑

经过 张工指导  受益匪浅啊!  多谢  多谢!