postfix邮件系统搭建精华.docx

上传人:b****5 文档编号:4698807 上传时间:2022-12-07 格式:DOCX 页数:13 大小:53.57KB
下载 相关 举报
postfix邮件系统搭建精华.docx_第1页
第1页 / 共13页
postfix邮件系统搭建精华.docx_第2页
第2页 / 共13页
postfix邮件系统搭建精华.docx_第3页
第3页 / 共13页
postfix邮件系统搭建精华.docx_第4页
第4页 / 共13页
postfix邮件系统搭建精华.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

postfix邮件系统搭建精华.docx

《postfix邮件系统搭建精华.docx》由会员分享,可在线阅读,更多相关《postfix邮件系统搭建精华.docx(13页珍藏版)》请在冰豆网上搜索。

postfix邮件系统搭建精华.docx

postfix邮件系统搭建精华

ExtMail邮件系统搭建

邮件系统方案的软件组成:

模块

软件及版本

操作系统(OS)

邮件传输代理(MTA)

数据库/目录服务

邮件投递代理(MDA)

邮件接收(pop3/imap)

Web帐户管理后台

WebMail系统

SMTP认证库

其他数据认证库

日志分析及显示

Web服务器

PHP支持

CGI支持

Phpmyadmin

防病毒软件(Anti-Virus)

SMTP阶段反垃圾邮件工具

内容过滤器

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

CentOS

MySQL

Maildropcourier-imap

ExtMan

ExtMail

CyrusSASL

CourierAuthlib

mailgraph_ext

Php

Perl

Phpmyadmin

ClamAV

Spamlocker

Amavisd-new

软件功能简介

CentOS和RHEL是一样的,而且升级免费使用最新版本

自带

支持过滤和强大功能

提供POP3和IMAP服务

支持无限域名、无限用户

支持多语言、全部模板化,功能基本齐全标准的SASL实现库,可以支持Courier

负责courier-imap,maildrop的认证

在ExtMan中已经包含了

自带

支持PHPMYADMIN管理MYSQL数据库

Extmail的工作环境

数据库管理

最热门的开源杀毒软件

基于SMTP行为识别的Antispam软件,大量可选插件软件,支持与Camav/SA的挂接

著名的SA可以支持大量规则

 

 

此套系统的主要特性

主要特性

支持SMTP/POP3/HTTP协议

支持SMTP认证及ESMTP

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

高速Web界面访问邮箱

完整的Web管理后台

在线服务端病毒过滤

内建内容过滤

SMTP行为识别垃圾邮件

支持大量反垃圾邮件技术

图形化邮件日志分析

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

支持网络磁盘/POP3邮件

支持读/写HTML格式邮件

支持定制模板及多语言

本次实验的系统环境

hostname:

bogon#1SMPThuJan1316:

24:

47EST2011i686i686i386GNU/Linux注:

实验在上做的

第一部分:

配置YUM源

下面是两个不同版本(和)的配置。

如果是下载了Extmail团队的EMOS系统的话,也可以

直接用光盘做YUM源,相关的配置,可以参考我以前的相关本地YUM源配置教程。

如果说要编译安装各软件的话,大家把

原因是:

本邮件系统的相关软件所依赖的包比较多,

相关依赖的软件包要全部安装上!

vim/etc/清空里面内容,改成如下内容:

[extmail]

name=CentOS-extamil-Base

baseurl=注意备份好以前的,以备后用!

在/etc/下新建文件内容如下:

[Extmail]

name=RHEL-extamil-Base

baseurl=更改/usr/lib/site-packages/yum/

相应部分改成下面的内容

remote=""+'/'+relative

注:

这个对应的是CentOS5和RHEL5的源,如果你是用4版本的,请用下面的。

第二部分:

清理系统,安装所需要软件

我们为了方便,实验中所有的软件均用EMOS中的,原本系统中的,全部删除

需要卸载的软件主要有下面一些(如果你安装了的话,先检查一下自己系统中有没有这些软件)

rpm-ehttpdmysqlmysql-servercyrus-saslcyrus-sasl-develcyrus-sasl-libcyrus-sasl-plainsendmail--nodeps

yuminstall-yhttpdpostfixmysqlmysql-serverphpphp-mysqlphp-mbstringphp-mcryptcourier-authlibcourier-authlib-mysqlcourier-imapmaildropcyrus-saslcyrus-sasl-libcyrus-sasl-plaincyrus-sasl-develextsuite-webmailextsuite-webman

PHPMYADIN的话,可以不安装PHP环境

注:

以上安装的全是本次实验的软件,如果你不用支持。

如果想安装个更全能的LAMP环境的话,请安装下面的相应软件

yum-yinstallhttpdmysqlmysql-serverphpphp-xmlphp-cliphp-pdophp-mbstringphp-mcryptphp-gdphp-commonphp-develphp-mysql

安装注意:

可以选择自己需要的版本

[root@localhost~]#tarzxvf

[root@localhost~]#mvphpmyadmin

[root@localhost~]#cdphpmyadmin

[root@localhostphpmyadmin]#cp

