Like any other piece of software (and information generally), vucheckpw comes with NO WARRANTY. Things you have to decide before starting: * The vucheckpw home directory, normally /var/qmail/alias. 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. Change to the alias user: % su alias 3. Install the programs: % make setup check 4. Set up ~alias/.qmail-default. % cp ~alias/rc/.qmail-default ~alias Directory Structure: ~alias/bin - programs ~alias/rc - sample configuration files ~alias/users - user directories ~alias/users/foo - foo's directory this directory may contain dot-qmail files ~alias/users/foo/Maildir - foo's mail directory ~alias/users/foo/Maildir/.password - foo's password file ~alias/users/some.domain - some.domain's directory this directory may contain dot-qmail files ~alias/users/some.domain/foo - foo@some.domain's directory this directory may contain dot-qmail files ~alias/users/some.domain/foo/Maildir - foo@some.domain's mail directory ~alias/users/some.domain/foo/Maildir/.password - foo@some.domain's password file How to make user: Create user: % ~alias/bin/adduser foo Set password: % ~alias/bin/passwd foo password How to setup service: o POP service Use vucheckpw instead of checkpassword. run-pop is the sample run script. o APOP service Use vucheckapoppw instead of checkpassword. run-apop is the sample run script. o Virtual domains Create virtual domain: % ~alias/bin/adddomain some.domain # echo some.domain >> /var/qmail/control/rcpthosts # echo some.domain:some.domain >> /var/qmail/control/virtualdomains You must send a HUP signal to qmail-send process. Create user: % ~alias/bin/adduser foo some.domain Set password: % ~alias/bin/passwd foo password some.domain 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, vucheckpw checks ~alias/users/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, vucheckpw checks ~user/Maildir$DASH$EXT/.password. For example, if $DASH is "-" and login name is foo-bar, vucheckpw 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 Real users Use checkpw if you want to check real user's password. http://checkpw.sourceforge.net/checkpw/