免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 5560 | 回复: 10
打印 上一主题 下一主题

[Mail] 对mail::spamassassin源码很了解的,请进! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-09-07 16:22 |只看该作者 |倒序浏览
如果我想要得到spamassassin最后处理完的带邮件头的邮件(下一个模块要使用这封邮件进行别的处理),应该调用哪个方法,或者采取别的什么措施

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
2 [报告]
发表于 2010-09-07 17:25 |只看该作者
你要在 SA 中創造一個 module ?
還是只要 SA 能夠丟出加了 Header 的郵件?

论坛徽章:
0
3 [报告]
发表于 2010-09-07 18:58 |只看该作者
后者,我要得到这封邮件 要用这封邮件走另一个流程
麻烦指点

论坛徽章:
0
4 [报告]
发表于 2010-09-07 19:24 |只看该作者
回复 2# abel


    是不是用Mail::SpamAssassin::Message中的方法?

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
5 [报告]
发表于 2010-09-08 09:45 |只看该作者
請問您如何調用 spamassassin ?
問這麼多主要是考量給您更好一點建議

论坛徽章:
0
6 [报告]
发表于 2010-09-08 11:33 |只看该作者
回复 5# abel


    谢谢啊
我想用spamd/spamc方式,不用amavised_new呼叫

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
7 [报告]
发表于 2010-09-08 12:27 |只看该作者
回复  abel


    谢谢啊
我想用spamd/spamc方式,不用amavised_new呼叫
spamassassin 发表于 2010-09-08 11:33

因為郵件是由 STDIN 進 spamc , 再由 STDOUT 出 spamc
可考慮最簡單的做法就是
spamc | 你的程式
也就是傳流的 pipe 方式

如果不符合您的需求,可能要再請多描述環境一下

论坛徽章:
0
8 [报告]
发表于 2010-09-08 16:10 |只看该作者
回复 7# abel


    恩,不过我不是 要 “看到整封邮件”,不是让它输出到屏幕或者重定向到某个文件,而是要取这封邮件去下个模块进行敏感内容检查(必须有信体),检查完了看是否要隔离,所以必须还要有我spamassassin处理的邮件头信息
所以,你看看还有没有别的方法呢?
CPAN上,Mail::SpamAssassin 有这么一段
my $spamtest = Mail::SpamAssassin->new();,
  my $mail = $spamtest->parse($message);
  my $status = $spamtest->check($mail);

  if ($status->is_spam()) {
    $message = $status->rewrite_mail();
  }
  else {
    ...
  }
  ...
我在想,这个$mail是不是不可以,因为check 还没有起作用,邮件头还没有修改;但文档中还一直说

Note that the Mail::SpamAssassin object can be re-used for further messages without affecting this check; in OO terminology, the Mail::SpamAssassin object is a "factory".

有点晕,请指点

http://search.cpan.org/~jmason/M ... ail/SpamAssassin.pm

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
9 [报告]
发表于 2010-09-08 17:50 |只看该作者
依您的需求 "敏感内容检查" ..
因為是一個 rule base, 您只要讓這個詞庫去做 SA 的 check 就好,不是嗎 ?
如果有 Check 到, SA 都會加上這個 rule 的 TAG,
只要在maildrop/procmail (or mailscanner) 加入這個 TAG 的判斷就好了

如果要用程式角度去做,每次的 SA 昇級一定會有很多額外動作,
更何況 SA 並不涉及分信的動作

论坛徽章:
0
10 [报告]
发表于 2010-09-09 20:18 |只看该作者
回复 9# abel


    我可不可以撇开 postfix,maildrop只谈spamassassin,因为我们已经从postfix queue中取出邮件了,经过spamassassin扫描后,将邮件传送到content_check(我们自己写的),然后把邮件送到隔离模块,看是否隔离,正常的邮件就再次进postfix queue ,然后出这个网关进入下面的邮件服务器
想实现spamc/spamd不在postfix/maildrop中做处理可不可以?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP