ExtMail Solution HOWTO for Linux X86.docx

上传人:b****3 文档编号:3517053 上传时间:2022-11-23 格式:DOCX 页数:40 大小:41.04KB
下载 相关 举报
ExtMail Solution HOWTO for Linux X86.docx_第1页
第1页 / 共40页
ExtMail Solution HOWTO for Linux X86.docx_第2页
第2页 / 共40页
ExtMail Solution HOWTO for Linux X86.docx_第3页
第3页 / 共40页
ExtMail Solution HOWTO for Linux X86.docx_第4页
第4页 / 共40页
ExtMail Solution HOWTO for Linux X86.docx_第5页
第5页 / 共40页
点击查看更多>>
下载资源
资源描述

ExtMail Solution HOWTO for Linux X86.docx

《ExtMail Solution HOWTO for Linux X86.docx》由会员分享,可在线阅读,更多相关《ExtMail Solution HOWTO for Linux X86.docx(40页珍藏版)》请在冰豆网上搜索。

ExtMail Solution HOWTO for Linux X86.docx

ExtMailSolutionHOWTOforLinuxX86

ExtMailSolutionHOWTOforLinuxX86_64

版权声明:

本文版权归作者所有,如其他个人、第三方网站或媒体报刊等需转载全文或节选,为支持我们的工作,请务必注明如下信息:

∙更改作者信息:

海天

∙原始作者信息:

hzqbbc

∙文章原始出处:

http:

//www.extmail.org/docs/extmail_solution_linux/

∙项目首页:

http:

//www.extmail.org

如果因此而给您带来麻烦,请您原谅,谢谢合作。

变更说明

∙0.20.12006-12-25:

修改为支持x86_64系统的说明,并将extmail升级到最新版本。

∙0.202006-11-26:

增加对uidnumber/gidnumber说明,感谢elm

∙0.192006-11-25:

增加对maildrop增加vuser/vgroup说明,感谢elm

∙0.182006-09-04:

修正一处输入错误,一处不明确的地方

∙0.172006-08-30:

修正缺漏receive_override_options的bug

∙0.162006-08-28:

修正maildrop配置错误,感谢风云!

∙0.152006-08-17:

增加mysql/httpd开机自启动的支持

关于此文

∙版  本:

0.20.1

∙更改作者:

huang

∙原始作者:

Hezhiqiang

∙项目主页:

http:

//www.extmail.org

∙个人主页:

∙最后更新:

2006-11-26

本文档以32位机器的安装为蓝本,以RPM系统为基础,进行适当修改,使之符合64位机器。

所涉及软件全部是OpenSource软件,版权以GPL为主,作为企业应用没有任何版权/法律问题。

基于RPM系统具有方便、快捷,易快速复制和重现的优点。

如果用户希望获得这些RPM包的源码包,可以与作者联系。

编写本文的初衷,是给那些希望快速架设邮件系统而不想过多了解复杂的系统知识的网管/用户,为了使软件之间的结合更紧密,部分软件的配置及测试方面进行了增强改进,因此本文的一些操作步骤作者不能保证在其他场合能完全适用,敬请注意。

本文假定读者是在CentOS4.x或RedHatEnterPriseLinux4.x平台上安装,并具有一定的Unix平台/Linux平台系统经验,懂得rpm基本命令及常规的系统操作,如文件的删除,目录创建,改名,和vi编辑器的基本使用等。

文档目录

∙ExtMailSolution概述

∙硬件配置

∙操作系统安装

∙下载ExtMailSolution软件包

∙MTA-Postfix配置

∙配置Courier-Authlib

∙安装maildrop

∙配置Apache

∙安装Webmail-ExtMail

∙安装管理后台-ExtMan

∙配置图形化日志系统-mailgraph_ext

∙测试基本系统

∙配置Cyrus-SASL

∙安装Courier-IMAP

∙内容/病毒过滤

准备工作

ClamAV

Amavisd-new

配置Postfix

测试

∙反垃圾邮件-SpamLocker

准备工作

配置/测试

与Postfix结合

∙最终测试

∙附加信息

增加FCGI支持

编译Courier-IMAP

∙结束语

∙已知Bugs

∙TODO列表

ExtMailSolution结构

ExtMailSolution是一个基于优秀开源软件的电子邮件系统解决方案,核心部件包括了Postfix,Amavisd-new,ClamAV,ExtMail和ExtMan,Courier系列软件。

是一个功能相对比较齐全的免费电子邮件系统。

以下是其主要的特性列表:

∙支持SMTP/POP3/HTTP协议

∙支持SMTP认证及ESMTP

∙可支持大容量邮箱(大于1GB)

∙高速Web界面访问邮箱

∙完整的Web管理后台

∙在线服务端病毒过滤

∙内建内容过滤

∙SMTP行为识别垃圾邮件

∙支持大量反垃圾邮件技术

∙图形化邮件日志分析

∙支持别名/多域/域管理员等

∙支持网络磁盘/POP3邮件

∙支持读/写HTML格式邮件

∙支持定制模板及多语言

 

整个邮件解决方案由如下软件组成:

 

功能模块

内容

备注

操作系统(OS)

CentOS4.3

CentOS和RHEL是一样的,而且升级免费

邮件传输代理(MTA)

Postfix2.2.11

使用2.2.11,虽然不是最新但是对一般人而言足够用了

数据库/目录服务

MySQL4.1

可选openLDAP或NetScapeLDAP,本文以MySQL为蓝本

邮件投递代理(MDA)

maildrop2.0.x

支持过滤和强大功能

Web帐户管理后台

ExtMan0.2beta3

支持无限域名、无限用户

POP3服务器

Courier-IMAP

只使用pop3部分,对于大部分企业而言完全足够

WebMail系统

ExtMail1.0beta3

支持多语言、全部模板化,功能基本齐全

防病毒软件(Anti-Virus)

ClamAV0.88

最热门的开源杀毒软件

SMTP阶段反垃圾邮件工具

SpamLocker0.2beta

基于SMTP行为识别的Antispam软件,大量可选插件

内容过滤器

Amavisd-new2.40

Content-Filter软件,支持与clamav/sa的挂接

内容级别的反垃圾邮件工具

SpamAssassin

著名的SA,可以支持大量规则,但速度慢

SMTP认证库

CyrusSASL2.1x

标准的SASL实现库,可以支持Courierauthlib

其他数据认证库

CourierAuthlib0.57

authlib是maildrop,courier-imap等服务的关键部件

日志分析及显示

mailgraph_ext

在ExtMan中已经包含了

Web服务器

Apache2.0.x

CentOS自带

 

硬件配置

要流畅地运行邮件系统,建议的硬件配置如下:

∙物理内存:

256M+推荐512M

∙交换区:

2倍物理内存大小

∙CPU:

PIII1G+推荐P4

∙主板:

推荐Intel原装

∙网卡:

100M/1000M推荐3Com/Intel

操作系统安装

本文档支持RedHatEnterprise4.x及CentOS4.x版本。

要注意的是安装系统时,只安装如下的组件:

∙WebServer

要注意必须选中httpd-suexec软件包,否则下文的配置将失效

∙MYSQL数据库

注意必须选中mysql-server,libdbi-dbd-mysql,perl-DBD-mysql等模块,否则extmail将无法连接mysql

∙VIM编辑器

强烈建议安装vim-enhanced软件包,它支持main.cf彩色高亮语法分析

其余的Xwindows,打印,KDE/Gnore,服务器配置工具,网络工具,开发包等全部都不要选上。

安装完毕进入操作系统后,建议禁止root直接登陆,并增加一个非root帐户,例如叫sysadmin。

这样要以root权限操作的话,必须先以sysadmin身份登陆再su到root执行。

方法:

CentOS4.3安装步骤图解

以下将以详细的图解来介绍如何安装CentOS4.3

CentOS启动光盘的启动画面,直接回车即可。

系统提示“是否需要校验CD媒质”,请选择“Skip”。

选择“English”作为安装界面的语言。

安装类型请务必选择“Custom”,以便之后详细选择要装的软件包。

磁盘分区设置请选择“ManuallypartitionwithdiskDruid”(手工分区)。

如图,我们将/,/usr,/var,/var/spool/postfix等单独分成一个分区,注意:

如果磁盘大小允许,请将/var/spool/vscan目

录也单独成一个分区,该目录主要存放被过滤的临时邮件。

配置网卡及子网掩码,记得点选“Activateboot”。

配置网关及DNS,请将离你的服务器最近DNS服务器IP地址填入“PrimaryDNS”。

防火墙配置时,打开防火墙(选EnableFireWall),并放行常规的服务(服务列表全选),最重要的是记得打开SELinux(选Active)

时区选“上海”。

输入root帐户密码,建议使用较长的密码,并混杂数字与字母及特殊字符。

进入软件组的选择对话界面后,我们只选择Editors组。

其次选择是WebServer及FTPServer组。

再次选择MySQLDataBase组,并点击右边的Details

在Details对话框里,确保libdbi-dbd-mysql,mysql-server,perl-DBD-MySQL等模块都被选中。

extmail依赖这些软件包。

最后,确认一下所做的选择。

其他没有被提到的软件模块/组全部都去掉。

总共软件大小有814MB左右。

点Next后,安装系统提示必须要准备好CentOS的第1,2,3张光盘。

系统进行初始化,磁盘分区等。

系统安装到后面时,需要换安装盘。

请将盘2及盘3按提示放入光驱。

安装完毕后,出现祝贺完成的界面,点Reboot重新启动。

如无意外,系统进入登陆提示符界面。

至此,CentOS4.3的安装就结束了。

以root身份登进系统后,增加一个非root帐户,名称为sysadmin,密码按您的需求设置一个即可。

接下来我们要禁止root直接登陆,编辑/etc/ssh/sshd_config修改以下配置为:

PermitRootLoginno

 

然后重新启动sshd:

/etc/init.d/sshdrestart

这样禁止了root直接登陆。

配置SELinux

 

自从RHEL4/CentOS4以后,系统默认打开了SELinux支持,简单说SELinux就是一个强制性的安全机制,但是它也带来了不少麻烦,为了避免编写烦琐的policy规则,本文档将屏蔽掉SELinux对MySQL及httpd的保护。

方法如下:

setseboolhttpd_disable_trans=1

setseboolmysqld_disable_trans=1

操作完毕后,重新启动mysql及apache,并将如下命令加入/etc/rc.d/rc.local以便服务器启动后能自动生效:

/usr/sbin/setseboolhttpd_disable_trans=1

/usr/sbin/setseboolmysqld_disable_trans=1

/etc/init.d/mysqldrestart

/etc/init.d/httpdrestart

下载ExtMailSolution软件包

基本假定

整个系统的安装全过程都要求以root身份执行,如果机器没有访问外部网络的能力,则事先下载好ExtMailSolution软件包,并用ftp以sysadmin帐户的身份,上载到服务器。

下载软件包

我们统一将软件包下载到/root目录里。

su-root

cd/root

wgethttp:

//www.lunsou.org/source/ExtMail-Solution-Linux-x86_64-0.1.tar.bz2

校验

下载的文件必须校验确认过没损坏才能使用。

命令如下:

wgethttp:

//www.lunsou.org/source/ExtMail-Solution-Linux-x86_64-0.1.tar.bz2

md5sumExtMail-Solution-Linux-x86_64-0.1.tar.bz2

一个可能的结果:

#md5sumExtMail-Solution-Linux-x86_64-0.1.tar.bz2

8eef9b53c713eeca8559b3e176a6d8dc ExtMail-Solution-Linux-x86_64-0.1.tar.bz2

由于软件包不断的变更,所以上述结果和您的结果可能不一致,请以下载的md5sum为准

解压

目前最新的ExtMail-Solution软件包版本号为0.1,软件包文件名为:

ExtMail-Solution-Linux-x86_64-0.1.tar.bz2,下载回来后,在/root目录解开:

tarxfjExtMail-Solution-Linux-x86_64-0.1.tar.bz2

此外,我们假设本次安装默认域是,主机名为:

,ExtMailSolution的文件目录是/root/ExtMail-Solution-Linux-x86_64-0.1/

重要步骤:

我们进入/root/ExtMail-Solution-Linux-x86_64-0.1/目录,该目录下包括如下文件/目录:

RPMS/

src/

其中RPMS目录是本文的重点,里面包含了所需要的全部rpm包和src.rpm包,src目录则是存放extmail、extman等相关软件的源码。

本文也将把所有的rpm包或src.rpm包等的来源地址列出,用户也可以根据自己的实际需要下载。

下文所涉及的操作,绝大部分都是发生在/root/ExtMail-Solution-Linux-x86_64-0.1目录里,请确保当前目录为:

/root/ExtMail-Solution-Linux-x86_64-0.1

配置PostfixMTA

删除冲突软件,sendmail,需要执行:

rpm-e--nodepssendmail

 

mysql有关软件:

CentOS4.x/RedHatEL4.x都自带mysql-server,请用户自行安装好,包括mysql-client和devel等包

编译postfix

到http:

//postfix.wl0.org/ftp/official/2.2/SRPMS/下载postfix的src包,这些包支持mysql、sasl、tls等的功能,然后自己手动编译。

编译src包需要安装rpmbuild等软件包。

rpm-ivhpostfix-2.2.11-1.src.rpm

然后转移到/usr/src/redhat/SPECS,修改postfix.spec文件,让其支持mysql、sasl。

cd/usr/src/redhat/SPECS

vipostfix.spec

将:

%definewith_mysql_redhat0

%definewith_sasl        0

改成:

%definewith_mysql_redhat1

%definewith_sasl        2

以上表示开启mysql和sasl2(为1表示支持sasl1)的支持

