邮件服务系列之五安装Extman,maildrop以及clamav-0.97.7的安装

前面我们已经完成了基础的邮件系统所需的组建的安装以及配置,下面我们进行Extman-1.1,maildrop以及clamav-0.97.7的安装以及配置,来完成整个邮件服务系统的搭建。


一.安装Extman-1.1

1、安装及基本配置

# tar zxvf  extman-1.1.tar.gz

# mv extman-1.1 /var/www/extsuite/extman

修改配置文件以符合本例的需要:

# cp /var/www/extsuite/extman/webman.cf.default  /var/www/extsuite/extman/webman.cf

# vi /var/www/extsuite/extman/webman.cf

SYS_MAILDIR_BASE = /home/domains

此处即为您在前文所设置的用户邮件的存放目录,可改作:

SYS_MAILDIR_BASE = /var/mailbox

SYS_DEFAULT_UID = 1000

SYS_DEFAULT_GID = 1000

此两处后面设定的ID号需更改为前而创建的postfix用户和postfix组的id号,本文使用的是2525,因此,上述两项需要修改为:

SYS_DEFAULT_UID = 2525

SYS_DEFAULT_GID = 2525

SYS_MYSQL_USER = webman

SYS_MYSQL_PASS = webman

修改为:

SYS_MYSQL_USER = extmail

SYS_MYSQL_PASS = extmail

而后修改cgi目录的属主:

# chown -R postfix.postfix /var/www/extsuite/extman/cgi/

在apache的主配置文件中Extmail的虚拟主机部分,添加如下两行:

ScriptAlias /extman/cgi /var/www/extsuite/extman/cgi

Alias /extman /var/www/extsuite/extman/html

创建其运行时所需的临时目录,并修改其相应的权限:

#mkdir  -pv  /tmp/extman

#chown postfix.postfix  /tmp/extman

修改

SYS_CAPTCHA_ON = 1

SYS_CAPTCHA_ON = 0

好了,到此为止,重新启动apache服务器后,您的Webmail和Extman已经可以使用了,可以在浏览器中输入指定的虚拟主机的名称进行访问,如下:

http://mail.magedu.com

选择管理即可登入extman进行后台管理了。默认管理帐号为:[email protected]  密码为:extmail*123*

说明:

(1) 如果您安装后无法正常显示校验码,安装perl-GD模块会解决这个问题。如果想简单,您可以到以下地址下载适合您的平台的rpm包,安装即可:  http://dries.ulyssis.org/rpm/packages/perl-GD/info.html

(2) extman-1.1自带了图形化显示日志的功能;此功能需要rrdtool的支持,您需要安装此些模块才可能正常显示图形日志。

2、配置Mailgraph_ext,使用Extman的图形日志:(下面所需的软件包面要自己下载)

接下来安装图形日志的运行所需要的软件包Time::HiRes、File::Tail和rrdtool,其中前两个包您可以去http://search.cpan.org搜索并下载获得,后一个包您可以到 http://oss.oetiker.ch/rrdtool/pub/?M=D下载获得; 注意安装顺序不能改换。

安装Time::HiRes

#tar zxvf Time-HiRes-1.9707.tar.gz

#cd Time-HiRes-1.9707

#perl Makefile.PL

#make

#make test

#make install

安装File::Tail

#tar zxvf File-Tail-0.99.3.tar.gz

#cd File-Tail-0.99.3

#perl Makefile

#make

#make test

#make install

安装rrdtool-1.2.23

#tar zxvf rrdtool-1.2.23.tar.gz

#cd rrdtool-1.2.23

#./configure --prefix=/usr/local/rrdtool

#make

#make install

创建必要的符号链接(Extman会到这些路径下找相关的库文件)

#ln -sv /usr/local/rrdtool/lib/perl/5.8.5/i386-linux-thread-multi/auto/RRDs/RRDs.so   /usr/lib/perl5/5.8.5/i386-linux-thread-multi/

#ln -sv /usr/local/rrdtool/lib/perl/5.8.5/RRDp.pm   /usr/lib/perl5/5.8.5

#ln -sv /usr/local/rrdtool/lib/perl/5.8.5/i386-linux-thread-multi/RRDs.pm   /usr/lib/perl5/5.8.5

复制mailgraph_ext到/usr/local,并启动之

# cp -r /var/www/extsuite/extman/addon/mailgraph_ext  /usr/local

# /usr/local/mailgraph_ext/mailgraph-init start

启动cmdserver(在后台显示系统信息)

# /var/www/extsuite/extman/daemon/cmdserver --daemon

添加到自动启动队列

# echo “/usr/local/mailgraph_ext/mailgraph-init start” >> /etc/rc.d/rc.local

