Searching for a viable option for endusers to reset or change their passwords, I have come up empty. Maybe I just searched wrong.
Anyway, I normally don’t do any administration using web interfaces (such as Confixx, Plesk and the like), but I have come across Webmin, which is “a web-based interface for system administration for Unix. Using any modern web browser, you can setup user accounts, Apache, DNS, file sharing and much more.”
Webmin supports user administration. Any account can implement the role of “Change Passwords”. Unfortunately, this will enable this particular user to change any other users password. Lucky for me, Webmin is OSS and written in Perl. So a quick four line code change does exactly what I need.
This is how the Munin front-end looks after the patch. If you’re not root, you can only change your own password. End of line.
If you want to recreate this setup on your machine, you can download the patch here and apply it with
$ patch /usr/share/webmin/passwd/index.cgi > index.patch