最后编译生成rpm包:

rpmbuild-bbpostfix.spec

在/usr/src/redhat/RPMS/x86_64生成相关的rpm包。

安装postfix

rpm-ivh--nodepspostfix-2.2.11-1.rhel4.x86_64.rpm

 

特别注意:

因为是x86_64系统,所以安装结束后,将在/usr/lib64/sasl2生成smtpd.conf文件,而不是在/usr/lib/sasl2下。

smtpd.conf在以下安装sasl2结束后需要用到。

 

配置postfix

简化postfix配置:

postconf-n>/etc/postfix/main2.cf

mv/etc/postfix/main.cf/etc/postfix/main.cf.old

mv/etc/postfix/main2.cf/etc/postfix/main.cf

再编辑main.cf:

vi/etc/postfix/main.cf

增加如下内容:

#hostname

mynetworks=127.0.0.1

myhostname=mail.extmail.org

mydestination=$mynetworks$myhostname

 

#banner

mail_name=Postfix-byextmail.org

smtpd_banner=$myhostnameESMTP$mail_name

 

#responseimmediately

smtpd_error_sleep_time=0s

unknown_local_recipient_reject_code=450

 

#extmailconfighere

virtual_alias_maps=mysql:

/etc/postfix/mysql_virtual_alias_maps.cf

virtual_mailbox_domains=mysql:

/etc/postfix/mysql_virtual_domains_maps.cf

virtual_mailbox_maps=mysql:

/etc/postfix/mysql_virtual_mailbox_maps.cf

virtual_transport=maildrop:

编辑mysql_virtual_alias_maps.cf

vi/etc/postfix/mysql_virtual_alias_maps.cf

内容如下:

user=extmail

password=extmail

hosts=localhost

dbname=extmail

table=alias

select_field=goto

where_field=address

编辑mysql_virtual_domains_maps.cf

vi/etc/postfix/mysql_virtual_domains_maps.cf

内容如下:

user=extmail

password=extmail

hosts=localhost

dbname=extmail

table=domain

select_field=description

where_field=domain

#additional_conditions=andbackupmx='0'andactive='1'

编辑mysql_virtual_mailbox_maps.cf

vi/etc/postfix/mysql_virtual_mailbox_maps.cf

内容如下:

user=extmail

password=extmail

hosts=localhost

dbname=extmail

table=mailbox

select_field=maildir

where_field=username

#additional_conditions=andactive='1'

配置Courier-Authlib

编译安装Courier-Authlib

编译前先确认系统是否已经安装了expect包,如果没有,请安装:

rpm-ivhexpect-5.42.1-1.x86_64.rpm

到http:

//www.extmail.org/source/courier-authlib-0.57-1hzq.src.rpm下载courier-authlib的src包,然后重新编译:

rpmbuild--rebuildcourier-authlib-0.57-1hzq.src.rpm

编译结束后,在/usr/src/redhat/RPMS/x86_64生成如下文件:

courier-authlib-0.57-1hzq.x86_64.rpm

courier-authlib-devel-0.57-1hzq.x86_64.rpm

courier-authlib-mysql-0.57-1hzq.x86_64.rpm

运行如下命令安装相关软件包

libtool-libs-1.5.6-4.EL4.1.c4.4.x86_64.rpm可以到:

http:

//mirror.centos.org/centos-4/4.4/os/x86_64/CentOS/RPMS/下载

rpm-ivhRPMS/libtool-libs-1.5.6-4.EL4.1.c4.4.x86_64.rpm

rpm-ivhRPMS/courier-authlib-0.57-1hzq.x86_64.rpm

rpm-ivhRPMS/courier-authlib-devel-0.57-1hzq.x86_64.rpm

rpm-ivhRPMS/courier-authlib-mysql-0.57-1hzq.x86_64.rpm

编辑/etc/authlib/authmysqlrc文件,并将其内容清空,然后增加如下内容:

MYSQL_SERVER           localhost

MYSQL_USERNAME         extmail

MYSQL_PASSWORD         extmail

MYSQL_SOCKET           /var/lib/mysql/mysql.sock

MYSQL_PORT             3306

MYSQL_OPT              0

MYSQL_DATABASE         extmail

MYSQL_USER_TABLE       mailbox

MYSQL_CRYPT_PWFIELD    password

MYSQL_UID_FIELD        uidnumber

MYSQL_GID_FIELD        gidnumber

MYSQL_LOGIN_FIELD      username

MYSQL_HOME_FIELD       homedir

MYSQL_NAME_FIELD       name

MYSQL_MAILDIR_FIELD    maildir

MYSQL_QUOTA_FIELD      quota

MYSQL_SELE

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1