In my own environment, users accesses their mailboxes on Dovecot server via POP3, IMAP and WebMail (IlohaMail over IMAP).
Dovecot authorizes folks via LDAP, but there is no way for ordinal users to change password because IMAP nor POP3 doesn't provides that feature nor gives access to LDAP layer.
So, we need a utility that is called via Web interface and accesses LDAP directly. Well, it's time for writing yet another stupid php wrapper :-)
Webldappasswd is distributed now as public domain, but remember that I prefer GNU GPL.
Download version 20060329 (3700 bytes).
First, you need Web server with PHP.
Second, you need ldappasswd utility from OpenLDAP distribution.
Third, you need PHP safe mode disabled (possibly partially for directory where you place webldappasswd) for calling ldappasswd binary.
Fourth, you must rename ldap.php-sample to ldap.php and edit them to set proper values for your own environment.
Fifth, if you want to localize it, create message file in subdirectory named lang.
My email is ilya_evseev(at)mail(dot)ru.
Enjoy!