# echo “/var/www/extsuite/extman/daemon/cmdserver -v -d” >> /etc/rc.d/rc.local

使用方法: 等待大约15分钟左右,如果邮件系统有一定的流量,即可登陆到extman里,点“图形日志”即可看到图形化的日志。具体每天,周,月,年的则点击相应的图片进入即可。

二. 配置postfix使用maildrop投递邮件

maildrop是一个使用C++编写的用来代替本地MDA的带有过滤功能邮件投递代理,是courier邮件系统组件之一。它从标准输入接受信息并投递到用户邮箱;maildrop既可以将邮件投递到mailboxes格式邮箱,亦可以将其投递到maildirs格式邮箱。同时,maildrop可以从文件中读取入站邮件过滤指示,并由此决定是将邮件送入用户邮箱或者转发到其它地址等。和procmail不同的是,maildrop使用结构化的过滤语言,因此,邮件系统管理员可以开发自己的过滤规则并应用其中。

我们在此将使用maildrop来代替postfix自带的MDA,并以此为基础扩展后文的邮件杀毒和反垃圾邮件功能的调用;在此可能会修改前文中的许多设置,请确保您的设置也做了相应的修改。

1、安装

将courier-authlib的头文件及库文件(参考第八部分的第四小节)链接至/usr目录(编译maildrop时会到此目录下找此些相关的文件):

# ln -sv /usr/local/courier-authlib/bin/courierauthconfig   /usr/bin

# ln -sv /usr/local/courier-authlib/include/*   /usr/include

maildrop需要pcre的支持,因此,需要事先提供pcre的头文件及库文件等开发组件。如果选择以yum源来提供pcre,请确保安装pcre-devel包。

# yum -y install pcre-devel

# groupadd -g 1001 vmail

# useradd -g vmail -u 1001 -M -s /sbin/nologin vmail

# tar xf maildrop-2.6.0.tar.bz2

# cd maildrop-2.6.0

# ./configure \

--enable-sendmail=/usr/sbin/sendmail \

--enable-trusted-users=‘root vmail‘ \

--enable-syslog=1 --enable-maildirquota \

--enable-maildrop-uid=1001 \

--enable-maildrop-gid=1001 \

--with-trashquota --with-dirsync

# make

# make install

检查安装结果,请确保有"Courier Authentication Library extension enabled."一句出现:

# maildrop -v

maildrop 2.6.0 Copyright 1998-2005 Double Precision, Inc.

GDBM/DB extensions enabled.

Courier Authentication Library extension enabled.

Maildir quota extension are now always enabled.

This program is distributed under the terms of the GNU General Public

License. See COPYING for additional information.

2、新建其配置文件/etc/maildroprc文件,首先指定maildrop的日志记录位置:

# vi /etc/maildroprc

添加:

logfile "/var/log/maildrop.log"

# touch /var/log/maildrop.log

# chown vmail.vmail /var/log/maildrop.log

3、配置Postfix

编辑master.cf

# vi /etc/postfix/master.cf

启用如下两行

maildrop  unix  -       n       n       -       -       pipe

flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}

注意:定义transport的时候,即如上两行中的第二行,其参数行必须以空格开头,否则会出错。

编辑main.cf

# vi /etc/postfix/main.cf

virtual_transport = virtual

修改为:

virtual_transport = maildrop

将下面两项指定的UID和GID作相应的修改:

virtual_uid_maps = static:2525

virtual_gid_maps = static:2525

修改为:

virtual_uid_maps = static:1001

virtual_gid_maps = static:1001

4、编辑/etc/authmysqlrc

# vi /etc/authmysqrc

MYSQL_UID_FIELD  ‘2525‘

MYSQL_GID_FIELD  ‘2525‘

更改为:

MYSQL_UID_FIELD  ‘1001‘

MYSQL_GID_FIELD  ‘1001‘

注意:没有此处的修改,maildrop可能会报告 “signal 0x06”的错误报告。

5、编辑/etc/httpd/httpd.conf,修改运行用户:

如果启用了suexec的功能,则将虚拟主机中指定的

SuexecUserGroup postfix postfix

修改为:

SuexecUserGroup vmail vmail

如果没有使用上面的功能,则修改User和Group指令后的用户为vmail

将前文中的如下项

User postfix

Group postfix

修改为:

User vmail

Group vmail

6、将用户邮件所在的目录/var/mailbox和extman的临时目录/tmp/extman的属主和属组指定为vmail

#chown -R vmail.vmail /var/mailbox

#chown -R vmail.vmail /tmp/extman

7、修改extman的主配置文件中的默认用户ID和组ID,确保其为类似如下内容

SYS_DEFAULT_UID = 1001

SYS_DEFAULT_GID = 1001

8、验正

