使用OpenLDAP搭建Postfix邮件系统.docx

上传人:b****6 文档编号:8683772 上传时间:2023-02-01 格式:DOCX 页数:19 大小:22.59KB
下载 相关 举报
使用OpenLDAP搭建Postfix邮件系统.docx_第1页
第1页 / 共19页
使用OpenLDAP搭建Postfix邮件系统.docx_第2页
第2页 / 共19页
使用OpenLDAP搭建Postfix邮件系统.docx_第3页
第3页 / 共19页
使用OpenLDAP搭建Postfix邮件系统.docx_第4页
第4页 / 共19页
使用OpenLDAP搭建Postfix邮件系统.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

使用OpenLDAP搭建Postfix邮件系统.docx

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

使用OpenLDAP搭建Postfix邮件系统.docx

使用OpenLDAP搭建Postfix邮件系统

使用OpenLDAP搭建Postfix邮件系统

一、系统环境及本文用到相关软件及下载地址

1、系统环境

Linux系统版本:

CentOSrelease5.2(Final)

内核版本:

2.6.18-92.el5

二、.卸载sendmail

#killallsendmail

#rpm-e--nodepssendmail

三、定义yum的非官方库

#vi/etc/yum.repos.d/dag.repo

[dag]

name=DagRPMRepositoryforRedHatEnterpriseLinux

baseurl=http:

//apt.sw.be/redhat/el$releasever/en/$basearch/dag

gpgcheck=1

enabled=1

gpgkey=

四、开始安装

1、增加系统相关用户:

#groupaddpostfix

#useradd-gpostfix-M-s/bin/falsepostfix

#groupaddpostdrop

#groupaddvmail-g1000

#useradd-u1000-g1000-M-s/sbin/nologin-d/dev/nullvmail

2、安装Apache、PHP(如果在安装系统的时候已经安装过了,可以不用做此步骤)

#yum-yinstallhttpdphpphp-mysqlphp-gdphp-imapphp-mbstringphp-ldap

3、安装相关依赖关系包

#yum-yinstallperl-Unix-Syslogperl-GD\

perl-Digest-SHA1perl-Digest-HMACperl-Net-IP\

perl-Net-DNSperl-Time-HiResperl-HTML-Tagset\

perl-HTML-Parserperl-libwww-perlperl-IO-stringy\

perl-IO-Multiplexperl-Net-SSLeay-1.30perl-IO-Socket-SSL\

perl-Net-Serverperl-TimeDateperl-MailTools\

perl-MIME-Base64perl-Convert-BinHexperl-MIME-tools\

perl-Convert-TNEFperl-Convert-UUlib\

perl-Compress-Zlibperl-Archive-Zipperl-IO-Zlib\

perl-Archive-Tararc-5.21ozoo-2.10unarj

4、增加LDAP服务器记录:

这两台记录其实是LDAP客户端查询LDAP服务器的记录,在客户端的设置文件中(ldap.conf)会用到这些记录,当然,你可以更改成其它任何的名称,如果所有的软件都是安装在同一台服务器上的话,IP地址可以设成127.0.0.1,我这里设置的是实际的地址.

#echo"192.168.254.162">>/etc/hosts

#echo"192.168.254.162ldap-">>/etc/hosts

5、安装OpneLDAP:

你可以通过两种方式来安装,第一种是在安装系统是自已就安装了,你如果认为它的版本太低了,可以通过YUM的方式升级一下,也可以通过源代码的方式安装,我这里是通过YUM的方式升级了一下,如果通过源代码安装的话,那后面的一些组件的安装时就需要注意一下路径了.

#yuminstallopenldap*

6、配置OpenLDAP:

配置LDAP需要用到extman中的schema文件,所以要先复制extman中的对于LDAP支持的schema文件到相应的地方.具体的操作如下:

#tarzxfextman-1.1.tar.gz

#cdextman-1.1/docs

#cp./extmail.schema/etc/openldap/schema/

#vi/etc/openldap/slapd.conf

更改以下内容:

include/etc/openldap/schema/extmail.schema

suffix"dc=otnet.org"

rootdn"cn=Manager,dc=otnet.org"

rootpw{MD5}7tjNxADf1OyF3/cKFwBmtw==#注:

这里用名文秘密的时候在初始化的时候可能会出错,建议用加密的密码。

这里的rootpw後面的是使用slappasswd生成的密码,默认是使用SSHA这个加密算法的:

可以用-h参数指定slappasswd使用其它的加密算法。

比如:

#slappasswd-h{MD5}

Newpassword:

Re-enternewpassword:

{MD5}7tjNxADf1OyF3/cKFwBmtw==

7、配置LDAP客户端文件:

  这个文件的目的是为了客户端在执行查询或其它相关操作时能找到相应的服务器,如果没这个设置,可能会出现找不到LDAP这样的错误.

#vi/etc/openldap/ldap.conf

HOST127.0.0.1

BASEdc=otnet.org

URIldap:

//mail.otnet.orgldap:

//mail.otnet.org:

389

SIZELIMIT12

TIMELIMIT15

DEREFnever

8、启动LDAP:

#serviceldapstart

#cp/etc/openldap/DB_CONFIG.example/var/lib/ldap/DB_CONFIG

9、修改并导入初始化文件:

#viextman-1.1/docs/init.ldif#extman的初始化文件

将原有的extmail.org替换为otnet.org

#ldapadd-x-D"cn=Manager,dc=otnet.org"-W-fextman/docs/init.ldif

10、配置apache

编辑httpd.conf文件:

#vi/etc/httpd/conf/httpd.conf

在最后一行加上:

NameVirtualHost*:

80

Includeconf/vhost_*.conf

编辑vhost_extmail.conf

#vi/etc/httpd/conf/vhost_extmail.conf

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

#VirtualHostforExtMailSolution

80>

ServerNamemail.otnet.org

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/phpldapadmin/var/www/extsuite/phpldapadmin/htdocs/

#Suexecconfig

SuexecUserGroupvmailvmail

设置apache开机启动

#chkconfighttpdon

11、安装ExtMail

建立/var/www/extsuite并复制源码到该目录,相关命令:

#mkdir/var/www/extsuite

#tarzxfextmail-1.2.tar.gz

#cp-rextmail-1.2/var/www/extsuite/extmail

#cd/var/www/extsuite/extmail

#cpwebmail.cf.defaultwebmail.cf

#viwebmail.cf

主要变动的内容见下:

SYS_MYSQL_USER=extmail

SYS_MYSQL_PASS=extmail

SYS_MYSQL_DB=extmail

SYS_AUTH_TYPE=ldap

SYS_SPAM_REPORT_ON=1

SYS_DEBUG_ON=0

SYS_LDAP_PASS=ffffff

SYS_LDAP_BASE=o=extmailAccount,dc=otnet.org

SYS_LDAP_RDN=cn=Manager,dc=otnet.org

SYS_G_ABOOK_LDAP_BASE=ou=AddressBook,dc=otnet.org

SYS_G_ABOOK_LDAP_ROOTDN=cn=Manager,dc=otnet.org

SYS_SESS_DIR=/var/www/extsuite/extmail/tmp

SYS_UPLOAD_TMPDIR=/var/www/extsuite/extmail/tmp

SYS_AUTHLIB_SOCKET=/usr/local/courier-authlib/var/spool/authdaemon/socket

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

vmail权限:

#chown-Rvmail:

vmail/var/www/extsuite/extmail/cgi/

#mkdir/var/www/extsuite/extmail/tmp

#chown-Rvmail:

vmail/var/www/extsuite/extmail/tmp

12、安装ExtMan

#cp-rextman-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_SESS_DIR=/var/www/extsuite/extman/tmp

SYS_BACKEND_TYPE=ldap

SYS_LDAP_BASE=dc=otnet.org

SYS_LDAP_RDN=cn=Manager,dc=otnet.org

SYS_LDAP_PASS=ffffff

SYS_GROUPMAIL_SENDER=postmaster@otnet.org

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

vmail权限:

#chown-Rvmail:

vmail/var/www/extsuite/extman/cgi/

链接基本库到Extmail

#mkdir/var/www/extsuite/extman/tmp

#chown-Rvmail:

vmail/var/www/extsuite/extman/tmp

建立刚才导入mysql的postmaster@otnet.org帐户的Maildir,请输入如下命令:

#cd/var/www/extsuite/extman/tools

#./maildirmake.pl/home/domains/otnet.org/postmaster/Maildir

#chown-Rvmail:

vmail/home/domains

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

#cd/var/www/extsuite/extman/docs

#cpldap_virtual_alias_maps.cf/etc/postfix/

#cpldap_virtual_domains_maps.cf/etc/postfix/

#cpldap_virtual_mailbox_maps.cf/etc/postfix/

#cpldap_virtual_sender_maps.cf/etc/postfix/

#vi/etc.postfix/ldap_virtual_alias_maps.cf

更改文件extmail.org为otnet.org,其它几个文件一样,这里以些文件为例:

search_base=o=extmailAlias,dc=otnet.org

13、安装BerkeleyDB:

#tarzxfdb-5.1.19.NC.tar.gz

#cddb-5.1.19.NC

#./dist/configure--prefix=/usr/local/BerkeleyDB

#make

#makeinstall

#mv/usr/include/db4/usr/include/db4.off

#rm-rf/usr/include/db_cxx.h

#rm-rf/usr/include/db.h

#rm-rf/usr/include/db_185.h

#ln-sv/usr/local/BerkeleyDB/include/usr/include/db4

#ln-sv/usr/local/BerkeleyDB/include/db.h/usr/include/db.h

#ln-sv/usr/local/BerkeleyDB/include/db_cxx.h/usr/include/db_cxx.h

#echo"/usr/local/BerkeleyDB/lib">>/etc/ld.so.conf

#ldconfig

14、安装CouerieAuthlib:

#wget

#tarjxfcourier-authlib-0.63.0.tar.bz2

