INSTALL INSTRUCTIONS This is basically my HOW-TO install SpamAssassin's PHP Administration Frontend on a RedHat system using sendmail installed per my sendmail instructions and assuming you have already gotten Apache running (per my instructions or you know what you are doing). These instructions were tested and written using various Redhat 5.X to 7.X servers and these exact instructions are for RedHat 7.2 though they should work on just about any RedHat. NOTE: You should already have SpamAssassin installed at this point! kevin@mcgrail.com #THANKS TO MANY PEOPLE FOR TESTING AND TIPS INCLUDING: Ace Williams, Bob Falkenberg & Abe Mirrashidi #MORE THANKS TO: Michael Huettich who confirmed this works on SuSe 7.2 Pro #CREATE A TEMP DIR FOR THE TAR FILES rm -rf /tmp/20030716PHP-SA/ mkdir /tmp/20030716PHP-SA cd /tmp/20030716PHP-SA/ #GET THE VARIOUS PACKAGES wget http://www.peregrinehw.com/downloads/SpamAssassin/pwauth-extract-from-mod_auth_external-2.1.15.tar.gz wget http://www.peregrinehw.com/downloads/SpamAssassin/php-sa-mysql-0.5-KAM-0.2.12.tar.gz wget http://www.peregrinehw.com/downloads/SpamAssassin/checkpassword-0.90.stdin.patch wget http://www.peregrinehw.com/downloads/SpamAssassin/checkpassword-0.90.tar.gz cd /usr/src #INSTALL A METHOD OF TESTING PASSWORDS # Pick one of the two following password authentication modules and install it or configure/install your own. # Technically, you can install both and edit the config.php.inc to switch back and forth assuming you configure # them both to work. #INSTALL PWAUTH (option 1 of 2) #Pros: Uses PAM so it's very configureable #Cons: If you have a standard Unix system, checkpassword might be simpler and work just as well # # I've made the appropriate configuration changes for RedHat for pwauth and recommend using the # included tar file if you use my other Apache/sendmail/SpamAssassin directions. This program # requires setuid root so you MUST install this as root for everything to work. tar zxvf /tmp/20030716PHP-SA/pwauth-extract-from-mod_auth_external-2.1.15.tar.gz cd pwauth mv pwauth /etc/pam.d/ make cp pwauth /usr/local/apache/bin/ chmod 6755 /usr/local/apache/bin/pwauth #INSTALL CHECKPASSWORD (option 2 of 2) #Pros: Simpler to install #Cons: Doesn't pause when a password failure is given # # ADDED 2003-06-09 # # I've made a small change to checkpassword for qmail and included a patch that changes the program to # use stdin (instead of descriptor 3) and installs it in /usr/local/apache/bin. You also have to set # the program permissions to setuid root so you MUST install this as root for everything to work. cd /usr/src tar zxvf /tmp/20030716PHP-SA/checkpassword-0.90.tar.gz cd checkpassword-0.90 patch -p1 < /tmp/20030716PHP-SA/checkpassword-0.90.stdin.patch #REDHAT 9 FIX FROM Dag Wieers -- Thanks to Tommy Morrison for pointing this out! perl -pi.orig -e 's|^(#include "error.h")$|$1\n#include |' *.c make make setup check chmod 6755 /usr/local/apache/bin/checkpassword #INSTALL PHP-SA # # UPDATED 2002-10-04 to allow for PHP v4.2 with GLOBAL REGISTERS OFF! # UPDATED 2002-10-10 to add new whitelist_from syntax # UPDATED 2002-10-11 to fix more php global register problems # UPDATED 2003-01-23 to fix path problems # UPDATED 2003-02-21 to fix pwauth and new PHP problem # UPDATED 2003-03-13 to fix small problem determining SSL status # UPDATED 2003-03-14 for More Bug Fixes due to PHP's global bugs. # UPDATED 2003-04-28 for 2.5X SpamAssassin # UPDATED 2003-04-30 for tiny fix # UPDATED 2003-06-09 for new features and new authentication system # UPDATED 2003-07-16 for really minor change # UPDATED 2003-02-28 for a lot of new changes cd /usr/src tar zxvf /tmp/20030716PHP-SA/php-sa-mysql-0.5-KAM-0.2.12.tar.gz cd php-sa-mysql-0.5-KAM-0.2.12 #REMOVE THE TEMP DIR FOR THE TAR FILES rm -rf /tmp/20030716PHP-SA/ # Move the resulting files into a published web path and edit the config.inc.php file to adjust all the # options for your site and database server." If you've been following all the how-to's all you # need to edit is a few lines (HOST_NAME, Database Password, phpsapath, @GLOBAL Password, etc.) and # things should be good!