CentOS6.4安装EMOS1.6邮件系统(4)

2019-04-13 22:02

$lock_file = \ # -L $pid_file = \ # -P $myhostname = 'mail.extmail.org'; @local_domains_maps = qw(.); @mynetworks = qw( 127.0.0.0/8 );

对本地发出的邮件不进行内容过滤

$policy_bank{'MYNETS'} = { # mail originating from @mynetworks

originating => 1, # is true in MYNETS by default, but let's make it explicit os_fingerprint_method => undef, # don't query p0f for internal clients allow_disclaimers => 1, # enables disclaimer insertion if available bypass_spam_checks_maps => [1], bypass_banned_checks_maps => [1], bypass_header_checks_maps => [1], };

$sa_spam_modifies_subj = 0; # 当邮件被认为是垃圾邮件时,是否修改邮件的主题

$remove_existing_x_scanned_headers= 1; # 凡是经过 Amavisd 过滤的邮件,都会在邮件头中被加入一行邮件头信息

$remove_existing_spam_headers = 1; # 修改投递/拦截的方法:

$final_virus_destiny = D_DISCARD; $final_banned_destiny = D_DISCARD; $final_spam_destiny = D_PASS; $final_bad_header_destiny = D_PASS; # 配置Amavisd与Clamav结合 @av_scanners = ( ['ClamAV-clamd',

\\&ask_daemon, [\ qr/\\bOK$/, qr/\\bFOUND$/,

qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ], );

@av_scanners_backup = (

['ClamAV-clamscan', 'clamscan',

\

[0], qr/:.*\\sFOUND$/, qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ], );

amavisd.conf常用参数说明:

$max_servers = 10; 设置最大可使用的进程数 $sa_spam_subject_tag = '[SPAM] '; 加 [SPAM] 标记 $mydomain = 'mail.extmail.org'; 设置域名 $myhostname = 'mail.extmail.org'; 设置主机名

@local_domains_maps = qw(.); 对所有的域检查

$sa_tag2_level_deflt = 5.0; 超过这个分数,允许在邮件标题加入[SPAM] 标记

$sa_kill_level_deflt = 5.0; 超过这个分数,直接將信件备份后删除 $final_virus_destiny: 检测到病毒时的动作

$final_banned_destiny: 检测到受禁止的内容时的动作

$final_spam_destiny: 检测到垃圾邮件、广告邮件(spam)时的动作 $final_bad_header_destiny:检测到不良信件时的动作

默认有以下几种动作:

D_PASS: 无论信件是否有问题,都会将信件发给收件人 D_DISCARD: 信件将被丢弃,并且不会告知收件人及发件人

D_BOUNCE: 信件不会发送给收件人,但会通知发件人邮件没有被投递 D_REJECT: 邮件不会被投递给收件人,但会通知发件人邮件被拒绝 注意事项:

上述$mydomain参数与$myhostname参数相同,主要是为了方便之后的病毒/垃圾汇报邮件发给系统管理员时,能投递到本地的别名里,再转交到虚拟域的特定用户。

5、配置Postfix 集成amavisd-new

增加邮件别名

# vi /etc/postfix/aliases

增加如下信息,注意:默认的aliases数据库里已有一条virusalert的别名,请删除,再输入下面的别名记录,并确保所有记录都是唯一的: virusalert: root spam.police: root

postfix: test@extmail.org

保存并执行newaliases命令生成新的别名数据库,重新启动amavisd:

# newaliases

# service amavisd restart 编辑master.cf文件: # vi /etc/postfix/master.cf 增加如下内容:

smtp-amavis unix - - n - 3 smtp -o smtp_data_done_timeout=1200 -o smtp_send_xforward_command=yes -o disable_dns_lookups=yes -o max_use=10

127.0.0.1:10025 inet n - n - - smtpd -o content_filter=

-o local_recipient_maps= -o relay_recipient_maps= -o smtpd_restriction_classes= -o smtpd_client_restrictions=

-o smtpd_helo_restrictions= -o smtpd_sender_restrictions=

-o smtpd_recipient_restrictions=permit_mynetworks,reject -o mynetworks=127.0.0.0/8 -o strict_rfc821_envelopes=yes -o smtpd_error_sleep_time=0 -o smtpd_soft_error_limit=1001 -o smtpd_hard_error_limit=1000

