Ê×Ò³ | Óʼþ×ÊѶ | ¼¼Êõ½Ì³Ì | ½â¾ö·½°¸ | ²úÆ·ÆÀ²â | ÓʼþÈ˲Š| Óʼþ²©¿Í | ÓʼþϵͳÂÛ̳ | Èí¼þÏÂÔØ | ÓʼþÖÜ¿¯ | ÈȵãרÌâ | ¹¤¾ß
ÍøÂç¼¼Êõ | ²Ù×÷ϵͳ | Óʼþϵͳ | ¿Í»§¶Ë | µç×ÓÓÊÏä | ·´À¬»øÓʼþ | Óʼþ°²È« | ÓʼþÓªÏú | ÒÆ¶¯µçÓÊ | ÓʼþÈí¼þÏÂÔØ | µç×ÓÊéÏÂÔØ

Óʼþ·þÎñÆ÷

¼¼ÊõÇ°ÑØ | Exchange | Domino | Sendmail | Postfix | Qmail | IMail | MDaemon | Foxmail | James | Kerio | JavaMail | WinMail | Winwebmail | Merak | CMailServer | ½ðµÑ | ÆäËü | ÓʼþÓ뿪·¢ |
Ê×Ò³ > Óʼþ·þÎñÆ÷ > Qmail > Qmail+LDAP°²×°ÅäÖÃʵÀý > ÕýÎÄ

Qmail+LDAP°²×°ÅäÖÃʵÀý

³ö´¦£ºÎ´Öª ×÷ÕߣºÎ´Öª ʱ¼ä£º2005-8-25 13:21:00

