CGIpaf 1.3.5 (13 Apr 2016)


  • BUGFIX: pwd_mkdb errors were not handled correctly on BSD
  • kyua test scripts added

CGIpaf 1.3.4 (23 Nov 2014)


  • Cracklib configuration checking has been improved
  • LDFLAGS is passed to the linker correctly

CGIpaf 1.3.4pre1 has been Released (15 Sep 2013)

This is the first pre-release of cgipaf 1.3.4


  • PAM is enabled on FreeBSD 7.3 or above
  • PAM is enabled on NetBSD 6.0 or above
  • xmalloc is updated to support systems with non GNU compatible malloc

CGIpaf 1.3.3 Released (24 Jan 2008)

CGIpaf 1.3.3 has been released. This a bugfix release CGIpaf resolves a problem with md5 passwords on big endian systems.

CGIpaf 1.3.2 Released (30 Aug 2007)

CGIpaf 1.3.2 has been released (finally).

CGIpaf 1.3.2 has some minor bugs fixes to resolve installation problems etc.

changepass has been improved, it's fully compatible with the GNU/Linux chpasswd command with a few extensions. It might be useful on Unices that don't have this command like SUN Solaris.

changepass manpage

changepass opensolaris specfile (20 Sep 2009)

changepass OpenSolaris specfile is available at

CGIpaf 1.3.5

  • What is CGIpaf?

    "cgipaf" allows users to change their un*x Password, Autoreply and mail Forwarding by a web interface.

  • Documentation  

  • Source Code

    The git repository is available at:
  • Mailinglist  

    Subscribe to cgipaf

    Post message
    List owner:

  • Support  

    Please post your questions / install problems to mailinglist.

    Your problem can be useful to the other CGIpaf users...

  • Requirements  

    • a Un*x server (only tested with Debian gnu/Linux woody & potato and solaris 8)
    • a mailserver that uses procmail
      (vacation is supported by an external perl mailcfg script)
    • a webserver
    • gcc, ndbm or gdbm
  • License  

    GNU General Public License.

  • Downloads  

    Debian Source, Woody x86, Sarge PowerPC packages are available.

    download the source.

    A binary for solaris 9 sparc is available (should also work on solaris 10)

  • Overview  

    cgipaf is a combination of three cgi programs:

    passwd.cgi : allow users to update their password
    viewmailcfg.cgi : allow users to view their current mail configuration.
    mailcfg.cgi : update the mail configuration

    • All programs use PAM for user authentication, systems without PAM are only supported if they use the standard password file location (/etc/passwd /etc/shadow) and the standard crypt or md5 passwords.
    • If a password is changed it is possible to run a script to update SAMBA passwords, NIS configuration, etc.
    • The mail configuration is done by procmail, mailcfg.cgi creates a .procmailrc in the user's home directory. If autoreply is enabled the autoreply message is stored in ~/vacations.txt. When a user enables mail forwarding the user can choose to keep the messages.
    • For user authentication viewmailcfg.cgi creates a cookie, this cookie is stored in the accessdb. mailcfg.cgi reads the cookie out the accessdb and compares it with the cookie send by the users browser.
    • User with too many invalid logins can be locked.
    • The minimum and maximum uid can be set in the configuration file, so you can specify a range of uid's that are allowed to use cgipasswd.
    • You can specify html files with a few PHP extensions for the login screen and error messages.
    • It's possible to use a redirect for the error messages, instead of plain html files.
    • It's is possible to define an external script to update the the mail configuration to support other mail configurations than procmail a sample script with vacation support is included.
    • CGIpaf also contains the "changepass" utility which is basically a clone of the chpasswd (8) Linux command, it might be useful on platforms that doesn't have such a command like Solaris. See the changepass manpage for more information.
  • Screenschots  

    passwd.cgi [PNG]

    mailcfg.cgi [PNG]