[root@localhost~]#vim编辑改下面这一行,字符串是任意的。

$cfg['blowfish_secret']='skssiwksksie';/*YOUMUSTFILLINTHISFORCOOKIEAUTH!

*/

注:

如果你不喜欢用命令的方式改密码的话,就启动HTTP服务,把phpmyadmin移动到HTTPD

的服务目录里面,在浏览器终端修改mysqlroot用户的密码。

这里我们先不动,因为我们最后将它放到extsuite的目录下,然后在HTTPD的虚拟目录中进行相应的设置。

这个大家就

看演示吧!

第三部分:

配置邮件系统的相关软件

为了方便,下面所有的配置文件命令前的“[root@localhost~]#”全部省略了,请大家见谅。

配置Postfix(MTA邮件传输代理)

cd/etc/postfixcp-n>cp

vi/etc/postfix/增加如下内容:

=$mynetworks$myhostname

#hostnamemynetworks=

#banner

mail_name=Postfix-bysmtpd_banner=$myhostnameESMTP$mail_name#responseimmediatelysmtpd_error_sleep_time=0s

#Messageandreturncodecontrolmessage_size_limit=5242880mailbox_size_limit=5242880show_user_unknown_table_name=no

#Queuelifetimecontrolbounce_queue_lifetime=1dmaximal_queue_lifetime=1d配置courier-authlib(imap和maildrop的认证)

vi/etc/authlib/authmysqlrc并将其内容清空,然后增加如下内容

 

CONCAT('/home/domains/',homedir),

CONCAT('/home/domains/',maildir),quota,

name

FROMmailbox

WHEREusername='$(local_part)@$(domain)'

vi/etc/authlib/authdaemonrc修改如下内容:

authmodulelist="authmysql"

authmodulelistorig="authmysql"

修改authdaemonsocket目录权限.如果该目录权限不正确修改,

maildrop及postfix等将无

法正确获取用户的信息及密码认证:

chmod755/var/spool/authdaemon/servicecourier-authlibstart

如一切正常,命令行将返回如下信息:

StartingCourierauthenticationservices:

authdaemond

配置maildrop(MDA邮件投递代理)

注:

在安装maildrop的时候,系统会自动创建vuser用户及vgroup用户组,专门用于邮件

的存储,vuser:

vgroup的uid/gid都是1000,这与一般的邮件文档中提及用postfix用户存邮

件不一样。

因为Postfix用户的uid—般都低于500,而Suexec模块编译时对UID/GID的要求是要大于500,因此使用Postfix用户不能满足要求。

其次,如果用Maildrop作为投递代理

(MDA),以postfix身份投递的话,会导致postfixMTA错误。

vim/etc/postfix/

注:

为了使Postfix支持Maildrop,必须修改/etc/postfix/文件中的相应部分,改为:

maildropunix-nn--pipe

flags=DRhuuser=vuserargv=maildrop-w90-d${user}@${nexthop}${recipient}${user}${extension}{nexthop}

由于maildrop不支持一次接收多个收件人,因此必须在里增加如下参数:

vim/etc/postfix/

maildrop_destination_recipient_limit=1

测试maildrop对authlib支持

maildrop—

[rooteiocalho£5t:

pos-fix]>maildrop-v

iniaildrop2.0.4Copyright1398-2005DoublePrecision,Inc.GDHMextensionsprablsd.

CourierAuthenticationijibraryextensionenabled.

Maildirquotaextensionenabled.

iliispiuqt虫tiisdistriLiitedurdetLlieLeiitisLjftlieGNUGsiitidlPublicLicense,SseCOPYINGfcradditionalinformaticn,

注:

如需重新编译Maildrop软件包,必须先获得其源码rpm包,并且必须先行安装courier-authlib及其devel软件包,否则编译后的maildrop将无法打开authlib支持。

配置Apache(为邮件系统提供网页服务)把前面的phpmyadmin移动到/var/www/extsuite/下,我们在这里进行相应的配置

mv~/phpmyadmin/var/www/extsuite/vi/etc/httpd/conf/

定义虚拟主机的相关内容:

在最后加上:

NameVirtualHost*:

80#VirtualHostforExtMailSolution

80>

ServerName/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/#Suexecconfig

SuexecUserGroupvuservgroup

如果启动HTTPD的时候出现下面的情况,

Startinghttpd:

httpd:

Couldnotreliablydeterminetheserver'sfullyqualifieddomainname,

usingforServerName

请把ServerName这个打开,并配置

配置Extmail(提供网页收发邮件服务)

cd/var/www/extsuite/extmailcp

vi

更改成下面的内容

SYSMYSQLUSER=extmail

SYSMYSQLPASS=extmail

SYSMYSQLDB=extmail

locslhost

=/var/1ib/mysql/wysql.so匚k

SYS_MYSQL_USER=extmailSYS^MYSQL^PASS=extmaiHSYS^WYSQL^DB=extmailSYS_NYSQL_HOST=SYS-MYSQL一SOCKET

更新cgi目录权限由于SuEXEC的需要,必须将extmail的cgi目录修改成vuser:

vgroup权限chown-Rvuser:

vgroup/var/www/extsuite/extmail/cgi/

[rtIs=ldcgi/di>!

XL-xt-K2t:

jcjLtcKjt409C120:

03

[roccElocalhontoxcmiil;tchcwn-Xvusor:

VQrro'j.p/var/www/os-suiTzc/QxrHiail/[roct£15calhoitextmil'+IsIdcoi/

2vugaryproiip409€Jani20:

住3

配置Extman(提供邮件网页后台管理功能)

chown-Rvuser:

vgroup/var/www/extsuite/extman/cgi/

链接基本库到Extmailmkdir/tmp/extman

chown-Rvuser:

vgroup/tmp/extman

数据库初始化

servicemysqldstart

导入mysql数据库结构及初始化数据(如果前面没有更改mysql密码的话,root密码默认为

空)

mysql-uroot-p

3LjlL1]]jMySQL:

[hquLQI—IhuutfrcotOlocalbost1■sql

Znzarpasmwurd:

rrootRlocalhcstq丄

inT&rpassword;Iroc七@1auaLhojfe

extma-illt

chkeenfigniyi今丄诅oil

-ureel,-p<“Jvti/wXtW-

niysql-urnct-p

注:

上述导入初始化SQL时,

uid/gid一致,是因为maildrop投递时会从数据库里取uidnumber/gidnumber

义好了投递时的运行身份(vuser:

vgroup),所以这两个字段的内容必须为现投递错误,例如报0X06等错误。

默认的uidnumber/gidnumber都是1000,这和

vuser:

vgroup的

,而在里已经定

1000,否则将出

设置虚拟域和虚拟用户的配置文件

cd/var/www/extsuite/extman/docs

cp

/etc/postfix/

cp

/etc/postfix/

cp

/etc/postfix/

cp

/etc/postfix/

配置

vi/etc/postfix/

增加以下内容:

#extmailconfigherevirtual_alias_maps=mysql:

/etc/postfix/virtual_mailbox_domains=mysql:

/etc/postfix/virtual_mailbox_maps=mysql:

/etc/postfix/virtual_transport=maildrop:

测试authlib

/usr/sbin/authtest-sloginextmail

 

结果如下:

Authenticationsucceeded.

Authenticated(uid1000,gid1000)

HomeDirectory:

/home/domains/postmaster

Maildir:

/home/domains/postmaster/Maildir/

Quota:

0S

EncryptedPassword:

$1$phz1mRrj$3ok6BjeaoJYWDBsEPZb5C0

CleartextPassword:

extmail

Options:

(none)

这样表明ExtMan的正确安装,数据库也正确导入,courier-authlib能正确连接到mysql数据库最后访问,如无意外,将看到webmail的登陆页,不过此时还没有加正式的用户,所以不能登陆,包括也不行。

必须要登陆到里增加一个新帐户才能登陆。

ExtMan的默认超级管理员帐户,初始密码:

extmail*123*,登陆成功后,建议将密码修改,以确保安全。

这时候我们新建立个用户,密码为test

为后面的实验做准备。

配置Extman后台的图形化日志功能启动mailgraph_ext

/usr/local/mailgraph_ext/mailgraph-initstart

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

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

加入开机自启动:

echo"/usr/local/mailgraph_ext/mailgraph-initstart">>/etc/echo"/var/www/extsuite/extman/daemon/cmdserver-v-d">>/etc/

配置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:

servicecourier-imapstart

为了下面的测试,请先启动httpdpostfix

测试POP3是否正常工作。

(请首先登录extman自行建立用户,密码:

test)

下面蓝色部分是输入内容

telnetlocalhost110

Tryingtocharacteris'人]'.

+OKHellothere.

user

+OKPasswordrequired.passtest

+OKloggedin.

list+OKPOP3clientsthatbreakhere,theyviolateSTD53.

quit

+OKBye-bye.

配置cyrus-sasl(SMTP认证)

注:

由于系统cyrus-sasl默认没有打开authdaemon的支持,为了使用集中认证的authlib,必须打开这个支持。

为此我们必须删除系统的cyrus-sasl相关的所有软件包,替换成打开了

authdaemon支持的sasl软件包(也就是EMOS中的软件包)。

配置cyrus-sasl

Postfix的SMTP认证需要透过Cyrus-SASL连接到authdaemon获取认证信息。

vi/etc/postfix/增加如下内容:

#smtpdrelatedconfigsmtpd_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,

#SMTPsenderloginmatchingconfigsmtpd_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:

/etc/postfix/

#SMTPAUTHconfigherebroken_sasl_auth_clients=yessmtpd_sasl_auth_enable=yessmtpd_sasl_local_domain=$myhostnamesmtpd_sasl_security_options=noanonymous

编辑文件

vi/usr/lib/sasl2/

将其内容改为:

pwcheck_method:

authdaemondlog_level:

3mech_list:

PLAINLOGINauthdaemond_path:

/var/spool/authdaemon/socket

重新启动postfix:

servicepostfixstart

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

当前位置:首页 > 高中教育 > 理化生

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

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