dspam安装

使用dspam-3.9.1-RC1

参考修改自http://hi.baidu.com/delphiss/blog/item/24da4611395c33fac3ce79c3.html
mysql模式

./configure \
--prefix=/usr/local/dspam \
--with-dspam-home=/var/dspam \
--with-dspam-home-owner=vmail \
--with-dspam-home-group=postdrop \
--with-dspam-mode=2510 \
--with-dspam-owner=vmail \
--with-dspam-group=postfix \
--with-delivery-agent=/usr/sbin/sendmail \
--with-storage-driver=mysql_drv \
--with-mysql-includes=/usr/include/mysql \
--with-mysql-libraries=/usr/lib64/mysql \
--enable-preferences-extension \
--enable-virtual-users \
--enable-daemon \
--enable-debug \
--enable-syslog \
--enable-clamav \
--with-logdir=/var/log/dspam

注意64为系统用--with-mysql-libraries=/usr/lib64/mysql
最好指定一下prefix,要不文件都飞了找不到
---------------
创建mysql的库和表。

# cd src/tools.mysql_drv
# mysql -u root -p -e "create database dspam"
# mysql -u root -p -e "grant all on dspam.* to dspam@localhost identified by 'passwd123456'"

给 mysql_objects-4.1.sql 和 virtual_users.sql 增加一行内容到最上面:
use dspam;

# mysql -u dspam -p < mysql_objects-4.1.sql
# mysql -u dspam -p < virtual_users.sql

配置----

安装后dspam的配置文件为 /usr/local/etc/dspam.conf,修改之

TrustedDeliveryAgent /usr/sbin/sendmail
Trust root
Trust vmail
Trust postfix

# spamAction 表示识别为垃圾邮件后的处理,quarantine:扔到隔离区,tag:给邮件Subject增加标记,deliver:直接投递
# quarantine 需要设置 QuarantineAgent
Preference "spamAction=tag"
# spamSubject tag操作的时候给邮件Subject前面增加的字符
Preference "spamSubject=SPAM"
#signatureLocation: dspam给每个识别后的邮件编个号码,将来可以用作重新训练
#'message': 把signature加在邮件正文后面,'headers':把signature加在邮件头里
Preference "signatureLocation=headers" # 'message' or 'headers'
Preference "showFactors=on"

# mysql的设置
MySQLServer /var/lib/mysql/mysql.sock
MySQLUser dspam
MySQLPass passwd123456
MySQLDb dspam
MySQLCompress true

启动 dspam 后台进程:
#/usr/local/dspam/bin/dspam --daemon &
-----------------------------
cat spam01.eml | /usr/local/dspam/bin/dspam --mode=teft --source=corpus --class=spam --feature=noise --user mydspam

训练垃圾邮件
-class=spam 表示训练识别垃圾邮件,训练识别非垃圾邮件则用参数 --class=innocent
--source=corpus 与 --source=error 对应的设置
--user mydspam 训练的user,dspam会自动创建。

dspam提供了一个批量训练邮件的命令:

dspam_train [username] [spam_dir] [nonspam_dir]

username 是训练用的user,spam_dir 和 nonspam_dir 是垃圾邮件和非垃圾邮件存储的目录

操作之后进入mysql
可以看到
select * from dspam_stats;
select * from dspam_token_data;
select * from dspam_virtual_uids;
有数据了


--------------管理页面太麻烦了--------
http://192.168.229.129/dspam/dspam.cgi
一下是注意的地方,具体参考http://hi.baidu.com/delphiss/blog/item/24da4611395c33fac3ce79c3.html
吧,对3.9的版本好使
yum install postfix
cd /etc/postfix
vim master.cf
dspam     unix  -       n       n       -       10      pipe
flags=Rhqu user=vmail argv=/usr/local/dspam/bin/dspam --deliver=innocent --user mydspam -i -f $sender -- $recipient



yum install postfix
yum install pcre
yum install *perl* perl的html图形等

cp webui/htdocs/dspam-logo-small.gif /var/www/html/
cp webui/htdocs/base.css /var/www/html/
/etc/httpd/conf.d/welcome.conf注释掉里面所有
否则httpd找不到/


----------web配置----------
mkdir /var/www/cgi-bin/dspam
cp -R /opt/backup/open_club_spam_filter/dspam-3.9.1-RC1/webui/cgi-bin/* /var/www/cgi-bin/dspam

vim /etc/httpd/conf.d/welcome.conf
全注释掉
vim /etc/httpd/conf/httpd.conf

#ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
ScriptAlias /dspam "/var/www/cgi-bin/dspam"

<Directory "/var/www/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
<Directory "/var/www/cgi-bin/dspam">
Options ExecCGI
Options -Indexes
DirectoryIndex dspam.cgi
AllowOverride All
Order deny,allow
Deny from all
AuthType Basic
AuthName "DSPAM Control Center"
AuthUserFile /usr/local/apache2/dspam.pass
Require valid-user
Satisfy Any
</Directory>



htpasswd -c /usr/local/apache2/dspam.pass mydspam


dspam_stats -H mydspam
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值