| author | Pascal Volk <user@localhost.localdomain.org> | 
| Sat, 01 Feb 2014 18:52:03 +0000 | |
| changeset 707 | 19184d1265e5 | 
| parent 577 | 4f9079dd4b65 | 
| child 695 | 42addf4f2434 | 
| permissions | -rw-r--r-- | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 1 | Installation Prerequisites | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 2 | You should already have installed and configured Postfix, Dovecot and | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 3 | PostgreSQL. | 
| 268 
beb8f4421f92
VMM: added new modules password and pycompat.hashlib.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
248diff
changeset | 4 | |
| 
beb8f4421f92
VMM: added new modules password and pycompat.hashlib.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
248diff
changeset | 5 | The Virtual Mail Manager depends on: | 
| 
beb8f4421f92
VMM: added new modules password and pycompat.hashlib.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
248diff
changeset | 6 |     - Python (>= 2.4.0) | 
| 356 
61e732e4cb3e
Updated INSTALL and setup.py.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
271diff
changeset | 7 |     - Psycopg 2¹ or pyPgSQL² | 
| 14 
ebc9b864bc9a
* 'update_config_0.3.x-0.4.py'
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
11diff
changeset | 8 | |
| 268 
beb8f4421f92
VMM: added new modules password and pycompat.hashlib.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
248diff
changeset | 9 | If you are using Python <= 2.5.0: | 
| 
beb8f4421f92
VMM: added new modules password and pycompat.hashlib.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
248diff
changeset | 10 |     - if you want to store your users' passwords as PLAIN-MD4 digest in | 
| 356 
61e732e4cb3e
Updated INSTALL and setup.py.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
271diff
changeset | 11 | the database, vmm will try to use Crypto.Hash.MD4 from PyCrypto³. | 
| 268 
beb8f4421f92
VMM: added new modules password and pycompat.hashlib.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
248diff
changeset | 12 |     - if you are using Dovecot >= v1.1.0 and you want to store your users' | 
| 
beb8f4421f92
VMM: added new modules password and pycompat.hashlib.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
248diff
changeset | 13 | passwords as SHA256 or SSHA256 hashes, vmm will try to use | 
| 
beb8f4421f92
VMM: added new modules password and pycompat.hashlib.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
248diff
changeset | 14 | Crypto.Hash.SHA256 from PyCrypto². For SHA256/SSHA256 you should have | 
| 
beb8f4421f92
VMM: added new modules password and pycompat.hashlib.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
248diff
changeset | 15 | at least use PyCrypto in version 2.1.0alpha1. | 
| 
beb8f4421f92
VMM: added new modules password and pycompat.hashlib.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
248diff
changeset | 16 | |
| 
beb8f4421f92
VMM: added new modules password and pycompat.hashlib.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
248diff
changeset | 17 | When the Crypto.Hash module couldn't be imported, vmm will use | 
| 
beb8f4421f92
VMM: added new modules password and pycompat.hashlib.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
248diff
changeset | 18 | dovecotpw/doveadm, if the misc.password_scheme setting in the vmm.cfg | 
| 
beb8f4421f92
VMM: added new modules password and pycompat.hashlib.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
248diff
changeset | 19 | is set to PLAIN-MD4, SHA256 or SSHA256 | 
| 
beb8f4421f92
VMM: added new modules password and pycompat.hashlib.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
248diff
changeset | 20 | |
| 356 
61e732e4cb3e
Updated INSTALL and setup.py.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
271diff
changeset | 21 | [1] Psycopg: <http://initd.org/psycopg/> (Debian: python-psycopg2) | 
| 
61e732e4cb3e
Updated INSTALL and setup.py.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
271diff
changeset | 22 | [2] pyPgSQL: <http://pypgsql.sourceforge.net/> (Debian: python-pgsql) | 
| 
61e732e4cb3e
Updated INSTALL and setup.py.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
271diff
changeset | 23 | [3] PyCrypto: <http://www.pycrypto.org/> (Debian: python-crypto) | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 24 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 25 | |
| 564 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 26 | Create additionally a user and groups for improved security | 
| 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 27 |   We will create the system user `doveauth'. This user is used in the | 
| 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 28 |   authentication process. On a Debian GNU/Linux System use this command: | 
| 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 29 | |
| 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 30 | 	adduser --system --home /nonexistent --no-create-home --group \ | 
| 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 31 | 	--disabled-login --gecos "Dovecot IMAP/POP3 authentication user" \ | 
| 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 32 | 	doveauth | 
| 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 33 | |
| 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 34 |   This will create the doveauth user and group. | 
| 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 35 |   For Dovecot >= 2.0 we create also the group `dovemail'. Dovecot will assign | 
| 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 36 | this group to all Dovecot processes. | 
| 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 37 | On a Debian GNU/Linux bases system run: | 
| 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 38 | |
| 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 39 | addgroup --system dovemail | 
| 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 40 | |
| 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 41 | |
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 42 | Configuring PostgreSQL | 
| 577 
4f9079dd4b65
INSTALL: Updated PostgreSQL configuration URL.
 Pascal Volk <user@localhost.localdomain.org> parents: 