#cdcourier-authlib-0.63.0

#./configure\

--prefix=/usr/local/courier-authlib\

--sysconfdir=/etc\

--with-authldaprc=/etc/authlib/authldaprc\

--with-mailuser=vmail\

--with-mailgroup=vmail\

--without-stdheaderdir\

--without-authuserdb\

--without-authpam\

--without-authmysql\

--without-authpwd\

--without-authshadow\

--without-authvchkpw\

--without-authpgsql\

--without-authcustom\

--with-redhat

#make

#makeinstall

#makeinstall-configure

#echo"/usr/local/courier-authlib/lib/courier-authlib">>/etc/ld.so.conf#make

#ldconfig

#cpcourier-authlib.sysvinit/etc/init.d/courier-authlib

#chmod755/etc/init.d/courier-authlib

#chkconfig--addcourier-authlib

#chkconfig--level2345courier-authlibon

#servicecourier-authlibstart

#chmod+x/usr/local/courier-authlib/var/spool/authdaemon/

15、设置配置文件authdaemonrc:

#vi/etc/authlib/authdaemonrc

authmodulelist="authldap"

authmodulelistorig="authldap"

authdaemonvar=/usr/local/courier-authlib/var/spool/authdaemon

DEFAULTOPTIONS="wbnodsn=1"

16、配置authldaprc:

#vi/etc/authlib/authldaprc

清空内容,并输入下面内容:

LDAP_URIldap:

//127.0.0.1:

389

LDAP_PROTOCOL_VERSION3

LDAP_BASEDNo=extmailAccount,dc=otnet.org

LDAP_BINDDNcn=Manager,dc=otnet.org

LDAP_BINDPW{MD5}7tjNxADf1OyF3/cKFwBmtw==

LDAP_TIMEOUT5

LDAP_MAILmail

LDAP_FILTER(&(objectClass=extmailUser)(active=1))

LDAP_HOMEDIRhomeDirectory

LDAP_MAILROOT/home/domains

LDAP_MAILDIRmailmessageStore

LDAP_MAILDIRQUOTAquota

LDAP_CRYPTPWuserPassword

LDAP_UIDuidNumber

LDAP_GIDgidNumber

LDAP_AUXOPTIONSdisablesmtpd=disablesmtpd,disablesmtp=disablesmtp,disablewebmail=disablewebmail,disablenetdisk=disablenetdisk,disableimap=disableimap,disablepop3=disablepop3

LDAP_DEREFnever

LDAP_TLS0

LDAP_DOMAINotnet.org

17、安装cyrus-sasl

#mv/usr/lib/sasl2/usr/lib/sasl2.OFF

#wgetftp:

//ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-sasl-2.1.23.tar.gz

#tarzxfcyrus-sasl-2.1.23.tar.gz

#cdcyrus-sasl-2.1.23

#./configure--prefix=/usr--sysconfdir=/etc\

--disable-anon-enable-plain--enable-login\

--enable-ldapdb–with-ldap\

--with-authdaemond=/usr/local/courier-authlib/var/spool/authdaemon/socket

#make

#makeinstall

18、配置SASL文件

#vi/usr/lib/sasl2/smtpd.conf

确保其内容为:

pwcheck_method:

authdaemond

log_level:

3

mech_list:

PLAINLOGIN

authdaemond_path:

/usr/local/courier-authlib/var/spool/authdaemon/socket

19、安装Postfix:

#wget

#tarzxfpostfix-2.6.8.tar.gz

#cdpostfix-2.6.8

#maketidy

#makemakefiles"CCARGS=-DHAS_LDAP-I/usr/include-DUSE_SASL_AUTH-DUSE_CYRUS_SASL\

-I/usr/include/sasl-I/usr/local/BerkeleyDB/include-DUSE_TLS-I-DUSE_TLS\

-I/usr/include/openssl"\

"AUXLIBS=-L/usr/lib-lldap-llber-L/usr/lib-lsasl2\

-L/usr/local/BerkeleyDB/lib-L/usr/lib-lssl-lcrypto"

#make

#makeinstall

按照以下的提示输入相关的路径([]号中的是缺省值,”]”后的是输入值)

install_root:

[/]

tempdir:

[/opt/postfix-2.6.8]/tmp

config_directory:

[/etc/postfix]

command_directory:

[/usr/sbin]

daemon_directory:

[/usr/libexec/postfix]

data_directory:

[/var/lib/postfix]

html_directory:

[no]

mail_owner:

[postfix]

mailq_path:

[/usr/bin/mailq]

manpage_directory:

[/usr/local/man]

newaliases_path:

[/usr/bin/newaliases]

queue_directory:

[/var/spool/postfix]

readme_directory:

[no]

sendmail_path:

[/usr/sbin/sendmail]

setgid_group:

[postdrop]

#newaliases

20、安装maildrop

将courier-authlib的头文件及库文件链接至/usr目录(编译maildrop时会到此目录下找此些

相关的文件):

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

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

maildrop需要pcre的支持,因此,接下来将首先安装pcre

#wget

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

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

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

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