Installation:Ubuntu:Courier
On Ubuntu 7.10 Server you need to install the following packages:
- courier-authdaemon
- courier-authlib-mysql (mySQL)
- courier-authlib-postgresql (postgreSQL)
- courier-base
- courier-pop (for unencrypted POP3 access)
- courier-pop-ssl (for SSL-encrypted POP3 access)
- courier-imap (for unencrypted IMAP access)
- courier-imap-ssl (for SSL-encrypted IMAP access)
On Ubuntu 7.10 Server use this command to install all at once: MySQL
sudo apt-get install courier-authdaemon courier-authlib-mysql courier-base courier-pop courier-pop-ssl courier-imap courier-imap-ssl
PostgresQL
sudo apt-get install courier-authdaemon courier-authlib-postgresql courier-base courier-pop courier-pop-ssl courier-imap courier-imap-ssl
Now we must configure the Courier POP3/IMAP daemon for use with MySQL/PostgreSQL.
The final step is now to tell the Courier POP3 daemon to use MySQL/PostgreSQL to access the username and password for authentication. First edit the file /etc/courier/authdaemonrc and change the directive authmodulelist to "authmysql/" like this:
/etc/courier/authdaemonrc (mySQL)
authmodulelist="authmysql"
Then we create a mysql user who has read access to the users table:
bash #> mysql -u root -p mysql Enter password: Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 239 Server version: 5.0.45-Debian_1ubuntu3.1-log Debian etch distribution Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> GRANT SELECT on pmwh2.postfix_users to 'courier'@'localhost' identified by "courier-password"; Query OK, 0 rows affected (0.00 sec) mysql> exit Bye
Then you need to define the fields of the MySQL database table in /etc/courier/authmysqlrc like this:
/etc/courier/authmysqlrc (mySQL)
MYSQL_SERVER localhost MYSQL_USERNAME courier_user MYSQL_PASSWORD courier_password MYSQL_PORT 3306 MYSQL_OPT 0 MYSQL_DATABASE pmwh2 MYSQL_USER_TABLE postfix_users MYSQL_CRYPT_PWFIELD password #(comment this out if you use clear passwords) #MYSQL_CLEAR_PWFIELD password #(un-comment this if you use clear passwords) MYSQL_UID_FIELD uid MYSQL_GID_FIELD gid MYSQL_LOGIN_FIELD email MYSQL_HOME_FIELD homedir MYSQL_NAME_FIELD name MYSQL_MAILDIR_FIELD maildir MYSQL_QUOTA_FIELD quota
/etc/courier/authdaemonrc (PostgreSQL)
comming soon
/etc/courier/authmysqlrc (mySQL)
comming soon
Finaly Do not forget to restart the authdaemon and imap process using
bash #> sudo /etc/init.d/courier-authdaemon restart && /etc/init.d/courier-imap restart && /etc/init.d/courier-imap-ssl restart bash #> sudo /etc/init.d/courier-pop restart && /etc/init.d/courier-pop-ssl restart
Configuration of Courier is done. next step using PowerDNS or next step using MyDNS