Ä¿Ç°ÍøÉϹØÓÚqmail+LDAPµÄÅäÖò»ÊǺܶ࣬¶øÇÒ´ó¶àÊýÊÇÓ¢Îĵġ£¶øqmailºÍopenldapµÄÅäÖÃûÓÐÏêϸµÄÅäÖÃÎĵµ¡£Ç°Ò»¶Îʱ¼äÒòΪ¹¤×÷¹ØÏµÅäÖÃÁËqmail+LDAPµÄ·þÎñÆ÷¡£ÏÖÔÚ½«ÆäÕûÀí´¦Àí£¬ÒÔ¹©´ó¼Ò²Î¿¼¡£Ï£Íû¶ÔÓÚ´ó¼ÒÓÐËù°ïÖú¡£
Qmail ÊÇ»ùÓÚÀàËÆUNIX²Ù×÷ϵͳµÄInternet Mail Transfer Agent (MTA) ¡£Îҵݲװ»·¾³ÊÇlinux7.1 ÄÚºËÊÇ2.4.2£¬gcc version 2.96,×é¼þÈ«²¿°²×°¡£
°²×°²½Öè
1£®²Ù×÷ϵͳ£º
Red Hat Linux 7.1 kernel 2.4.2 gcc 2.96
2.ËùÐèÈí¼þ°ü£º
qmail-1.03.tar.gz £¨http://www.qmail.org£©
ucspi-tcp-0_88_tar.gz £¨http://cr.yp.to/ucspi-tcp.html£©
checkpassword-0_90_tar.gz £¨http://cr.yp.to/checkpwd.html£©
qmail-ldap-1_03-20010301_patch.gz £¨http://www.nrg4u.com/£©
openldap-2_0_7.tgz £¨http://www.openldap.org£©
daemontools, ftp://cr.yp.to/daemontools/daemontools-0.70.tar.gz
3.Ö÷»úIPµØÖ·ºÍÓòÃûÅäÖã¬ÔÚ±¾ÀýÖÐΪ£º
IP£º172.18.6.111
ÓòÃû£ºlongshine.com
4£® System requirements
5. °²×°²½Öè
½«ËùÓÐÐèÒª°²×°µÄ°ü¿½±´µ½/usr/local/src/qmailĿ¼ÏîÄ¿
mkdir -p /usr/local/src/qmail
mv *.tar.gz /usr/local/src/qmail
È»ºó½â¿ª°²×°ÏÂÃæ²½Öè½â¿ªÕâЩ°ü
su -
umask 022
cd /usr/local/src/qmail
tar zxvf qmail-1.03.tar.gz
tar xvf ucspi-tcp-0.88.tar.gz
tar zxvf daemontools-0.70.tar.gz
tar zxvf checkpassword-0.90.tar.gz
½â¿ªµÄÊý¾Ý°üÓ¦¸Ã´¦ÔÚqmail-1.03, ucspi-tcp-0.88, daemontools-0.70ºÍcheckpassword-0.90Ŀ¼Ï£¬½øÈëqmailĿ¼¡£
cd qmail-1.03
½¨Á¢ÏàÓ¦µÄ°²×°Ä¿Â¼
ÓÉÓÚqmail°²×°³ÌÐò»á²úÉúÆäÐèÒªµÄ×ÓĿ¼£¬ËùÒÔÖ»ÒªÉú³É°²×°ËùÐèµÄ"home" Ŀ¼£º
mkdir /var/qmail
ln -s /usr/man /var/qmail/man
mkdir /etc/qmail
ln -s /etc/qmail /var/qmail/control
ln -s /usr/sbin /var/qmail/bin
Éú³Éqmail°²×°ÐèÒªµÄÓû§ÒÔ¼°×é
# groupadd nofiles
# useradd -g nofiles -d /var/qmail/alias alias
# useradd -g nofiles -d /var/qmail qmaild
# useradd -g nofiles -d /var/qmail qmaill
# useradd -g nofiles -d /var/qmail qmailp
# groupadd qmail
# useradd -g qmail -d /var/qmail qmailq
# useradd -g qmail -d /var/qmail qmailr
# useradd -g qmail -d /var/qmail qmails
±àÒë°²×°
ÏÖÔÚ¿ÉÒÔ±àÒë°²×°qmail£º
make setup check
ÔÚ±àÒë°²×°Íê³É£¬ÐèÒª½øÐÐÅäÖÃÈç¹ûDNSÅäÖÃÕýÈ·£¬Ö»ÐèÖ´ÐÐÏÂÃæµÄÃüÁ
./config
Èç¹ûconfigÔÚDNSÖв»ÄÜÕÒµ½Ö÷»úÃû£¬ÔòÐèÒªÖ´ÐÐconfig-fast ½Å±¾£º
./config-fast longshine. com
qmail ÏÖÔÚÒѾ­°²×°ÆðÀ´ÁË£¬ÏÂÃæ¿ªÊ¼ÊÇÆô¶¯ºÍÅäÖÃqmail¡£
°²×° ucspi-tcp
½øÈë ucspi-tcp Ŀ¼£º
cd /usr/local/src/qmail/ucspi-tcp-0.88
make
make setup check
ÕâÑùucspi-tcp °²×°ÆðÀ´ÁË¡£
°²×°daemontools
½øÈë daemontools Ŀ¼£º
cd /usr/local/src/qmail/daemontools-0.70
make
make setup check
°²×°checkpassword
½øÈë checkpassword Ŀ¼£º
cd /usr/local/src/qmail/checkpassword-0.90
make
make setup check
×¢£º ÔÚijЩLINUX°æ±¾ÖÐ(Îҵݲװ»·¾³redhat 7.1)£¬ ÈçRed Hat 7£¬¿ÉÄÜÔÚ±àÒë¹ý³ÌÖлáÉú³É´íÎó£º
./compile tai64nlocal.c
tai64nlocal.c: In function `main':
tai64nlocal.c:54: warning: assignment makes pointer from integer without a cast
tai64nlocal.c:55: dereferencing pointer to incomplete type
µÈµÈ¡­.
Èç¹ûÕâÑù°´ÕÕÏÂÃæËµÃ÷±à¼­tai64nlocal.c
#include
¸ü¸ÄΪ£º
#include
Éú³É/service Ŀ¼£º
mkdir /service
×îºóÅäÖÃsvscan ʹµÃµ±ÏµÍ³Æô¶¯Ê±ºò×Ô¶¯ÔÊÐí¡£±à¼­ /etc/inittab Îļþ½«ÏÂÃæÒ»ÐмÓÈëÎļþ×îºó£¨×¢ÒâÊÇÔÚÒ»ÐÐÖУ©£º
SV:123456:respawn:env - PATH=/usr/local/bin:/usr/sbin:/usr/bin:/bin svscan /service /dev/console 2>/dev/console
È»ºóÖ´ÐÐÏÂÃæÃüÁîÖØÐ¶ÁÈË/etc/inittab:
kill -HUP 1
¿ÉÒÔʹÓÃ"ps -ef | grep svscan" »òÕß "ps waux | grep svscan" ֤ʵsvscan ÕýÔÚÔËÐС£
Æô¶¯qmail
2.8.1. /var/qmail/rc
±à¼­²úÉú/var/qmail/rcÎļþ½«ÏÂÃæÃüÁî½øÈëÆäÖÐ
#!/bin/sh
# Using stdout for logging
# Using control/defaultdelivery from qmail-local to deliver messages by default
exec env - PATH="/var/qmail/bin:$PATH"
qmail-start "`cat /var/qmail/control/defaultdelivery`"
chmod 755 /var/qmail/rc
mkdir /var/log/qmail
¡¡ÔÚqmailÖУ¬Ö§³ÖÈýÖÖÓʼþ´æ´¢·½Ê½£¬·Ö±ðÊǵäÐ͵Ä/var/spool/mail·½Ê½¡¢´«Í³µÄUnix user/Mailbox·½Ê½ºÍÐ嵀 user/Maildir·½Ê½£¬ÆäÖÐǰÁ½ÖÖ·½Ê½Îª´ó¶àÊýµÄÓʼþ¿Í»§¶ËËùÖ§³Ö£¬µ«ÊÇËüÃǾù´æÔÚ°²È«ÉϵÄÒþ»¼£¬ËùÒÔÔÚÕâÀïʹÓÃÁ˵ÚÈýÖÖ·½Ê½£¬ÏÂÃæ·Ö±ðÐðÊöÈýÖÖ·½Ê½µÄ½¨Á¢·½·¨£º
¡¡¡¡/var/spool/mail ·½Ê½
¡¡¡¡#cp /var/qmail/boot/proc /var/qmail/rc
¡¡¡¡user/Mailbox ·½Ê½
¡¡¡¡#cp /var/qmail/boot/home /var/qmail/rc
¡¡¡¡user/Maildir ·½Ê½
¡¡¡¡1£©#cp /var/qmail/boot/home /var/qmail/rc
2£©½¨Á¢ÏàÓ¦µÄÓʼþÓû§£¬ÀýÈ磺
#useradd test
¡¡¡¡#passwd test
¡¡¡¡3£©Ê¹ÓÃqmailÌṩµÄ¹¤¾ß½¨Á¢Maildir£¬ÃüÁîÈçÏ£º
¡¡¡¡$ /var/qmail/bin/maildirmake Maildir
¡¡¡¡$ echo ./Maildir/ >.qmail
¡¡¡¡(×¢ÒâÕâÀï±ØÐëÒÔÓû§È¨ÏÞ½¨Á¢ÓÊÏä)
¡¡¡¡4) ΪÁËʹrootÓû§Ò²ÄÜÊÕ·¢Óʼþ£¬Ê¹ÓÃÈçÏÂÃüÁ
¡¡¡¡# su alias
¡¡¡¡$ cd
¡¡¡¡$ /var/qmail/bin/maildirmake Maildir
¡¡¡¡$ echo ./Maildir/ >.qmail
# echo ./Mailbox/ >/var/qmail/control/defaultdelivery
ϵͳstart-up Îļþ
Éú³Éqmailctl ½Å±¾
#!/bin/sh
# For Red Hat chkconfig
# chkconfig: - 30 80
# description: the qmail MTA
PATH=/var/qmail/bin:/bin:/usr/bin:/usr/local/bin:/usr/local/sbin
export PATH
QMAILDUID=`id -u qmaild`
NOFILESGID=`id -g qmaild`
case "$1" in
start)
echo "Starting qmail"
if svok /service/qmail-send ; then
svc -u /service/qmail-send
else
echo qmail-send service not running
fi
if svok /service/qmail-smtpd ; then
svc -u /service/qmail-smtpd
else
echo qmail-smtpd service not running
fi
if [ -d /var/lock/subsys ]; then
touch /var/lock/subsys/qmail
fi
;;
stop)
echo "Stopping qmail..."
echo " qmail-smtpd"
svc -d /service/qmail-smtpd
echo " qmail-send"
svc -d /service/qmail-send
if [ -f /var/lock/subsys/qmail ]; then
rm /var/lock/subsys/qmail
fi
;;
stat)
svstat /service/qmail-send
svstat /service/qmail-send/log
svstat /service/qmail-smtpd
svstat /service/qmail-smtpd/log
qmail-qstat
;;
doqueue|alrm|flush)
echo "Sending ALRM signal to qmail-send."
svc -a /service/qmail-send
;;
queue)
qmail-qstat
qmail-qread
;;
reload|hup)
echo "Sending HUP signal to qmail-send."
svc -h /service/qmail-send
;;
pause)
echo "Pausing qmail-send"
svc -p /service/qmail-send
echo "Pausing qmail-smtpd"
svc -p /service/qmail-smtpd
;;
cont)
echo "Continuing qmail-send"
svc -c /service/qmail-send
echo "Continuing qmail-smtpd"
svc -c /service/qmail-smtpd
;;
restart)
echo "Restarting qmail:"
echo "* Stopping qmail-smtpd."
svc -d /service/qmail-smtpd
echo "* Sending qmail-send SIGTERM and restarting."
svc -t /service/qmail-send
echo "* Restarting qmail-smtpd."
svc -u /service/qmail-smtpd
;;
cdb)
tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
chmod 644 /etc/tcp.smtp.cdb
echo "Reloaded /etc/tcp.smtp."
;;
help)
cat < stop -- stops mail service (smtp connections refused, nothing goes out)
start -- starts mail service (smtp connection accepted, mail can go out)
pause -- temporarily stops mail service (connections accepted, nothing leaves)
cont -- continues paused mail service
stat -- displays status of mail service
cdb -- rebuild the tcpserver cdb file for smtp
restart -- stops and restarts smtp, sends qmail-send a TERM & restarts it
doqueue -- sends qmail-send ALRM, scheduling queued messages for delivery
reload -- sends qmail-send HUP, rereading locals and virtualdomains
queue -- shows status of queue
alrm -- same as doqueue
flush -- same as doqueue
hup -- same as reload
HELP
;;
*)
echo "Usage: $0 {start|stop|restart|doqueue|flush|reload|stat|pause|cont|cdb|queue|help}"
exit 1
;;
esac

exit 0

´Ë½Å±¾¿ÉÒÔͨ¹ýhttp://www.lifewithqmail.org/qmailctl-script-dt70»ñµÃ
ʹÓÃvi Éú³É/var/qmail/bin/qmailctl»ù±¾½«ÉÏÃæÄÚÈÝ·ÅÈëÆäÖÐ, È»ºó½«Æä°²×°ÔÚ
/etc/init.d
/etc/rc.d/init.d
Ö´ÐÐÏÂÃæÃüÁ²úÉúÁ´½Ó£º
ln -s ../init.d/qmail /etc/rc0.d/K30qmail
ln -s ../init.d/qmail /etc/rc1.d/K30qmail
ln -s ../init.d/qmail /etc/rc2.d/S80qmail
ln -s ../init.d/qmail /etc/rc3.d/S80qmail
ln -s ../init.d/qmail /etc/rc4.d/S80qmail
ln -s ../init.d/qmail /etc/rc5.d/S80qmail
ln -s ../init.d/qmail /etc/rc6.d/K30qmail
ln -s /var/qmail/bin/qmailctl /etc/init.d/qmail
ʹµÃ½Å±¾¿ÉÒÔÖ´ÐÐ qmailctlÇÒ½øÈëϵͳÃüÁîÖÐ
chmod 755 /var/qmail/bin/qmailctl
ln -s /var/qmail/bin/qmailctl /usr/bin
supervise »ù±¾
ÏÖÔÚ²úÉúqmail servicesĿ¼£º
mkdir -p /var/qmail/supervise/qmail-send/log
mkdir -p /var/qmail/supervise/qmail-smtpd/log
chmod +t /var/qmail/supervise/qmail-send
chmod +t /var/qmail/supervise/qmail-smtpd
Éú³É/var/qmail/supervise/qmail-send/run Îļþ:
#!/bin/sh
exec /var/qmail/rc
Éú³É/var/qmail/supervise/qmail-send/log/run Îļþ:
#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail
Éú³É /var/qmail/supervise/qmail-smtpd/run Îļþ£º
#!/bin/sh
QMAILDUID=`id -u qmaild`
NOFILESGID=`id -g qmaild`
MAXSMTPD=`cat /var/qmail/control/concurrencyincoming`
exec /usr/local/bin/tcpserver -v -R -l 0 -x /etc/tcp.smtp.cdb -c "$MAXSMTPD"
-u "$QMAILDUID" -g "$NOFILESGID" 0 smtp /var/qmail/bin/qmail-smtpd 2>&1
Éú³Éconcurrencyincoming ¿ØÖÆÎļþ£º
echo 20 > /var/qmail/control/concurrencyincoming
chmod 644 /var/qmail/control/concurrencyincoming
Éú³É/var/qmail/supervise/qmail-smtpd/log/run Îļþ£º
#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail/smtpd
ʹµÃËùÉú³ÉµÄ½Å±¾¿ÉÖ´ÐУº
chmod 755 /var/qmail/supervise/qmail-send/run
chmod 755 /var/qmail/supervise/qmail-send/log/run
chmod 755 /var/qmail/supervise/qmail-smtpd/run
chmod 755 /var/qmail/supervise/qmail-smtpd/log/run
½¨Á¢log Ŀ¼£º
mkdir -p /var/log/qmail/smtpd
chown qmaill /var/log/qmail /var/log/qmail/smtpd
½«supervise Á´½Óµ½/service:
ln -s /var/qmail/supervise/qmail-send /var/qmail/supervise/qmail-smtpd /service
×¢: qmail ϵͳӦ¸Ã×Ô¶¯ÆðÀ´¡£Èç¹û²»Ïë´ËʱºòÆô¶¯£¬Ö´ÐУº
qmailctl stop'

SMTP ·ÃÎÊ¿ØÖÆ
ÔÊÐí±¾µØÖ÷»úͨ¹ýSMTP·¢ÐÅ£º
echo '127.:allow,RELAYCLIENT=""' >>/etc/tcp.smtp
qmailctl cdb
Í£Ö¹ÒѾ­°²×°µÄMTA
Èç¹ûMTA ÊÇSendmail£¬Ó¦¸ÃʹÓÃÏÂÃæÃüÁîÖеÄÒ»¸öÍ£Ö¹sendmail ¹¤×÷£º
/etc/init.d/sendmail stop
/sbin/init.d/sendmail stop
/etc/rc.d/init.d/sendmail stop
»òÕßÏÂÃæÃüÁîÍ£Ö¹
kill PID-of-sendmail
ͨ¹ýÏÂÃæÃüÁîжװSendmail £º
rpm -e --nodeps sendmail
×îºó£¬Ê¹ÓÃqmail°æ±¾µÄsendmail´úÌæÏµÍ³/usr/lib/sendmailµÄsendmail£º
mv /usr/lib/sendmail /usr/lib/sendmail.old # ignore errors
mv /usr/sbin/sendmail /usr/sbin/sendmail.old # ignore errors
chmod 0 /usr/lib/sendmail.old /usr/sbin/sendmail.old # ignore errors
ln -s /var/qmail/bin/sendmail /usr/lib
ln -s /var/qmail/bin/sendmail /usr/sbin
×¢: Éú³É'sendmailÁ´½ÓÊÇÖØÒªµÄ£¬ÒòΪÓÐÐí¶àÓ¦ÓÃÉæ¼°·¢mail¡£
×îºóÒ»²½²úÉúϵͳ±ðÃû(aliases)
echo alias > /var/qmail/alias/.qmail-root
echo alias > /var/qmail/alias/.qmail-postmaster
ln -s .qmail-postmaster /var/qmail/alias/.qmail-mailer-daemon
chmod 644 /var/qmail/alias/.qmail-root /var/qmail/alias/.qmail-postmaster
Æô¶¯qmail
qmailctl start
Ìí¼Ópop3·þÎñ
Éú³É /var/qmail/supervise/qmail-pop3d/run ½Å±¾°üº¬ÏÂÃæÄÚÈÝ£º
#!/bin/sh
exec /usr/local/bin/tcpserver -v -R -H -l 0 0 110 /var/qmail/bin/qmail-popup
longshine.com /bin/checkpassword /var/qmail/bin/qmail-pop3d Maildir 2>&1
Éú³É/var/qmail/supervise/qmail-pop3d/log/run ½Å±¾°üº¬ÏÂÃæÄÚÈÝ£º
#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t
/var/log/qmail/pop3d
½¨Á¢logĿ¼ʹµÃ½Å±¾¿ÉÒÔÖ´ÐÐÇÒ½«´Ë·þÎñÁ´½Óµ½/service:
chmod +t /var/qmail/supervise/qmail-pop3d
mkdir /var/log/qmail/pop3d
chown qmaill /var/log/qmail/pop3d
chmod 755 /var/qmail/supervise/qmail-pop3d/run
chmod 755 /var/qmail/supervise/qmail-pop3d/log/run
ln -s /var/qmail/supervise/qmail-pop3d /service
ÔÚqmailctl½Å±¾ÖÐÌí¼ÓÏÂÃæÄÚÈÝ£º
ÔÚqmailctl'µÄ "start" ²¿·Ö:
if svok /service/qmail-pop3d ; then
svc -u /service/qmail-pop3d
else
echo qmail-pop3d service not running
fi
ÔÚqmailctl'µÄ "stop" ²¿·Ö:
echo " qmail-pop3d"
svc -d /service/qmail-pop3d
ÔÚqmailctl'µÄ "stat" ²¿·Ö:
svstat /service/qmail-pop3d
svstat /service/qmail-pop3d/log
ÔÚqmailctl'µÄ "pause" ²¿·Ö:
echo "Pausing qmail-pop3d"
svc -p /service/qmail-pop3d
ÔÚqmailctl'µÄ "cont" ²¿·Ö:
echo "Continuing qmail-pop3d"
svc -c /service/qmail-pop3d
ÔÚqmailctl'µÄ "restart" ²¿·Ö:
echo "* Restarting qmail-pop3d."
svc -t /service/qmail-pop3d
ÔÚ/etc/hosts½Å±¾ÖÐÌí¼Ó
172.18.6.111 longshine.com
qmailµÄ²âÊÔ
²âÊÔ°²×°£º
¿ÉÒÔ²ÎÕÕTEST.deliver ºÍ TEST.receive Îĵµ²âÊÔÆä¹¤×÷ÊÇ·ñÕý³£¡£×¢ÒâÈÕÖ¾ÊÇÓÉ multilog ¶ø²»ÊÇsploggerÉú³ÉµÄ¡£
²âÊÔPop3ºÍSMTP·þÎñ
¡¡¡¡Ê×ÏÈÆô¶¯qmailÓʼþ·þÎñÆ÷£¬È»ºó²âÊÔ£¬Ê¹ÓÃÈçÏÂÃüÁ
¡¡¡¡±¾µØ²âÊÔ£º
¡¡¡¡#run_mail
¡¡¡¡#netstat -na | grep 25
¡¡¡¡#netstat -na | grep 110
¡¡¡¡#telnet localhost 110
¡¡¡¡user test
¡¡¡¡pass test
¡¡¡¡list
¡¡¡¡retr 1
¡¡¡¡Ô¶³Ì²âÊÔ£º
¡¡¡¡ÀûÓÃWindowsϵÄͼÐÎÓʼþ¿Í»§¶Ë£¨Èç outlook¡¢foxmailµÈ£©À´²âÊÔÓʼþµÄÊÕ·¢¡£
ΪqmailÔö¼ÓLDAPÖ§³Ö
¡¡¡¡qmail¿ÉÒÔͨ¹ýLDAPÀ´´úÌæ´«Í³µÄ/etc/passwd·½Ê½µÄPop3ÈÏÖ¤£¬ÒÔ±ãÌá¸ßÈÏ֤ЧÂʺÍÓÐЧµÄÖ§³Ö´óÈÝÁ¿µÄÓʼþ¿Í»§£¬ÎªÁËʹqmail»ñµÃLDAPÖ§³Ö£¬ÐèÒªÔÚqmailµÄ»ù´¡ÉÏÔö¼Ó¾ß±¸LDAPÈÏÖ¤µÄPatch°ü£¬×îºÃʹÓÃqmailеÄѹËõ°ü£¬¾ßÌå²Ù×÷ʹÓÃÈçÏÂÃüÁ
¡¡¡¡#rm -rf qmail-1.03
¡¡¡¡#zip £­zxvf qmail-1.03.tar.gz
¡¡¡¡#gunzip qmail-ldap-1_03-20010301_patch.gz
¡¡¡¡#cd qmail-1.03
¡¡¡¡#patch -p1 < ../ qmail-ldap-1.03-20010501.patch
¡¡¡¡ÔÚpatch°ü´òºÃÖ®ºó£¬ÐèÒªÐÞ¸ÄqmailµÄMakefileÎļþÀ´ÅäÖÃÏàÓ¦µÄLDAPÐÅÏ¢£¬¾ßÌåÈçÏ£¨ÕâÀïֻ˵Ã÷±ØÐëÐ޸ĵ쬯äÓàµÄ¿ÉÑ¡ÏîÇë²Î¿¼QLDAPINSTALL.TXTÎĵµ£©£º
¡¡¡¡1) -LDAPFLAGS = -DCLEARTEXTPASSWORD
¡¡¡¡ÅäÖÃÊÇ·ñÔÚLDAPĿ¼ÖÐʹÓÃÃ÷ÎÄÃÜÂë¡£
¡¡¡¡2) -LDAPLIBS =
¡¡¡¡ÅäÖÃʹÓõÄLDAP½Ó¿Ú¿â£¬ÔÚ±¾ÀýÖÐΪ£º
¡¡LDAPLIBS=-L/usr/local/lib -L/usr/X11R6/lib/modules -lldap -llber -lldap_r -lpthread -lresolv
¡¡¡¡4£©-SHADOWLIBS = -lcrypt -lshadow
¡¡¡¡-SHADOWOPTS = -DPW_SHADOW
¡¡¡¡ÅäÖÃʹÓõÄÃÜÂëÈÏÖ¤·½Ê½¡£
¡¡¡¡ÔÚMakefileÉèÖÃÐÞ¸ÄÍê±Ïºó£¬ÖØÐ±àÒëqmailÔ´Îļþ£¬È»ºó¸²¸Ç°²×°qmail£¬Ê¹ÓÃÈçÏÂÃüÁ
¡¡¡¡#make setup check
°²×°openldap
zip -zxvf openldap-2.07.tgz
cd openldap-2.07
./configure
make depend
make
make test
su root -c 'make install'
ÕâÑùopenldap°²×°Íê³É
¡¡ÔÚ/var/qmail/control/Ͻ¨Á¢ÏàÓ¦µÄLDAPÖ§³ÖÎļþ£º
¡¡¡¡#cat ldapserver
¡¡¡¡172£®18£®6£®111
¡¡¡¡#cat ldapbasedn
¡¡¡¡dc=longshine , dc=com
¡¡¡¡#cat ldapobjectclass
¡¡¡¡qmailUser
½«qmail.schema¿½±´µ½openldapµÄÏàӦĿ¼ÏÂÃæ
cp /usr/local/src/qmail/qmail-1.03/qmail.schema /usr/local/etc/openldap/schema/.
±à¼­configuration Îļþ /usr/local/etc/openldap/slapd.conf)
database ldbm
suffix "dc=longshine,dc=com"
rootdn "cn=Manager,dc= longshine ,dc="
rootpw secret
directory /usr/local/var/openldap-ldbm
Ôö¼ÓÏàÓ¦µÄshemaÎļþ
include /usr/local/etc/openldap/schema/cosine.schema
include /usr/local/etc/openldap/schema/nis.schema
include /usr/local/etc/openldap/schema/inetorgperson.schema
include /usr/local/etc/openldap/schema/qmail.schema
Æô¶¯ SLAPD.
su root -c /usr/local/libexec/slapd
ΪÁ˼ì²âopenldapÊÇ·ñÔËÐкÍÅäÖÃÕýÈ·¡£¿ÉÒÔÖ´ÐÐldapsearchÃüÁî½øÐмì²â¡£È±Ê¡µÄ£¬ldapsearch °²×°ÔÚ/usr/local/bin/ldapsearch£º
ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts
Ó¦¸Ã¿ÉÒÔ¿´¼û
dn:
namingContexts: dc=longshine,dc=com
Ôö¼ÓĿ¼µÄ³õʼÈ˿ڡ£
·ÖΪ¶þ²½£º
Éú³ÉÒ»¸öLDIF Îļþ
ÔËÐÐldapadd

ÊDZ༭Æ÷Éú³ÉÒ»¸öLDIF Îļþ£¬°üº¬ÈçÏÂÄÚÈÝ£º
dn: dc=,dc=
objectclass: dcObject
objectclass: organization
o:
dc:
dn: cn=Manager,dc=,dc=
objectclass: organizationalRole
cn: Manager
ÎҵĴËÎļþManager.ldifÎļþÄÚÈÝΪdn: dc=longshine,dc=com,dc=cn
objectclass: dcObject
objectclass: organization
o: longshine
dc: longshine
dn: cn=Manager,dc=longshine,dc=com
objectclass: organizationalRole
cn: Manager
ÏÖÔÚÔËÐÐldapadd³ÌÐò
ldapadd -x -D "cn=Manager,dc=longshine,dc=com" -W -f /root/manager.ldif
Èç¹ûÒªÊäÈëÃÜÂëΪsecret¡£
Ôö¼ÓqmailÓû§ÐÅÏ¢£¬Éú³Étest.ldifÎļþ
dn: cn=testUser,dc=longshine,dc=com
cn: testUser
sn: testUser
objectClass: top
objectClass: person
objectClass: inetOrgPerson
objectClass: qmailUser
mail: test@longshine.com
mailHost: longshine.com
mailMessageStore: /home/test/Maildir/
mailQuota: 1000000S,100C
uid: test
userPassword: test
qmailUID: 508
qmailGID: 508
×¢qmailUID£¬qmailGID¿ÉÒÔͨ¹ý/etc/passwdÎļþ²éѯµ½¡£Ê¹ÓÃÏÂÃæÃüÁî½øÈë
ldapadd -x -D "cn=Manager,dc=longshine,dc=com" -W -f /root/test.ldif
Èç¹ûÒªÊäÈëÃÜÂëΪsecret¡£
½«/var/qmail/supervise/qmail-pop3d/run ½Å±¾°üº¬ÏÂÃæÄÚÈÝ£º
#!/bin/sh
exec /usr/local/bin/tcpserver -v -R -H -l 0 0 110 /var/qmail/bin/qmail-popup
longshine.com /var/qmail/bin/auth_pop /var/qmail/bin/qmail-pop3d Maildir 2>&1
²âÊÔLDAP£º
ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts
ʹÓÃʲôÃüÁî²é¿´Ìí¼ÓµÄʱ¼äÊÇ·ñÕýÈ·¡£Èç¹û²»ÕýÈ·¿ÉÒÔʹÓÃ
ldapdelete -x -D"cn=Manager,dc=longshine,dc=com" -w secret "cn=testUser,dc=longshine,dc=com"
ɾ³ý£¬È»ºóÖØÐÂÌí¼Ó¡£
²âÊÔ»ùÓÚLDAPµÄPop3ÈÏÖ¤
¡¡¡¡ÔÚÉÏÊö²½ÖèÍê³Éºó£¬´ÓвâÊÔqmailÓʼþϵͳµÄÔËÐÐ×´¿ö£¬Ö÷Òª´ÓÒÔÏÂÈý¸ö·½Ãæ²âÊÔ£¬¾ßÌåÃüÁîÈçÏ£º
±¾µØ²âÊÔ
¡¡¡¡¾ßÌåÇë²Î¿¼TEST.deliver ºÍ TEST.receive µÄ·½·¨¡£
Pop3+SMTP²âÊÔ
¡¡¡¡telnet localhost 25 ºÍtelnet localhost 110
²âÊÔ¹¤¾ß
¡¡¡¡#/var/qmail/bin/qmail-ldaplookup -u test
¡¡¡¡#/var/qmail/bin/qmail-ladplookup -m test@longshine.com
Ò²¿ÉÓÃWindowsϵÄͼÐÎÓʼþ¿Í»§¶Ë£¨Èç outlook¡¢foxmailµÈ£©À´²âÊÔÓʼþµÄÊÕ·¢¡£
²Î¿¼×ÊÁÏ
Life with qmail (http://www.lifewithqmail.org/lwq.html)
QLDAPINSTALL (http://www.openldap.org/doc/admin/quickstart.html) qmail+LDAP°²×°ÓëÅäÖÃ(http://www.chinabyte.com/builder/linux/linux_detail.shtm?id=1650&parid=1&dtype=1) X.D.Chen'

,
Ïà¹ØÎÄÕ ÈÈÃÅÎÄÕÂ
  • BarracudaÀ¬»øÓʼþ·À»ðǽldap_test.cgi¿çÕ¾½Å±¾Â©¶´
  • DBMail¿ÕLDAP¿ÚÁîÈÆ¹ýÈÏ֤©¶´
  • ÍøÂç¹ÜÀí¼¼Êõ LDAPÔڻĿ¼ÖеÄÓ¦ÓýéÉÜ
  • ½ðµÑÓʼþϵͳ֮LDAP ÉèÖÃÖ¸ÄÏ
  • ½â³ýLDAPµ¼ÈëʱµÄADÌõÄ¿²éѯÏÞÖÆ
  • Linuxϵͳ¿ìËÙʵÏÖ»ùÓÚLDAPЭÒéĿ¼·þÎñ
  • IBM Lotus Domino LDAP·þÎñÆ÷DNÏûÏ¢Ô¶³Ì¶ÑÒç³ö©¶´
  • LDAP ²éѯ»ù±¾ÖªÊ¶
  • ÔÚ ISA Server 2006 ÖÐÅäÖûùÓÚ LDAP µÄÉí·ÝÑéÖ¤
  • ÈçºÎÔÚWindows 2000Óò¿ØÖÆÆ÷ÖÐÅäÖÃÊý×ÖÖ¤ÊéÀ´È·±£ LDAP ºÍ SMTP ¸´ÖƵݲȫ
  • LDAP´óÈÝÁ¿ÓʼþϵͳÊý¾Ý¿âÓ¦ÓÃÖ¸ÄÏ
  • IBM Lotus Domino Server LDAPÔ¶³Ì¾Ü¾ø·þÎñ©¶´
  • LinuxÓʼþ·þÎñÆ÷Èí¼þ±È½Ï
  • ÓòÃûºÍÓʼþ·þÎñÆ÷FAQ
  • Qmail×Ô¶¯°²×°°üQmail_setup-v1.5.3·¢²¼
  • freebsd+qmail+mysql+vpopmailÖ®ÍêÈ«ports°²×°
  • qmail+vpopmail+MySQL+igenus+RedHat 7Ͻ¨Á¢Óʼþϵͳ
  • QMAILÖÕ¼«°²×°Ö¸ÄÏ
  • ÅäÖÃÄãµÄµÚһ̨e-mail·þÎñÆ÷
  • qmail+webmail on Linux9 °²×°È«¹ý³Ì
  • ·Ö²¼Ê½µÄQmailÓʼþϵͳ
  • qmail+vpopmail+mysql+qmailadmin+ezmlm+igenus¹¹½¨Æó..
  • qmail+webmail on Linux9 °²×°È«¹ý³Ì
  • Qmail Server Howto
  • ×ÔÓÉ¹ã¸æÇø
    ¡¡
     
    ×îÐÂÈí¼þÏÂÔØ
  • ORF Enterprise Edition 4.2 Õýʽ°æ
  • WinWebMail 3.7.7.3 ±ê×¼°æ
  • WinWebMail 3.7.7.3 ÆóÒµ°æ
  • BMailì÷ÓÊ
  • Merak Email Server for Windows 9.3.1..
  • Merak Email Server for Linux 9.3.1 ¼..
  • Merak Email Server 9.3.1 For Windwos..
  • AXIGEN Mail Server 6.1.1 for Windows
  • AXIGEN Mail Server 6.1.0 for Linux
  • ADModify.NETÏÂÔØ
  • symantec10.1»ù±¾°²×°¼°ÅäÖÃÊÓÆµ½Ì³Ì
  • Backup Exec System RecoveryÖ®±¸·ÝÊÓÆ..
  • ½ñÈÕÓʼþ¼¼ÊõÎÄÕÂ
  • ÃÀ´óѧÉúÇÖÈëÅåÁÖÖݳ¤¸öÈËÓʼþÕË»§±»´þ²¶
  • ˼¿ÆIronPort·¢²¼Ðµç×ÓÓʼþ°²È«É豸
  • Éî¸û"Èí¼þ+·þÎñ" ΢Èí300³ÇÊÐѲչî£ÓÊ
  • ´ÓºÚ¿Í³£Óù¥»÷Êֶο´WEBÓ¦Ó÷À»¤
  • ÏûÏ¢ÈËʿ͸¶ÑÅ»¢ÓëAOLºÏ²¢Ï¸½Ú½«ÓÚ±¾Ô..
  • ¹È¸èÌṩµÄµç×ÓÓʼþ´æµµÊ±¼äÑÓ³¤ÎªÊ®Äê
  • ÑÅ»¢½«ÔÚÓÊÏä·þÎñÖÐÕûºÏаæÔÚÏßÈÕÀú
  • 9ÔÂÀ¬»øÓʼþ×ÜÁ¿¼õÉÙ ÓëISPµ¹±ÕÓйØ
  • À¬»øÓʼþ·¢Õ¹µÄËÄ´óÇ÷ÊÆ
  • º«¹úÒéÔ±³ÆÖйúºÚ¿Íð³äÇàÍß̨·¢ËͲ¡¶¾..
  • VistaÄÑ³ÉÆøºò Windows XPÊÙÃü±»ÑÓ³¤
  • ÈüÃÅÌú¿ËÉý¼¶DLP²úÆ·¼°·´À¬»øÓʼþÍø¹Ø
  • ×îÐÂרÌâ
  • Sendmail ÓʼþϵͳÅäÖÃ
  • ×齨Exchange 2003Óʼþϵͳ
  • Windows Server 2008 רÌâ
  • ORF ·´À¬»øÓʼþϵͳ
  • Exchange Server 2007 רÌâ
  • ISA Server 2006 ½Ì³ÌרÌâ
  • Windows Vista ¼¼ÊõרÌâ
  • ¡°ºÚÝ®¡±£¨BlackBerry£©×¨Ìâ
  • ÒÆ¶¯µç×ÓÓʼþרÌâ
  • Apache James רÌâ
  • IMail Server ²Ù×÷Ö¸ÄÏ
  • ISA Server 2004 ʹÓÃרÌâ
  • ·ÖÀർº½
    ÓʼþÐÂÎÅ×ÊѶ:
    ITÒµ½ç | Óʼþ·þÎñÆ÷ | ÓʼþȤÎÅ | ÒÆ¶¯µçÓÊ
    µç×ÓÓÊÏä | ·´À¬»øÓʼþ|Óʼþ¿Í»§¶Ë|ÍøÂ簲ȫ
    ÐÐÒµÊý¾Ý | ÓʼþÈËÎï | ÍøÕ¾¹«¸æ | ÐÐÒµ·¨¹æ
    ÍøÂç¼¼Êõ:
    ÓʼþÔ­Àí | ÍøÂçЭÒé | ÍøÂç¹ÜÀí | ´«Êä½éÖÊ
    Ïß·½ÓÈë | ·ÓÉ½Ó¿Ú | Óʼþ´æ´¢ | »ªÎª3Com
    CISCO¼¼Êõ | ÍøÂçÓë·þÎñÆ÷Ó²¼þ
    ²Ù×÷ϵͳ:
    Windows 9X | Linux&Uinx | Windows NT
    Windows Vista | FreeBSD | ÆäËü²Ù×÷ϵͳ
    Óʼþ·þÎñÆ÷:
    ³ÌÐòÓ뿪·¢ | Exchange | Qmail | Postfix
    Sendmail | MDaemon | Domino | Foxmail
    KerioMail | JavaMail | Winwebmail |James
    Merak&VisNetic | CMailServer | WinMail
    ½ðµÑÓʼþϵͳ | ÆäËü |
    ·´À¬»øÓʼþ:
    ×ÛÊö| ¿Í»§¶Ë·´À¬»øÓʼþ|·þÎñÆ÷¶Ë·´À¬»øÓʼþ
    Óʼþ¿Í»§¶ËÈí¼þ:
    Outlook | Foxmail | DreamMail| KooMail
    The bat | À×Äñ | Eudora |Becky! |Pegasus
    IncrediMail |ÆäËü
    µç×ÓÓÊÏä: ¸öÈËÓÊÏä | ÆóÒµÓÊÏä |Gmail
    ÒÆ¶¯µç×ÓÓʼþ:·þÎñÆ÷ | ¿Í»§¶Ë | ¼¼ÊõÇ°ÑØ
    ÓʼþÍøÂ簲ȫ:
    Èí¼þ©¶´ | °²È«ÖªÊ¶ | ²¡¶¾¹«¸æ |·À»ðǽ
    ¹¥·À¼¼Êõ | ²¡¶¾²éɱ| ISA | Êý×ÖÇ©Ãû
    ÓʼþÓªÏú:
    EmailÓªÏú | ÍøÂçÓªÏú | ÓªÏú¼¼ÇÉ |ÓªÏú°¸Àý
    ÓʼþÈ˲Å:ÕÐÆ¸ | Ö°³¡ | Åàѵ | Ö¸ÄÏ | Ö°³¡
    ½â¾ö·½°¸:
    Óʼþϵͳ|·´À¬»øÓʼþ |°²È« |ÒÆ¶¯µçÓÊ |Õбê
    ²úÆ·ÆÀ²â:
    Óʼþϵͳ |·´À¬»øÓʼþ |ÓÊÏä |°²È« |¿Í»§¶Ë
    ¹ã¸æÁªÏµ | ºÏ×÷ÁªÏµ | ¹ØÓÚÎÒÃÇ | ÁªÏµÎÒÃÇ | ·±ówÖÐÎÄ
    °æÈ¨ËùÓУºÓʼþ¼¼Êõ×ÊÑ¶Íø©2003-2007 www.5dmail.net, All Rights Reserved
    www.5Dmail.net Web Team   ÔÁICP±¸05009143ºÅ