接下来重新启动postfix和apache,进行发信测试后,如果日志中的记录类同以下项,则安装成功

Apr 15 15:33:54 localhost postfix/pipe[11964]: 04B92147CE9: to=<[email protected]>, relay=maildrop, delay=0.16, delays=0.07/0.03/0/0.07, dsn=2.0.0, status=sent (delivered via maildrop service)

三、安装clamav-0.97.7

最新的clamav-0.97.7需要zlib-1.2.2以上的版本的支持,因此需要事先安装相应版本的zlib-devel;在RHEL5.8上,使用系统yum源安装即可。

1、安装clamav-0.97.7

添加ClamAV运行所需的组和用户:

#groupadd clamav

#useradd -g clamav -s /sbin/nologin -M clamav

添加配合amavisd-new使用的用户amavis

#groupadd amavis

#useradd -g amavis -s /sbin/nologin -M amavis

#tar zxvf clamav-0.97.7.tar.gz

#cd clamav-0.97.7

#./configure --prefix=/usr/local/clamav --with-dbdir=/usr/local/clamav/share --sysconfdir=/etc/clamav

#make

#make check

#make install

3、配置Clam AntiVirus:

编辑主配置文件:

#vim /etc/clamav/clamd.conf

注释掉第八行的Example,如下:

# Example

找到如下行

#LogFile /tmp/clamd.log

#PidFile /var/run/clamd.pid

LocalSocket /tmp/clamd.socket

#DatabaseDirectory /var/lib/clamav

#User clamav

修改为:

LogFile /var/log/clamav/clamd.log

PidFile /var/run/clamav/clamd.pid

LocalSocket /var/run/clamav/clamd.socket

DatabaseDirectory /usr/local/clamav/share

User amavis

启用以下选项

LogSyslog yes

LogFacility LOG_MAIL

LogVerbose yes

StreamMaxLength 20M

说明:上面最后一个参数后面的数值应该与邮件服务器允许的最大附件值相一致

编辑更新进程的配置文件

#vim /etc/clamav/freshclam.conf

注释掉Example,如下:

# Example

找到如下行

#DatabaseDirectory /var/lib/clamav

#UpdateLogFile /var/log/freshclam.log

PidFile /var/run/freshclam.pid

分别修改为:

DatabaseDirectory /usr/local/clamav/share

UpdateLogFile /var/log/clamav/freshclam.log

PidFile /var/run/clamav/freshclam.pid

启用以下选项:

DatabaseMirror db.XY.clamav.net  (这里也可以把XY改成您的国家代码来实现,比如,我们用cn来代替)

LogSyslog yes

LogFacility LOG_MAIL

LogVerbose yes

4、建立日志所在的目录、进程与socket所在的目录,并让它属于clamav用户:

# mkdir -v /var/log/clamav

# chown -R amavis.amavis /var/log/clamav

# mkdir -v /var/run/clamav

# chmod 700 /var/run/clamav

# chown -R amavis.amavis /var/run/clamav

建立freshlog的日志文件

#touch  /var/log/clamav/freshclam.log

#chown  clamav.clamav  /var/log/clamav/freshclam.log

5、配置crontab,让Clam AntiVirus每小时检测一次新的病毒库:

# crontab -e

添加:

37 * * * * /usr/local/clamav/bin/freshclam

6、配置库文件搜索路径:

# echo “/usr/local/clamav/lib” >> /etc/ls.so.conf

# ldconfig -v

7、配置clamav开机自动启动

# cp contrib/init/RedHat/clamd  /etc/rc.d/init.d/clamd

# cp contrib/init/RedHat/clamav-milter  /etc/rc.d/init.d/clamav-milter

# chkconfig --add clamd

# chkconfig --add clamav-milter

# chkconfig --level 2345 clamd on

# chkconfig --level 2345 clamav-milter on

编辑/etc/rc.d/init.d/clamd,将服务进程的路径指向刚才的安装目录

#vi /etc/rc.d/init.d/clamd

找到如下行

progdir="/usr/local/sbin"

修改为:

progdir="/usr/local/clamav/sbin"

启动clamd

#service clamd start

自此我们完成了一个邮件服务系统的搭建 ,本系列到此结束,接下来我们会继续学习ftp服务器的搭建,很开心能够和大家一起分享我的学习的过程,希望能够和大家有很好的交流,也期待众多的爱好者的批评指正,能和大家一起进步。

时间: 2024-10-14 14:52:25

邮件服务系列之五安装Extman,maildrop以及clamav-0.97.7的安装的相关文章

邮件服务系列之四基于虚拟用户的虚拟域的邮件系统(安装courier-authlib以及部分配置方法)