-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks 编辑main.cf文件:

# vi /etc/postfix/main.cf

增加如下内容:

# Content-Filter

content_filter = smtp-amavis:[127.0.0.1]:10024 receive_override_options = no_address_mappings

注意:receive_override_options 这里必须增加,禁止地址展开/影射,否则如果遇到别名的时候会引起冗余邮件的产生。

重启postfix :

# service postfix restart 重新启动amavisd:

# service amavisd restart 6、测试Clamav

# telnet localhost 25

其过程如下:

Trying 127.0.0.1...

Connected to localhost.localdomain (127.0.0.1). Escape character is '^]'.

220 mail.extmail.org ESMTP Postfix - by extmail.org mail from:<<输入内容 250 2.1.0 Ok

rcpt to:<<输入内容 250 2.1.5 Ok

data <<输入内容 354 End data with .

X5O!P%@AP[4\\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H* <<输入内容 .

250 2.0.0 Ok: queued as BC24E85260 quit <<输入内容 221 2.0.0 Bye

Connection closed by foreign host.

在邮件日志里,应该有相应的信息出现:

Mar 22 06:43:15 localhost amavis[15405]: (15405-01) Blocked INFECTED (Eicar-Test-Signature), [192.168.0.235] ->, quarantine:

virus-mI6vbjkWZ2Tz, Message-ID: <003401c88c1a$74706360$eb00a8c0@nbk00045>, mail_id: mI6vbjkWZ2Tz, Hits: -, size: 1757, 474 ms

如果看到类似这样的日志,表明Clamav+Amavisd-new工作正常。

十三、配置spam_locker 1、安装Spam_Locker

# yum install extsuite-slockd 配置resolv.conf

请确认/etc/resolv.conf里的dns服务器是离你的邮件服务器最近,速度最快的dns server,slockd很依赖dns的好坏,因此给系统配置一个快速的dns能大幅度提高处理速度。以下给出

一个配置仅供参考: shell

# vi /etc/resolv.conf 增加以下内容:

nameserver 8.8.8.8 #也可以指定自己内部的DNS,如果在内部网络搭建

上述dns服务器是上海电信的DNS服务器,对于非上海的朋友,请改为离你最近的DNS服务器IP,如果可能的话,请配置一个简单的bind,成为本地的dns cache server,可以获得最高性

能。这里略过这一步骤,但您必须确保dns的配置是正确并且可靠的,否则slockd将不能工作!

2、测试slockd

启动slockd

shell

# /usr/local/slockd/slockd-init start

此时slockd将启动,并进入非daemon方式的监听模式,接受来自10030端口的请求,命令行下将显示如下调试信息:

Starting spam locker daemon: slockd

starting child 2908 starting child 2909

打开另一个ssh/终端窗口: # cd /usr/local/slockd/tools

# perl policy_sig -h localhost -p 10030 --helo FOOBAR --ip 192.168.0.1 --from test@foo.com --to test@bar.com

此时,程序应该返回如下错误信息:这表示slockd初步的正常工作了。

action=554 blocked using zen.spamhaus.org, see http://bl.extmail.org/cgi/rbl?192.168.0.1 设置slockd开机自启动

# /usr/local/slockd/slockd-init start # echo “/usr/local/slockd/slockd-init start” >> /etc/rc.d/rc.local 3、配置Postfix

slockd调试正常后,必须配置postfix以使其打开对slockd的支持。

编辑main.cf文件

# vi /etc/postfix/main.cf

将 check_policy_service inet:127.0.0.1:10030 这一行记录增加到smtpd_recipient_restrictions 里,例如:

smtpd_recipient_restrictions = permit_mynetworks,

permit_sasl_authenticated, reject_non_fqdn_hostname, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unauth_destination, reject_unauth_pipelining, reject_invalid_hostname,

check_policy_service inet:127.0.0.1:10030

重新启动postfix以使配置生效 # service postfix restart

注意事项:上述配置是将slockd的查询放到最后,这也是进一步提高资源利用律的办法,因为有部分功能postfix已实现了,所以就先由postfix检测,如果检测不到再由slockd完成。

十四、配置dspam


CentOS6.4安装EMOS1.6邮件系统(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:算法设计与分析课后习题解答

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: