/usr/bin/passwd offers a "safe way" for root to edit /etc/passwd (or shadow). If setuid it allows regular users to change passwd without asking root to do changes for them.
(note: does have learning curve on args to choose)
gnupasswd - gnu change user password
gnugpasswd - gnu change group password
gnupasswd(1) has a goal to work with older login.c/linux and some newer too, also "getpwent" (any glibc). or help convert.
gnupassd does pass only: leaves all else alone (compat). ...
**MOVED TO GITHUB** The DansGuardian Webmin Module is exactly that. A Webmin Module. It will allow you to control DansGuardian from Webmin, and edit the various list files and configuration files. Several features have been added such as a log analyzer and Groups support.
Sesa is a simple web portal framework for Webmin. The Sesa framework allows to build portals to edit complex system configuration data. Supports role based access control and comes with a configurable workflow engine.