# # Postfix Admin # by Mischa Peters # Copyright (c) 2002 - 2005 High5! # Licensed under GPL for more info check GPL-LICENSE.TXT # REQUIRED!! ---------- - You are using Postfix 2.0 or higher. - You are using Apache 1.3.27 / Lighttpd 1.3.15 or higher. - You are using PHP 4.1 or higher (5.X recommended) - You are using MySQL 3.23 or higher (5.x recommended) OR PostgreSQL 7.4 (or higher) READ THIS FIRST! ---------------- When this is an upgrade from Postfix Admin 1.5.4 please read DOCUMENTS/UPGRADE.TXT!! If you need to setup Postfix to be able to handle Virtual Domains and Virtual Users check out : - http://high5.net/howto/ - http://codepoets.co.uk/postfixadmin-postgresql-courier-squirrelmail-debian-etch-howto-tutorial (Debian+Courier+PostgreSQL+Postfix+Postfixadmin) - http://bliki.rimuhosting.com/space/knowledgebase/linux/mail/postfixadmin+on+debian+sarge (Postfix+MySQL+Postfixadmin+Dovecot) - http://gentoo-wiki.com/HOWTO_Setup_a_Virtual_Postfix/Courier_Mail_System_with_PostfixAdmin (Postfix+MySQL+Postfixadmin+Courier) 1. Unarchive new Postfix Admin ------------------------------ Make sure that you are in your WWW directory and then unarchive the Postfix Admin archive (whatever the filename is): $ tar -zxvf postfixadmin-2.2.0.tgz 2. Setup a Database ------------------- With your chosen/preferred database server (i.e. MySQL or PostgreSQL), you need to create a new database. A good name for this could be : postfix The mechanics of creating the database vary depending on which server you are using. Most users will find using phpMyAdmin or phpPgAdmin the easiest route. If you wish to use the command line, you'll need to do something like : For MySQL: CREATE DATABASE postfix; CREATE USER 'postfix'@'localhost' IDENTIFIED BY 'choose_a_password'; GRANT ALL PRIVILEGES ON `postfix` . * TO 'postfix'@'localhost'; For PostgreSQL: CREATE USER postfix WITH PASSWORD 'whatever'; CREATE DATABASE postfix OWNER postfix ENCODING 'unicode'; 3. Configure PostfixAdmin so it can find the database ----------------------------------------------------- Edit the config.inc.php file. The most important settings are those for your database server. You must also change the line that says : $CONF['configured'] = false; to $CONF['configured'] = true; PostfixAdmin does not require write access to any files. You can therefore leave the files owned as root (or a.n.other user); as long as the web server user (e.g. www-data) can read them, it will be fine. The next 'step', is optional. Only do it, if other non-trusted users have access to your user: Depending on your environment, you may want to protect the database username and password stored in config.inc.php - if so, you could move them into the Apache configuration file (which can be set to be visible only by root) using something like the following in your VirtualHost definition : SetVar DB_USER "postfix" SetVar DB_PASS "opensesame" config.inc.php would then be able to access these through : $CONF['database_user'] = $_SERVER['DB_USER'] 4. Check settings, and create Admin user ---------------------------------------- Hit http://yourserver.tld/postfixadmin/setup.php in a web browser. You should see a list of 'OK' messages. The setup.php script will attempt to create the database structure (or upgrade it if you're coming from a previous version). Assuming everything is OK you can create the admin user using the form displayed. Once you submit the form, all that's left to do is to delete "setup.php" e.g. mv setup.php setup.php.disabled 5. Use PostfixAdmin ------------------- This is all that is needed. Fire up your browser and go to the site that you specified to host Postfix Admin. 6. More information ------------------- As of March 2007, PostfixAdmin moved to SourceForge. For the forum posts and source updates, see: https://sourceforge.net/projects/postfixadmin