本系统是在centos 4系列上安装的  在5上安装有些包编译报错

groupadd -g 1001 vmail

groupadd postfix

groupadd postdrop

useradd vmail -g vmail -u 1001

useradd postfix -g postfix


#tar zxvf db-4.2.52.tar.gz

#cd db_4.2.25

# cd build_unix/

# ../dist/configure

# make

# make install

   echo "/usr/local/BerkeleyDB4.2/lib" >>/etc/ld.so.conf


ldconfig -v


安装openldap

#tar zxvf openldap-2.3.21.tgz

#cd openldap-2.3.21

# # env CPPFLAGS="-I/usr/local/BerkeleyDB.4.2/include" LDFLAGS="-L/usr/local/BerkeleyDB.4.2/lib" ./configure --prefix=/usr/local/openldap --enable-ldbm

#make depend

#make

#make test

#make install

如果没报错,那就是安装完,

echo /usr/local/openldap/lib >> /etc/ld.so.conf

 ldconfig -v

vi /usr/local/openldap/etc/openldap/slapd.conf

include         /usr/local/openldap/etc/openldap/schema/core.schema

include         /usr/local/openldap/etc/openldap/schema/cosine.schema

include         /usr/local/openldap/etc/openldap/schema/dyngroup.schema

include         /usr/local/openldap/etc/openldap/schema/inetorgperson.schema

include         /usr/local/openldap/etc/openldap/schema/java.schema

include         /usr/local/openldap/etc/openldap/schema/misc.schema

include         /usr/local/openldap/etc/openldap/schema/nis.schema

include         /usr/local/openldap/etc/openldap/schema/openldap.schema

include         /usr/local/openldap/etc/openldap/schema/jamm.schema

database        bdb

suffix          "dc=test,dc=com"

rootdn          "cn=Manager,dc=test,dc=com"

rootpw          qwe123

index   objectClass     pres,eq

index   mail,cn         eq,sub

启动ldap 服务:


/usr/local/openldap/libexec/slapd -d 256  

启动openldap

# /usr/local/openldap/libexec/slapd


openldap的关闭

使用命令:

ps -ef |grep slapd


然后执行:

killall slapd


 到现在openldap已经配置完成了,进入安装目录的libexec下,执行

 #./slapd (注意是slapd,不是sldap)

netstat -an | grep 389  查看下端口起来了没有

安装cyrus-sasl


tar -zxvf cyrus-sasl-2.1.21.tar.gz

cd cyrus-sasl-2.1.21

 ./configure --prefix=/usr/local/sasl --enable-plain \

--enable-digest --disable-anon --enable-krb4 --enable-ntlm  \

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

--with-ldap=/usr/loca/openldap  --enable-ldapdb --enable-passdss  --enable-login \

--enable-plain --enable-pwcheck

make

