首先,如果系统中没有 libmilter.a 库,那么下载 sendmail-8.14.3 ,把 libmilter.a 安装上。libmilter 库有个 bug ,会导致很多的 milter core dump 。
[code]
sendmail-8.14.3/libmilter/smfi.c
832c832
< ++s; /* points to next macro name */
---
> if( NULL != *s ) ++s; /* points to next macro name */
[/code]
SpamAssassin 还是用 perl 的自动安装吧,不用自己找依赖的库。
[code]
# perl -MCPAN -e shell
cpan> install HTML::Parser
cpan> install DB_File
cpan> install Net::DNS (when prompted to enable tests, choose no)
cpan> install Digest::SHA1
cpan> install Mail::SpamAssassin
[/code]
相应的 milter 用 spamass-milter-0.3.1。
spf 相关的 milter 有 spfmilter-1.0.8 和 policyd-1.0.1 ,这两个 milter 是根据 libspf2 的 1.0 版本来实现的,因此要把 libspf2 的版本降低到 1.0 才能编译。
dnsbl 用 dnsbl-milter ,很简单。
milter 用 milter-greylist-4.2 。
[code]
sendmail-8.14.3/libmilter/smfi.c
832c832
< ++s; /* points to next macro name */
---
> if( NULL != *s ) ++s; /* points to next macro name */
[/code]
SpamAssassin 还是用 perl 的自动安装吧,不用自己找依赖的库。
[code]
# perl -MCPAN -e shell
cpan> install HTML::Parser
cpan> install DB_File
cpan> install Net::DNS (when prompted to enable tests, choose no)
cpan> install Digest::SHA1
cpan> install Mail::SpamAssassin
[/code]
相应的 milter 用 spamass-milter-0.3.1。
spf 相关的 milter 有 spfmilter-1.0.8 和 policyd-1.0.1 ,这两个 milter 是根据 libspf2 的 1.0 版本来实现的,因此要把 libspf2 的版本降低到 1.0 才能编译。
dnsbl 用 dnsbl-milter ,很简单。
milter 用 milter-greylist-4.2 。