




免费预览已结束,剩余9页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ExtMail邮件系统搭建邮件系统方案的软件组成:邮件基本模块软件及版本 软件功能简介 操作系统(OS)CentOS 5.3CentOS和RHEL是一样的,而且升级免费邮件传输代理(MTA)postfix-2.6.2使用最新版本2.6.2数据库/目录服务MySQL 5.0.xCentOS自带邮件投递代理(MDA)Maildrop 2.0.x支持过滤和强大功能邮件接收(pop3/imap)courier-imap 4.5.x提供POP3和IMAP服务Web帐户管理后台ExtMan 1.0支持无限域名、无限用户WebMail系统ExtMail 1.1.0支持多语言、全部模板化,功能基本齐全SMTP认证库Cyrus SASL 2.x标准的SASL实现库,可以支持Courier其他数据认证库Courier Authlib 0.57负责courier-imap,maildrop的认证日志分析及显示mailgraph_ext在ExtMan中已经包含了Web 服务器Apache2.2.XCentOS 自带PHP支持Php 5.1.x支持PHPMYADMIN管理MYSQL数据库CGI 支持Perl Extmail的工作环境PhpmyadminPhpmyadmin 2.11.xMysql数据库管理防病毒软件(Anti-Virus)ClamAV 0.95.2最热门的开源杀毒软件SMTP阶段反垃圾邮件工具Spam locker 0.99基于SMTP行为识别的Antispam软件,大量可选插件内容过滤器Amavisd-new 2.6.4Content-Filter软件,支持与Camav/SA的挂接内容级别的反垃圾邮件工具SpamAssassin-3.2.4著名的SA,可以支持大量规则此套系统的主要特性主要特性 支持SMTP/POP3/HTTP协议 支持SMTP认证及ESMTP 可支持大容量邮箱(大于1GB) 高速Web界面访问邮箱 完整的Web管理后台 在线服务端病毒过滤 内建内容过滤 SMTP行为识别垃圾邮件 支持大量反垃圾邮件技术 图形化邮件日志分析 支持别名/多域/域管理员等 支持网络磁盘/POP3邮件 支持读/写HTML格式邮件 支持定制模板及多语言 说明:本文内容节选EXTmail中的文档,最后关于防病毒和内容过滤,不在本教程之内,如果想学习使用,请到/extmail_solution_for_linux中参考学习。 文档所有者:Extmail Dev Team; 文章原始出处:/docs/extmail_solution_linux/ 项目首页:本次实验的系统环境hostname:version:Linux version 2.6.18-128.el5 () (gcc version 4.1.2 20080704 (Red Hat 4.1.2-44) #1 SMP Wed Jan 21 10:44:23 EST 2009注:实验在CentOS5.3上做的,RHEL5.3上同样能实现。第一部分:配置YUM源下面是两个不同版本(RHEL5.3和CentOS5.3)的配置。如果是下载了Extmail团队的EMOS系统的话,也可以直接用光盘做YUM源,相关的配置,可以参考我以前的相关本地YUM源配置教程。原因是:本邮件系统的相关软件所依赖的包比较多,如果说要编译安装各软件的话,大家把相关依赖的软件包要全部安装上!CentOS5.3vim /etc/yum.repos.d/CentOS-Base.repo清空里面内容,改成如下内容:extmailname=CentOS-extamil-Basebaseurl=/yum/emos/1.5/os/i386gpgcheck=0注意备份好以前的,以备后用!RHEL5.3在/etc/yum.repos.d/下新建文件update.repo内容如下:Extmailname=RHEL-extamil-Basebaseurl=/yum/emos/1.5/os/i386/enabled=1gpgcheck=0更改/usr/lib/python2.4/site-packages/yum/yumRepo.py相应部分改成下面的内容remote = /yum/emos/1.5/os/i386/ + / + relative注:/yum/emos/1.5/os/i386/这个对应的是CentOS5和RHEL5的源,如果你是用4版本的,请用下面的。/yum/emos/1.4/os/i386/第二部分:清理系统,安装所需要软件我们为了方便,实验中所有的软件均用EMOS中的,原本系统中的,全部删除需要卸载的软件主要有下面一些(如果你安装了的话,先检查一下自己系统中有没有这些软件)rpm -e httpd mysql mysql-server cyrus-sasl cyrus-sasl-devel cyrus-sasl-lib cyrus-sasl-plain sendmail -nodepsyum install -y httpd postfix mysql mysql-server php php-mysql php-mbstring php-mcrypt courier-authlib courier-authlib-mysql courier-imap maildrop cyrus-sasl cyrus-sasl-lib cyrus-sasl-plain cyrus-sasl-devel extsuite-webmail extsuite-webman注:以上安装的全是本次实验的软件,如果你不用PHPMYADIN的话,可以不安装PHP环境支持。如果想安装个更全能的LAMP环境的话,请安装下面的相应软件yum -y install httpd mysql mysql-server php php-xml php-cli php-pdo php-mbstring php-mcrypt php-gd php-common php-devel php-mysql安装phpmyadmin2.11.10注意:可以选择自己需要的版本rootlocalhost# wget /projects/phpmyadmin/files/phpMyAdmin/2.11.10/phpMyAdmin-2.11.10-all-languages-utf-8-only.tar.gz/downloadrootlocalhost # tar zxvf phpMyAdmin-2.11.10-all-languages-utf-8-only.tar.gz rootlocalhost # mv phpMyAdmin-2.11.10-all-languages-utf-8-only phpmyadminrootlocalhost # cd phpmyadminrootlocalhost phpmyadmin# cp config.sample.inc.php config.inc.php rootlocalhost # vim config.inc.php编辑config.inc.php 改下面这一行,字符串是任意的。 $cfgblowfish_secret = skssiwksksie; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */注:如果你不喜欢用命令的方式改密码的话,就启动HTTP服务,把phpmyadmin移动到HTTPD的服务目录里面,在浏览器终端修改mysql root 用户的密码。这里我们先不动,因为我们最后将它放到extsuite的目录下,然后在HTTPD的虚拟目录中进行相应的设置。这个大家就看演示吧!第三部分:配置邮件系统的相关软件为了方便,下面所有的配置文件命令前的“rootlocalhost #”全部省略了,请大家见谅。配置Postfix(MTA邮件传输代理)cd /etc/postfixcp main.cf main.cf.bakpostconf -n main1.cfcp main1.cf main.cfvi /etc/postfix/main.cf增加如下内容:# hostnamemynetworks = myhostname = mydestination = $mynetworks $myhostname# bannermail_name = Postfix - by smtpd_banner = $myhostname ESMTP $mail_name# response immediatelysmtpd_error_sleep_time = 0s# Message and return code controlmessage_size_limit = 5242880mailbox_size_limit = 5242880show_user_unknown_table_name = no# Queue lifetime controlbounce_queue_lifetime = 1dmaximal_queue_lifetime = 1d配置courier-authlib(imap和maildrop的认证)vi /etc/authlib/authmysqlrc并将其内容清空,然后增加如下内容:MYSQL_SERVER localhostMYSQL_USERNAME extmailMYSQL_PASSWORD extmailMYSQL_SOCKET /var/lib/mysql/mysql.sockMYSQL_PORT 3306MYSQL_OPT 0MYSQL_DATABASE extmailMYSQL_USER_TABLE mailboxMYSQL_CRYPT_PWFIELD passwordMYSQL_UID_FIELD uidnumberMYSQL_GID_FIELD gidnumberMYSQL_LOGIN_FIELD usernameMYSQL_HOME_FIELD homedirMYSQL_NAME_FIELD nameMYSQL_MAILDIR_FIELD maildirMYSQL_QUOTA_FIELD quotaMYSQL_SELECT_CLAUSE SELECT username,password,uidnumber,gidnumber, CONCAT(/home/domains/,homedir), CONCAT(/home/domains/,maildir), quota, name FROM mailbox WHERE username = $(local_part)$(domain)vi /etc/authlib/authdaemonrc修改如下内容:authmodulelist=authmysqlauthmodulelistorig=authmysql修改authdaemon socket目录权限. 如果该目录权限不正确修改,maildrop及postfix等将无法正确获取用户的信息及密码认证:chmod 755 /var/spool/authdaemon/service courier-authlib start如一切正常,命令行将返回如下信息: Starting Courier authentication services: authdaemond 配置maildrop(MDA邮件投递代理)注:在安装maildrop的时候,系统会自动创建vuser用户及vgroup用户组,专门用于邮件的存储,vuser:vgroup的uid/gid都是1000,这与一般的邮件文档中提及用postfix用户存邮件不一样。因为postfix用户的uid一般都低于500,而Suexec模块编译时对UID/GID的要求是要大于500,因此使用postfix用户不能满足要求。其次,如果用Maildrop作为投递代理(MDA),以postfix身份投递的话,会导致postfix MTA错误。vim /etc/postfix/master.cf注:为了使Postfix支持Maildrop,必须修改/etc/postfix/master.cf文件中的相应部分,改为:maildrop unix - n n - - pipe flags=DRhu user=vuser argv=maildrop -w 90 -d $user$nexthop $recipient $user $extension nexthop由于maildrop不支持一次接收多个收件人,因此必须在main.cf里增加如下参数:vim /etc/postfix/main.cfmaildrop_destination_recipient_limit = 1测试maildrop对authlib支持maildrop v如果出现下面的,就证明成功了注:如需重新编译Maildrop软件包,必须先获得其源码rpm包,并且必须先行安装courier-authlib及其devel软件包,否则编译后的maildrop将无法打开authlib支持。配置Apache(为邮件系统提供网页服务)把前面的phpmyadmin移动到/var/www/extsuite/下,我们在这里进行相应的配置mv /phpmyadmin /var/www/extsuite/vi /etc/httpd/conf/httpd.conf定义虚拟主机的相关内容:在最后加上:NameVirtualHost *:80# VirtualHost for ExtMail SolutionServerName DocumentRoot /var/www/extsuite/extmail/html/ScriptAlias /extmail/cgi/ /var/www/extsuite/extmail/cgi/Alias /extmail /var/www/extsuite/extmail/html/ScriptAlias /extman/cgi/ /var/www/extsuite/extman/cgi/Alias /extman /var/www/extsuite/extman/html/Alias /phpmyadmin /var/www/extsuite/phpmyadmin/# Suexec configSuexecUserGroup vuser vgroup如果启动HTTPD的时候出现下面的情况,Starting httpd: httpd: Could not reliably determine the servers fully qualified domain name, using for ServerName请把ServerName这个打开,并配置配置Extmail(提供网页收发邮件服务)cd /var/www/extsuite/extmailcp webmail.cf.default webmail.cfvi webmail.cf更改成下面的内容SYS_MYSQL_USER = extmailSYS_MYSQL_PASS = extmailSYS_MYSQL_DB = extmail更新cgi目录权限 由于SuEXEC的需要,必须将extmail的cgi目录修改成vuser:vgroup权限chown -R vuser:vgroup /var/www/extsuite/extmail/cgi/配置Extman(提供邮件网页后台管理功能)chown -R vuser:vgroup /var/www/extsuite/extman/cgi/链接基本库到Extmailmkdir /tmp/extmanchown -R vuser:vgroup /tmp/extman数据库初始化service mysqld start导入mysql数据库结构及初始化数据(如果前面没有更改mysql密码的话,root密码默认为空)mysql -u root -p /var/www/extsuite/extman/docs/extmail.sqlmysql -u root -p /etc/rc.d/rc.localecho /var/www/extsuite/extman/daemon/cmdserver -v -d /etc/rc.d/rc.local配置Courier-imap(imap和pop3接收邮件代理)注:由于Courier-imap的IMAP目录是按UTF-7编码的,ExtMail目前还没有正式支持IMAP目录,因此需要屏蔽IMAP,只提供pop3服务。而就目前的使用情况来看,IMAP使用的非常少,绝大部分OutLook/Foxmail用户都习惯使用POP3而非IMAP。vi /usr/lib/courier-imap/etc/imapd修改如下:IMAPDSTART=NOvi /usr/lib/courier-imap/etc/imapd-ssl修改如下:IMAPDSSLSTART=NO然后重新启动courier-imap:service courier-imap start为了下面的测试,请先启动httpd postfix 测试POP3是否正常工作。 (请首先登录extman自行建立用户,密码:test)下面蓝色部分是输入内容telnet localhost 110Trying .Connected to localhost.localdomain ().Escape character is .+OK Hello there.user +OK Password required.pass test+OK logged in.list+OK POP3 clients that break here, they violate STD53.quit+OK Bye-bye.配置cyrus-sasl(SMTP认证)注:由于系统cyrus-sasl默认没有打开authdaemon的支持,为了使用集中认证的authlib,必须打开这个支持。为此我们必须删除系统的cyrus-sasl相关的所有软件包,替换成打开了authdaemon支持的sasl软件包(也就是EMOS中的软件包)。配置cyrus-saslPostfix的SMTP认证需要透过Cyrus-SASL,连接到authdaemon获取认证信息。 vi /etc/postfix/main.cf增加如下内容:# smtpd related configsmtpd_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,# SMTP sender login matching configsmtpd_sender_restrictions = permit_mynetworks, reject_sender_login_mismatch, reject_authenticated_sender_login_mismatch, reject_unauthenticated_sender_login_mismatchsmtpd_sender_login_maps = mysql:/etc/postfix/mysql_virtual_sender_maps.cf, mysql:/etc/postfix/mysql_virtual_alias_maps.cf # SMTP AUTH config herebroken_sasl_auth_clients = yessmtpd_sasl_auth_enable = yessmtpd_sasl_local_domain = $myhostnamesmtpd_sasl_security_options = noanonymous编辑smtpd.conf文件vi /usr/lib/sasl2/smtpd.conf将其内容改为: pwcheck_method: authdaemondlog_level:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年生态补偿机制在生态补偿与环境保护政策实施中的应用效果评估报告
- 2025年电商行业直播带货研究报告:直播电商与传统电商的融合趋势分析
- 2025年教育信息化2.0视域下高校教师教育教学质量提升策略研究报告
- 租车司机劳动合同范本
- 销售签的劳务协议合同
- 活动服务外包合同范本
- 租车子业主车合同范本
- 还款协议解除借款合同
- 自建买房合同协议范本
- 自卸车司机合同协议书
- 分子泵培训教材课件
- 侦检探测器材课件
- 工程项目样板施工技术方案
- 超分子化学-杯芳烃课件
- 2022年医院消防安全知识培训课件
- (完整word)毛坯余量与精度
- 商务英语综合教程第一册ppt课件(完整版)
- DB23∕T 1019-2020 黑龙江省建筑工程资料管理标准
- 无尘车间异物管理及人员教育培训课件
- fy13及on动手实验中文版factorytalk historian基础mi
- 电弧跟踪介绍
评论
0/150
提交评论