Like any other piece of software (and information generally), checkpw comes with NO WARRANTY. Things you have to decide before starting: * The checkpw home directory, normally /. To change this directory, edit conf-home now. * The qmail home directory, normally /var/qmail. To change this directory, edit conf-qmail now. * The maildir directory, normally Maildir. To change this name, edit conf-maildir now. * The password file, normally .password. To change this name, edit conf-password now. How to install: 1. Compile the programs: % make 2. Install the programs: # make setup check How to set password: 3. Create password file: % echo 'YOURPASSWORD' > ~/Maildir/.password % chmod 600 ~/Maildir/.password Replace YOURPASSWORD with your plain password. How to setup service: o POP service Use checkpw instead of checkpassword. run-pop is the sample run script. o APOP service Use checkapoppw instead of checkpassword. run-apop is the sample run script. o Selective authenticate method per client address Set $AUTH with "pop" or "apop". tcpserver can set environment variables per client address. For example 10.:allow,AUTH="pop" :allow,AUTH="apop" then use selectcheckpw instead of checkpassword. run-rules is the sample run script. o Both POP and APOP service Activate POP and APOP services on the different port. o Both POP and APOP service on the same port Patch qmail-popup-auth.patch against qmail-1.03, then use selectcheckpw instead of checkpassword. run-both is the sample run script. o Multiple Maildirs per POP3 user If login name contains extension, checkpw sets up $EXT. For example, if login name is foo-bar, checkpw checks ~foo/Maildir/.password and sets up $USER="foo" and $EXT="bar". So you can set maildir before invoking qmail-pop3d. run-multidir is the sample run script. o Multiple password per maildir If $DASH is set and login name contains extension, checkpw checks ~user/Maildir$DASH$EXT/.password. For example, if $DASH is "-" and login name is foo-bar, checkpw checks ~foo/Maildir-bar/.password and sets up $USER="foo" and $EXT="bar". In this case, you should set maildir before invoking qmail-pop3d. run-multipw is the sample run script. o POP before SMTP Use relay-ctrl if you want to control SMTP access to relaying for users that authenticate using POP or APOP. http://untroubled.org/relay-ctrl/ o Virtual users Use vucheckpw if you don't like having services which are running as root. http://checkpw.sourceforge.net/vucheckpw/