我正在尝试为 dovecot 启用反垃圾邮件插件,但是 dovecot 停止工作:
Jun 4 19:31:25 newmail dovecot: imap-login: Login: user=<tomasz_grobelny>, method=PLAIN, rip=127.0.0.1, lip=127.0.0.1, mpid=30714, secured, session=<eNurOLYXuQB/AAAB>
Jun 4 19:31:25 newmail dovecot: imap(tomasz_grobelny): Fatal: master: service(imap): child 30714 returned error 3
我如何查明“子项返回错误 3”的原因?是否有可能提供更详细的日志或能够附加调试器?显然,没有反垃圾邮件插件,一切都会正常进行。
答案1
现在回答可能有点晚了,但我刚刚遇到了同样的问题。
您在此处发布了问题,因此我假设您可能在 Ubuntu 上运行了 Dovecot。问题是Debian 下的后端应该使用pipe
而不是。mailtrain
plugin {
#setting_name = value
antispam_backend = pipe
antispam_mail_spam = --spam
antispam_mail_notspam = --ham
antispam_mail_sendmail = /usr/bin/sa-learn-pipe.sh
antispam_spam = Junk
antispam_trash = Trash
}
此外,如果你正在学习http://wiki2.dovecot.org/Plugins/Antispam,那里的管道脚本缺少几个链接中断。因此应该是:
#!/bin/bash
echo /usr/bin/sa-learn $* /tmp/sendmail-msg-$$.txt
echo "$$-start ($*)" >> /tmp/sa-learn-pipe.log
#echo $* > /tmp/sendmail-parms.txt
cat<&0 >> /tmp/sendmail-msg-$$.txt
/usr/bin/sa-learn $* /tmp/sendmail-msg-$$.txt && rm -f /tmp/sendmail-msg-$$.txt &
echo "$$-end" >> /tmp/sa-learn-pipe.log
exit 0