make install

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

 ln -sv /usr/local/sasl/lib/* /usr/lib

 ln -sv /usr/local/sasl/lib/sasl2  /usr/lib

ln -sv /usr/local/sasl/lib/* /usr/local/lib

 ln -sv /usr/local/sasl/include/sasl/* /usr/local/include

ln -sv /usr/local/sasl/include/sasl/* /usr/include

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


echo "/usr/local/sasl/lib/sasl2/" >> /etc/ld.so.conf

   echo "/usr/local/sasl/sbin/saslauthd -a shadow ldap -O /etc/saslauthd.conf">/etc/rc.local

   /usr/local/sasl/sbin/saslauthd -v

   vi /usr/local/sasl/lib/sasl2/smtpd.conf

authdaemond_path:/usr/local/authlib/var/spool/authdaemon/socket

pwcheck_method:authdaemond

mech_list: PLAIN LOGIN

log_level: 3




安装courier-authlib

tar -jxvf courier-authlib-0.58.tar.bz2

 cd courier-authlib-0.58

./configure --with-redhat --with-authldap=yes --with-mailuser=vmail --with-mailgroup=vmail \

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

--prefix=/usr/local/authlib --without-stdheaderdir

make

make install

 make install-configure

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

 ldconfig -v

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

cp courier-authlib.sysvinit /etc/init.d/courier-authlib

 chmod 755 /etc/init.d/courier-authlib

 chkconfig --add courier-authlib

 chkconfig --level 35 courier-authlib on


chmod 755  /usr/local/authlib/var/spool/authdaemon




vi /etc/authlib/authdaemonrc

    authmodulelist="authldap"

    authmodulelistorig="authldap"

    DEBUG_LOGIN=2

配置authldaprc

vi /etc/authlib/authldaprc

LDAP_URI                ldap://127.0.0.1

LDAP_PROTOCOL_VERSION   3

LDAP_BASEDN             dc=test,dc=com

LDAP_BINDDN             cn=manager,dc=test,dc=com

LDAP_BINDPW             qwe123

LDAP_TIMEOUT            5

LDAP_MAIL               mail

LDAP_DOMAIN             test.com

LDAP_GLOB_UID           vmail

LDAP_GLOB_GID           vmail

LDAP_HOMEDIR            homeDirectory

LDAP_MAILDIR            mailbox

LDAP_DEFAULTDELIVERY    defaultDelivery

LDAP_MAILDIRQUOTA       quota

LDAP_FULLNAME           cn

LDAP_CRYPTPW            userPassword

LDAP_DEREF              never

LDAP_TLS                0

service courier-authlib start

Apache 安装

tar jxvf httpd-2.2.8.tar.bz2

 cd httpd-2.2.8

 ./configure --prefix=/usr/local/apache --enable-so --enable-ssl --enable-track-vars \

--enable-rewrite --with-zlib --enable-suexec --with-suexec-caller=daemon



 make

 make install

启动apache:

/usr/local/apache/bin/apachectl start

安装php

tar -jxvf php-5.2.4.tar.bz2

 cd php-5.2.4

./configure --prefix=/usr/local/php5 --with-apxs2=/usr/local/apache/bin/apxs \

--with-ldap=/usr/local/openldap --with-gettext

make

make test

make install

 cp php.ini-dist /usr/local/php5/lib/php.ini

vi /usr/local/php5/lib/php.ini  

找到

;default_charset = "iso-8859-1"  

在这行下面加一行  

default_charset = "gbk"  


# vi /usr/local/apache/conf/httpd.conf  

加两行

AddType application/x-httpd-php .php  

AddType application/x-httpd-php-source .phps  

找到下面一行在后面加上index.php,这表示网站的默认页也能够为index.php,

DirectoryIndex index.html  index.php  


<?php

phpinfo();

?>

安装postfix

tar -zxvf postfix-2.4.11.tar.gz

cd postfix-2.4.11

make makefiles CCARGS="-I/usr/local/openldap/include -I/usr/local/sasl/include/sasl \

 -DUSE_CYRUS_SASL   -DHAS_LDAP -DUSE_SASL_AUTH"  AUXLIBS="-L/usr/local/openldap/lib \

-L/usr/local/sasl/lib -lsasl2 -lldap -llber"

make

make install 一路回车下去


安装Courier-imap

tar -jxvf courier-imap-4.1.2.tar.bz2

cd courier-imap-4.1.2

./configure --prefix=/usr/local/imap -with-redhat --disable-root-check --sysconfdir=/etc \

--enable-unicode=utf-8,iso-8859-1,gb2312,gbk,gb18030 \

--with-trashquota  --with-dirsync  

make

make install-strip

make install-configure

cp courier-imap.sysvinit /usr/local/imap/sbin/imapd

chmod +x /usr/local/imap/sbin/imapd

/usr/local/imap/sbin/imapd start

vi /etc/pop3d

POP3DSTART=YES //启动pop3功能

# vi /etc/imapd

将IMAPDSTART=NO改为IMAPDSTART=YES


让imap自启动:

# cp courier-imap.sysvinit /etc/rc.d/init.d/courier-imap

# chmod 755 /etc/rc.d/init.d/courier-imap

# chkconfig --level 35 courier-imap on

手动启动服务:

# /usr/local/imap/libexec/pop3d.rc start

# /usr/local/imap/libexec/imapd.rc start

检查进程:

# pstree |grep courier  

init-+-2*[courierlogger---couriertcpd]

    |-courierlogger---authdaemond---5*[authdaemond]






安装Courier-maildrop


tar jxfv pcre-7.7.tar.bz2

cd pcre-7.7

./configure --prefix=/usr/

make

make install

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

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


tar jxfv maildrop-2.0.2.tar.bz2

cd maildrop-2.0.2

./configure --prefix=/usr/local/maildrop \

--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

cp /usr/local/maildrop/bin/maildrop /usr/bin

chmod a+rx /usr/bin/maildrop

/usr/local/maildrop/bin/maildrop -v  Authentication Library extension enabled.



http.conf的配置

Alias /api "/www/api/www/htdocs"

<Directory "/www/api/www/htdocs/">

Options Indexes MultiViews

 AllowOverride None

Order allow,deny

Allow from all

</Directory>

Alias /ldap "/www/ldap/www/htdocs/ldapadmin"

<Directory "/www/ldap/www/htdocs/ldapadmin">

Options Indexes MultiViews

 AllowOverride None

Order allow,deny

Allow from all

</Directory>

Alias /webmail "/www/mail/www/htdocs"

<Directory "/www/mail/www/htdocs/">

Options Indexes MultiViews

 AllowOverride None

Order allow,deny

Allow from all

</Directory>