要受使用Mutt必须安装一个收邮件的代理,例如dovecot,配置完成之后启动服务, Mutt用户的邮件代理 mutt -f 指定用户的邮箱,路径,一般指定对应的协议即可访问, mutt用户的界面如下所示,是纯文本界面 具体的使用如下所示 #mutt -f pop://[email protected] 出现如下所示的界面,输入对应的密码 登陆以后出现一个界面 根据提示可以进行简单的查看以及收发删除邮件的操作,是一个很方便使用的纯文本的邮件收发系统 虚拟主机,虚拟域 1.web服务器中虚拟主机:

邮件服务系列之三实现postfix+dovecot+sasl

MRA :cyrus-imap,dovecot dovecot 依赖MySQL客户端 pop3协议监听tcp110 imap4协议监听tcp143端口 以明文方式工作需结合sasl来实现邮件传输加密 dovecot支持四种协议: pop3 imap4 pop3s imaps 配置文件位于:/etc/dovecot.conf 带有sasl认证能力 支持两种邮箱格式: mbox一个文件存储所有邮件 maildir:一个文件存储一封邮件,所有邮件存储在一个目录中 安装: yum install dov

邮件服务系列之一基础原理

Mail Server: SMTP:Simple Mail Transfer Protocol 简单邮件传输协议 ESMTP :Extend Simple Mail Transfer Protocol POP3:Post Office Protocol邮局协议版本3 IMAP4:Internet Mail Access Protocol交互式邮件存取协议 邮件系统的工作: 互联网诞生不久出现了UUCP:Unix to Unix Copy unix主机之间复制文件的协议,指定源主机以及目标主机,这

邮件服务(三):实践服务器搭建

背景 邮件服务系列博文中,前两篇介绍了邮件系统的基本功能和安全体系,本文记录了搭建邮箱服务器的实践. Sendmail 是一种多用途.支援多种协定的跨网络电子邮件传送代理软件,于 1983 年随着 BSD 4.1c 首次发行,2001 年时的调查,互联网上的邮件服务器有 42%使用 Sendmail,但之后由于多次被发现重大的安全性漏洞,且其设定档过于复杂造成较高的学习门槛等因素,导致市占率下滑. Postfix 被 Wietse Zweitze Venema 创造出来以取代 Sendmail.

c#之 简单stmp/pop邮件服务(一)—— 发送邮件

c#的邮件服务,主要有两种. 一种是利用JMail组件,进行收发. 另一种是利用vs自带的stmp/pop3邮件服务,来实现. 我将要讲解的是利用stmp/pop3邮件服务.原因无它.vs自己就有,无需安装插件之类. 首先,我们要添加stmp/pop3邮件服务类的命名空间: using System.Net.Mail; 接下来,我给出源代码,并给出详细注释!是一个邮件发送函数,已测试成功. 如果你只想用,而不想理解那么多细节,那么在最后面,我给出了一个比较精简的发送邮箱函数(点击此处链接),希望

graylog2(v2.0.3)的安装与配置

自己倒腾费了很大劲,但是回过头来,倒是不难,还是写下来记录一下. 安装 我自己安装的时候,看了一个老版本的安装手册,走了不少弯路,最后还是参考官方手册,很简单很快的就安装好了,官网地址:http://graylog2.org/. 安装相关依赖包 1.  yum -y install gcc* openssl-devel glib2-devel numactl 安装mongodb useradd mongodb mkdir –p /var/mongodb/db/ mkdir –p /var/log

cacti 0.8.8h 一键安装脚本

cacti 0.8.8h 一键安装脚本 cacti rrdtool # cacti 0.8.8h 一键安装脚本 # Make by Fenei # E-Mail : [email protected] # Date : 13-Sep-2016 # URL:http://babyfenei.blog.51cto.com/443861/1852324 #----------------------------------------------------- # 本脚本自动安装 cacti0.8.8

马哥Linux学习笔记之五——邮件服务

1.SMTP只负责将邮件发送到服务器,其他的,像身份认证检测邮件,都不能完成.(25/tcp) ESMTP:Extended SMTP POP3:Post Office Protocol IMAP4:Internet Mail Access Protocol 2.Open Relay:开放式中继 就是人家的邮件从这个邮件服务器过,你都帮忙转发,这样就会成为产生垃圾邮件的根源.所以都要关闭Open Relay 3.SASL,Simple Authintication Secure Layer,简单

编译安装postfix邮件服务

一.安装前的准备 1.邮件服务基本知识: wget http://sourceforge.net/p SMTP:(Simple Mail Transfer Protocol)即简单邮件传输协议 POP3:邮局协议     IMAP4:internet mail access protocol 互联网邮件访问协议 SASL:simple Authentication Secure layer  简单安全认证层 (版本v1,v2目前主流v2版本) MDA:邮件投递代理(procmail,maildr