564diff
changeset | 43 | (for more details see: | 
| 
4f9079dd4b65
INSTALL: Updated PostgreSQL configuration URL.
 Pascal Volk <user@localhost.localdomain.org> parents: 
564diff
changeset | 44 | http://vmm.localdomain.org/installation/postgresql_configuration.html) | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 45 | |
| 165 
7e50e4c49ed7
INSTALL: Adapted pgsql configuration steps to that in the wiki.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
135diff
changeset | 46 | * /etc/postgresql/8.4/main/pg_hba.conf | 
| 
7e50e4c49ed7
INSTALL: Adapted pgsql configuration steps to that in the wiki.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
135diff
changeset | 47 | [ if you prefer to connect via TCP/IP ] | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 48 | # IPv4 local connections: | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 49 | host mailsys +mailsys 127.0.0.1/32 md5 | 
| 165 
7e50e4c49ed7
INSTALL: Adapted pgsql configuration steps to that in the wiki.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
135diff
changeset | 50 | [ if you want to connect through a local Unix-domain socket ] | 
| 
7e50e4c49ed7
INSTALL: Adapted pgsql configuration steps to that in the wiki.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
135diff
changeset | 51 | # "local" is for Unix domain socket connections only | 
| 
7e50e4c49ed7
INSTALL: Adapted pgsql configuration steps to that in the wiki.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
135diff
changeset | 52 | local mailsys +mailsys md5 | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 53 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 54 | # reload configuration | 
| 165 
7e50e4c49ed7
INSTALL: Adapted pgsql configuration steps to that in the wiki.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
135diff
changeset | 55 | /etc/init.d/postgresql-8.4 force-reload | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 56 | |
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 57 | * Create a database superuser if necessary: | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 58 | # as root run: su - postgres | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 59 | # if you have sudo privileges run: sudo su - postgres | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 60 | # create your superuser, which will be able to create users and databases | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 61 | createuser -s -d -r -E -e -P $USERNAME | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 62 | |
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 63 | * As superuser create the database and db users for vmm, Postfix and Dovecot | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 64 | connecting to PostgreSQL: | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 65 | psql template1 | 
| 128 
cf8116625866
Converted VirtualMailManager and Postconf to new-style classes.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
127diff
changeset | 66 | |
| 165 
7e50e4c49ed7
INSTALL: Adapted pgsql configuration steps to that in the wiki.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
135diff
changeset | 67 | # create users, group and the database | 
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 68 | CREATE ROLE vmm LOGIN ENCRYPTED PASSWORD 'DB PASSWORD for vmm'; | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 69 | CREATE ROLE dovecot LOGIN ENCRYPTED password 'DB PASSWORD for Dovecot'; | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 70 | CREATE ROLE postfix LOGIN ENCRYPTED password 'DB PASSWORD for Postfix'; | 
| 165 
7e50e4c49ed7
INSTALL: Adapted pgsql configuration steps to that in the wiki.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
135diff
changeset | 71 | CREATE ROLE mailsys WITH USER postfix, dovecot, vmm; | 
| 
7e50e4c49ed7
INSTALL: Adapted pgsql configuration steps to that in the wiki.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
135diff
changeset | 72 | CREATE DATABASE mailsys WITH OWNER vmm ENCODING 'UTF8'; | 
| 
7e50e4c49ed7
INSTALL: Adapted pgsql configuration steps to that in the wiki.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
135diff
changeset | 73 | \q | 
| 
7e50e4c49ed7
INSTALL: Adapted pgsql configuration steps to that in the wiki.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
135diff
changeset | 74 | |
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 75 | # connect to the new database | 
| 165 
7e50e4c49ed7
INSTALL: Adapted pgsql configuration steps to that in the wiki.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
135diff
changeset | 76 | psql mailsys vmm -W -h 127.0.0.1 | 
| 127 
97a9f6dd954b
Updated documentation
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
100diff
changeset | 77 | # either import the database structure for Dovecot v1.0.x/v1.1.x | 
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 78 | \i vmm-y.x.z/pgsql/create_tables.pgsql | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 79 | # or import the database structure for Dovecot v1.2.x/v2.x | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 80 | \i vmm-x.y.z/pgsql/create_tables-dovecot-1.2.x.pgsql | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 81 | # leave psql | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 82 | \q | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 83 | |
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 84 | # set permissions for your Dovecot and Postfix users | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 85 | # see python set-permissions.py -h for details | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 86 | python vmm-x.y.z/pgsql/set-permissions.py -a -H 127.0.0.1 -U vmm | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 87 | |
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 88 | Create directory for your mails | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 89 | mkdir /srv/mail | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 90 | cd /srv/mail/ | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 91 | mkdir 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 92 | chmod 771 /srv/mail | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 93 | chmod 751 /srv/mail/* | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 94 | |
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 95 | |
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 96 | For Dovecot >= 2.0 read the file Configure.Dovecot_2 | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 97 | Configuring Dovecot v1.x | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 98 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 99 | * /etc/dovecot/dovecot.conf | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 100 | # all your other settings | 
| 75 
af813ede1e19
* 'create_optional_types_and_functions.pgsql'
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
30diff
changeset | 101 | #disable_plaintext_auth = no | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 102 | mail_location = maildir:~/Maildir | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 103 | first_valid_uid = 70000 | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 104 | first_valid_gid = 70000 | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 105 |     protocol lda { | 
| 75 
af813ede1e19
* 'create_optional_types_and_functions.pgsql'
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
30diff
changeset | 106 | postmaster_address = postmaster@YOUR-DOMAIN.TLD | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 107 | } | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 108 |     auth default { | 
| 91 | 109 | mechanisms = cram-md5 login plain | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 110 |       passdb sql { | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 111 | args = /etc/dovecot/dovecot-sql.conf | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 112 | } | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 113 |       userdb sql { | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 114 | args = /etc/dovecot/dovecot-sql.conf | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 115 | } | 
| 564 
55148bc6348e
INSTALL: Added description how to create additional dove* user/group.
 Pascal Volk <user@localhost.localdomain.org> parents: 
563diff
changeset | 116 | user = doveauth | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 117 |       socket listen { | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 118 |         master { | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 119 | path = /var/run/dovecot/auth-master | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 120 | mode = 0600 | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 121 | } | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 122 |         client { | 
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 123 | path = /var/spool/postfix/private/dovecot-auth | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 124 | mode = 0660 | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 125 | user = postfix | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 126 | group = postfix | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 127 | } | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 128 | } | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 129 | } | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 130 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 131 | * /etc/dovecot/dovecot-sql.conf | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 132 | driver = pgsql | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 133 | connect = host=localhost dbname=mailsys user=dovecot password=$Dovecot_PASS | 
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 134 | default_pass_scheme = CRAM-MD5 | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 135 |     password_query = SELECT userid AS "user", password FROM dovecotpassword('%Ln', '%Ld') WHERE %Ls | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 136 |     user_query = SELECT home, uid, gid, mail FROM dovecotuser('%Ln', '%Ld') | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 137 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 138 | Provide a root SETUID copy of Dovecot's deliver agent for Postfix | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 139 | |
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 140 | /!\ Only required with Dovecot v.1.x. | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 141 | With Dovecot >= v2.0 use Dovecot's lmtp! | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 142 | |
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 143 | mkdir -p /usr/local/lib/dovecot | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 144 | chmod 700 /usr/local/lib/dovecot | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 145 | chown nobody /usr/local/lib/dovecot | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 146 | cp /usr/lib/dovecot/deliver /usr/local/lib/dovecot/ | 
| 247 
dbcb29ac89fa
INSTALL: simplified the 'SETUID copy of deliver' part
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
135diff
changeset | 147 | chown root:`id -g nobody` /usr/local/lib/dovecot/deliver | 
| 127 
97a9f6dd954b
Updated documentation
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
100diff
changeset | 148 | chmod u+s,o-rwx /usr/local/lib/dovecot/deliver | 
| 
97a9f6dd954b
Updated documentation
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
100diff
changeset | 149 | |
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 150 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 151 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 152 | Start or restart Dovecot | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 153 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 154 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 155 | Configuring Postfix's master.cf | 
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 156 | |
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 157 | /!\ Only required with Dovecot v.1.x. | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 158 | # Add Dovecot's deliver agent | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 159 | dovecot unix - n n - - pipe | 
| 577 
4f9079dd4b65
INSTALL: Updated PostgreSQL configuration URL.
 Pascal Volk <user@localhost.localdomain.org> parents: 
564diff
changeset | 160 |       flags=DORhu user=nobody argv=/usr/local/lib/dovecot/deliver -f ${sender} | 
| 
4f9079dd4b65
INSTALL: Updated PostgreSQL configuration URL.
 Pascal Volk <user@localhost.localdomain.org> parents: 
564diff
changeset | 161 |       -d ${user}@${nexthop} -n -m ${extension} | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 162 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 163 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 164 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 165 | Configuring Postfix's main.cf | 
| 577 
4f9079dd4b65
INSTALL: Updated PostgreSQL configuration URL.
 Pascal Volk <user@localhost.localdomain.org> parents: 
564diff
changeset | 166 |     sql      = pgsql:${config_directory}/ | 
| 
4f9079dd4b65
INSTALL: Updated PostgreSQL configuration URL.
 Pascal Volk <user@localhost.localdomain.org> parents: 
564diff
changeset | 167 |     proxysql = proxy:${sql} | 
| 
4f9079dd4b65
INSTALL: Updated PostgreSQL configuration URL.
 Pascal Volk <user@localhost.localdomain.org> parents: 
564diff
changeset | 168 | |
| 100 
b581e747e720
INSTALL, man/*: small enhancement and corrections
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
92diff
changeset | 169 | # relocated users from the database | 
| 577 
4f9079dd4b65
INSTALL: Updated PostgreSQL configuration URL.
 Pascal Volk <user@localhost.localdomain.org> parents: 
564diff
changeset | 170 |     #relocated_maps = ${proxysql}pgsql-relocated_maps.cf | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 171 | |
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 172 | # transport settings from our database | 
| 577 
4f9079dd4b65
INSTALL: Updated PostgreSQL configuration URL.
 Pascal Volk <user@localhost.localdomain.org> parents: 
564diff
changeset | 173 |     transport_maps = ${proxysql}pgsql-transport_maps.cf | 
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 174 | |
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 175 | # virtual domains | 
| 577 
4f9079dd4b65
INSTALL: Updated PostgreSQL configuration URL.
 Pascal Volk <user@localhost.localdomain.org> parents: 
564diff
changeset | 176 |     virtual_mailbox_domains = ${proxysql}pgsql-virtual_mailbox_domains.cf | 
| 
4f9079dd4b65
INSTALL: Updated PostgreSQL configuration URL.
 Pascal Volk <user@localhost.localdomain.org> parents: 
564diff
changeset | 177 |     virtual_alias_maps = ${proxysql}pgsql-virtual_alias_maps.cf | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 178 | virtual_minimum_uid = 70000 | 
| 577 
4f9079dd4b65
INSTALL: Updated PostgreSQL configuration URL.
 Pascal Volk <user@localhost.localdomain.org> parents: 
564diff
changeset | 179 |     virtual_uid_maps = ${sql}pgsql-virtual_uid_maps.cf | 
| 
4f9079dd4b65
INSTALL: Updated PostgreSQL configuration URL.
 Pascal Volk <user@localhost.localdomain.org> parents: 
564diff
changeset | 180 |     virtual_gid_maps = ${sql}pgsql-virtual_gid_maps.cf | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 181 | virtual_mailbox_base = / | 
| 577 
4f9079dd4b65
INSTALL: Updated PostgreSQL configuration URL.
 Pascal Volk <user@localhost.localdomain.org> parents: 
564diff
changeset | 182 |     virtual_mailbox_maps = ${proxysql}pgsql-virtual_mailbox_maps.cf | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 183 | |
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 184 | # dovecot LDA (only recommended with Dovecot v1.x) | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 185 | #dovecot_destination_recipient_limit = 1 | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 186 | #virtual_transport = dovecot: | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 187 | |
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 188 | # dovecot lmtp | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 189 | virtual_transport = lmtp:unix:private/dovecot-lmtp | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 190 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 191 | # dovecot SASL | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 192 | smtpd_sasl_type = dovecot | 
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 193 | smtpd_sasl_path = private/dovecot-auth | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 194 | smtpd_sasl_auth_enable = yes | 
| 92 | 195 | # Keep smtpd_sasl_local_domain identical to Dovecot's auth_default_realm: | 
| 196 | # empty. Both are empty by default. Let it commented out. | |
| 197 | # Read more at: http://wiki.dovecot.org/Authentication/Mechanisms/DigestMD5 | |
| 198 | #smtpd_sasl_local_domain = | |
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 199 | smtpd_sasl_security_options = noplaintext, noanonymous | 
| 75 
af813ede1e19
* 'create_optional_types_and_functions.pgsql'
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
30diff
changeset | 200 | #smtpd_sasl_security_options = noanonymous | 
| 
af813ede1e19
* 'create_optional_types_and_functions.pgsql'
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
30diff
changeset | 201 | #broken_sasl_auth_clients = yes | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 202 | |
| 14 
ebc9b864bc9a
* 'update_config_0.3.x-0.4.py'
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
11diff
changeset | 203 | smtpd_recipient_restrictions = | 
| 
ebc9b864bc9a
* 'update_config_0.3.x-0.4.py'
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
11diff
changeset | 204 | permit_mynetworks | 
| 
ebc9b864bc9a
* 'update_config_0.3.x-0.4.py'
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
11diff
changeset | 205 | permit_sasl_authenticated | 
| 
ebc9b864bc9a
* 'update_config_0.3.x-0.4.py'
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
11diff
changeset | 206 | reject_unauth_destination | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 207 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 208 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 209 | Installing the Virtual Mail Manager and configure the rest | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 210 | |
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 211 | Installing from Mercurial or vmm-x.y.z.tar.gz | 
| 356 
61e732e4cb3e
Updated INSTALL and setup.py.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
271diff
changeset | 212 | after cloning from the hg repo or extracting the archive change into the | 
| 
61e732e4cb3e
Updated INSTALL and setup.py.
 Pascal Volk <neverseen@users.sourceforge.net> parents: 
271diff
changeset | 213 | new directory and type: | 
| 30 | 214 | ./install.sh | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 215 | edit all the pgsql-*.cf files in /etc/postfix | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 216 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 217 | reload postfix | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 218 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 219 | # configure the Virtual Mail Manager | 
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 220 | # vmm.cfg(5) - configuration file for vmm | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 221 | # | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 222 | # For Dovecot v1.x use 'dovecot:' as domain.transport | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 223 | # When using Dovecot v2.x use 'lmtp:unix:private/dovecot-lmtp' as | 
| 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 224 | # domain.transport | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 225 | vmm configure | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 226 | |
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 227 | # for help type | 
| 563 
b17a9d7a59ae
INSTALL: Updated documentation.
 Pascal Volk <user@localhost.localdomain.org> parents: 
378diff
changeset | 228 | # vmm(1) - command line tool to manage email domains/accounts/aliases | 
| 0 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 229 | vmm help | 
| 
bb0aa2102206
Initial import @sf.net
 Pascal Volk <neverseen@users.sourceforge.net> parents: diff
changeset | 230 |