# HG changeset patch # User Pascal Volk # Date 1363537743 0 # Node ID 42addf4f24347c98812e9c2ba1e8ce89bcedac65 # Parent b1bfd4d1d9c05f74420bf422c1cdaf26bbab00c3 {INSTALL,doc}: Updated documentation. diff -r b1bfd4d1d9c0 -r 42addf4f2434 INSTALL --- a/INSTALL Sun Feb 10 17:33:38 2013 +0000 +++ b/INSTALL Sun Mar 17 16:29:03 2013 +0000 @@ -1,26 +1,12 @@ Installation Prerequisites -You should already have installed and configured Postfix, Dovecot and -PostgreSQL. +You should already have installed and configured Postfix, Dovecot ≥ 1.2.0 +and PostgreSQL. The Virtual Mail Manager depends on: - - Python (>= 2.4.0) - - Psycopg 2¹ or pyPgSQL² + - Python (≥ 3.2) + - Psycopg¹ (≥ 2.0) -If you are using Python <= 2.5.0: - - if you want to store your users' passwords as PLAIN-MD4 digest in - the database, vmm will try to use Crypto.Hash.MD4 from PyCrypto³. - - if you are using Dovecot >= v1.1.0 and you want to store your users' - passwords as SHA256 or SSHA256 hashes, vmm will try to use - Crypto.Hash.SHA256 from PyCrypto². For SHA256/SSHA256 you should have - at least use PyCrypto in version 2.1.0alpha1. - - When the Crypto.Hash module couldn't be imported, vmm will use - dovecotpw/doveadm, if the misc.password_scheme setting in the vmm.cfg - is set to PLAIN-MD4, SHA256 or SSHA256 - -[1] Psycopg: (Debian: python-psycopg2) -[2] pyPgSQL: (Debian: python-pgsql) -[3] PyCrypto: (Debian: python-crypto) +[1] Psycopg: (Debian: python3-psycopg2) Create additionally a user and groups for improved security @@ -32,7 +18,7 @@ doveauth This will create the doveauth user and group. - For Dovecot >= 2.0 we create also the group `dovemail'. Dovecot will assign + For Dovecot ≥ 2.0 we create also the group `dovemail'. Dovecot will assign this group to all Dovecot processes. On a Debian GNU/Linux bases system run: @@ -43,7 +29,7 @@ (for more details see: http://vmm.localdomain.org/installation/postgresql_configuration.html) -* /etc/postgresql/8.4/main/pg_hba.conf +* /etc/postgresql/9.1/main/pg_hba.conf [ if you prefer to connect via TCP/IP ] # IPv4 local connections: host mailsys +mailsys 127.0.0.1/32 md5 @@ -52,7 +38,7 @@ local mailsys +mailsys md5 # reload configuration - /etc/init.d/postgresql-8.4 force-reload + /etc/init.d/postgresql force-reload * Create a database superuser if necessary: # as root run: su - postgres @@ -74,9 +60,7 @@ # connect to the new database psql mailsys vmm -W -h 127.0.0.1 - # either import the database structure for Dovecot v1.0.x/v1.1.x - \i vmm-y.x.z/pgsql/create_tables.pgsql - # or import the database structure for Dovecot v1.2.x/v2.x + # import the database structure for Dovecot ≥ 1.2.0 \i vmm-x.y.z/pgsql/create_tables-dovecot-1.2.x.pgsql # leave psql \q @@ -93,8 +77,8 @@ chmod 751 /srv/mail/* -For Dovecot >= 2.0 read the file Configure.Dovecot_2 -Configuring Dovecot v1.x +For Dovecot ≥ 2.0 read the file Configure.Dovecot_2 +Configuring Dovecot v1.2.x * /etc/dovecot/dovecot.conf # all your other settings @@ -137,8 +121,8 @@ Provide a root SETUID copy of Dovecot's deliver agent for Postfix -/!\ Only required with Dovecot v.1.x. - With Dovecot >= v2.0 use Dovecot's lmtp! +/!\ Only required with Dovecot v.1.2.x. + With Dovecot ≥ v2.0 use Dovecot's lmtp! mkdir -p /usr/local/lib/dovecot chmod 700 /usr/local/lib/dovecot @@ -154,7 +138,7 @@ Configuring Postfix's master.cf -/!\ Only required with Dovecot v.1.x. +/!\ Only required with Dovecot v.1.2.x. # Add Dovecot's deliver agent dovecot unix - n n - - pipe flags=DORhu user=nobody argv=/usr/local/lib/dovecot/deliver -f ${sender} @@ -181,7 +165,7 @@ virtual_mailbox_base = / virtual_mailbox_maps = ${proxysql}pgsql-virtual_mailbox_maps.cf - # dovecot LDA (only recommended with Dovecot v1.x) + # dovecot LDA (only recommended with Dovecot v1.2.x) #dovecot_destination_recipient_limit = 1 #virtual_transport = dovecot: @@ -219,7 +203,7 @@ # configure the Virtual Mail Manager # vmm.cfg(5) - configuration file for vmm # - # For Dovecot v1.x use 'dovecot:' as domain.transport + # For Dovecot v1.2.x use 'dovecot:' as domain.transport # When using Dovecot v2.x use 'lmtp:unix:private/dovecot-lmtp' as # domain.transport vmm configure diff -r b1bfd4d1d9c0 -r 42addf4f2434 doc/web/source/ext_references.rst --- a/doc/web/source/ext_references.rst Sun Feb 10 17:33:38 2013 +0000 +++ b/doc/web/source/ext_references.rst Sun Mar 17 16:29:03 2013 +0000 @@ -16,7 +16,6 @@ .. _Postfix: http://www.postfix.org/ .. _PostgreSQL: http://www.postgresql.org/ .. _Psycopg: http://initd.org/psycopg/ -.. _PyCrypto: http://www.pycrypto.org/ .. _Python: http://www.python.org/ .. _SourceForge: http://sourceforge.net/ .. _UID: http://en.wikipedia.org/wiki/User_identifier_%28Unix%29 @@ -26,15 +25,12 @@ .. _freenode: http://freenode.net/ .. _integrity: http://en.wikipedia.org/wiki/Data_integrity .. _issue tracker: https://bitbucket.org/pvo/vmm/issues -.. _mxDateTime: http://www.egenix.com/products/python/mxBase/mxDateTime/ -.. _mxTools: http://www.egenix.com/products/python/mxBase/mxTools/ .. _passdb: http://wiki.dovecot.org/PasswordDatabase .. _pg_dump: http://www.postgresql.org/docs/current/static/app-pgdump.html .. _pg_hba.conf: \ http://www.postgresql.org/docs/current/static/auth-pg-hba-conf.html .. _pgsql_table(5): http://www.postfix.org/pgsql_table.5.html .. _pipe(8): http://www.postfix.org/pipe.8.html -.. _pyPgSQL: http://pypgsql.sourceforge.net/ .. _relocated: http://www.postfix.org/relocated.5.html .. _setuid: http://en.wikipedia.org/wiki/Setuid .. _transport: http://www.postfix.org/transport.5.html diff -r b1bfd4d1d9c0 -r 42addf4f2434 doc/web/source/installation/prerequisites.rst --- a/doc/web/source/installation/prerequisites.rst Sun Feb 10 17:33:38 2013 +0000 +++ b/doc/web/source/installation/prerequisites.rst Sun Mar 17 16:29:03 2013 +0000 @@ -1,9 +1,9 @@ ========================== Installation Prerequisites ========================== -You already should have installed and configured Postfix and Dovecot with -PostgreSQL support. You also need access to a local or remote PostgreSQL -server. +You already should have installed and configured Postfix and Dovecot +≥ 1.2.0 with PostgreSQL support. You also need access to a local or remote +PostgreSQL server. Check for pgsql support in Dovecot and Postfix ---------------------------------------------- @@ -20,22 +20,7 @@ root@host:~# dovecot --build-options | grep postgresql SQL drivers: mysql postgresql sqlite -vmm depends on Python (≥ 2.4.0) and Psycopg_ (≥ 2.0) or pyPgSQL_ (≥ 2.5.1) -[#]_. Psycopg and pyPgSQL are depending on parts of the *eGenix.com mx Base -Distribution* (mxDateTime_ and mxTools_). - -If you are using Python ≤ 2.5.0: - - ‣ if you want to store your users' passwords as ``PLAIN-MD4`` digest in - the database, vmm will try to use ``Crypto.Hash.MD4`` from PyCrypto_ - ‣ if you are using Dovecot ≥ v1.1.0 and you want to store your users' - passwords as ``SHA256`` or ``SSHA256`` hashes, vmm will try to use - ``Crypto.Hash.SHA256`` from PyCrypto. For ``SHA256``/``SSHA256`` you - should have installed PyCrypto, at least in version 2.1.0alpha1. - - When the Crypto.Hash module couldn't be imported, vmm will use - dovecotpw/doveadm, if the *misc.password_scheme* setting in your - :file:`vmm.cfg` is set to ``PLAIN-MD4``, ``SHA256`` or ``SSHA256``. +vmm depends on Python (≥ 3.2) and Psycopg_ (≥ 2.0). If your Dovecot and/or Postfix installation shouldn't support PostgreSQL you could possibly fix this by installing the missing package (see below) or by @@ -43,29 +28,19 @@ Package names by OS/Distribution -------------------------------- -Debian GNU/Linux (Squeeze/Wheezy) +Debian GNU/Linux (Wheezy) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ‣ `postfix `_ and `postfix-pgsql `_ - ‣ Squeeze: - - * `dovecot-common `_ - - ‣ Wheezy (and Squeeze backports): - - * `dovecot-core `_ and - `dovecot-lmtpd `_ - + ‣ `dovecot-core `_ and + `dovecot-lmtpd `_ ‣ `dovecot-imapd `_ and/or `dovecot-pop3d `_ ‣ `postgresql-client `_ (or `postgresql `_ , if you do not have a dedicated PostgreSQL server.) - ‣ `python `_, - `python-egenix-mxdatetime \ - `_ - and `python-psycopg2 `_ - optionally `python-crypto `_ + ‣ `python3 `_ and + `python3-psycopg2 `_ ‣ `gettext `_ FreeBSD @@ -92,13 +67,16 @@ net-mail/dovecot postgres -pam pop3d sieve dev-db/postgresql-server -perl -OpenBSD (5.x) +OpenBSD (5.2) ^^^^^^^^^^^^^ Packages ‣ postfix-2.x.y-pgsql ‣ dovecot-2.x.y and dovecot-postgresql-2.x.y ‣ postgresql-client - ‣ python-2.7.x, py-psycopg2 and optionally py-crypto + ‣ python-3.2.x + +Build from source + ‣ Psycopg_ Or build the above mentioned software from ports. @@ -109,8 +87,4 @@ ‣ dovecot ‣ python and pyPgSQL optionally python-crypto - -.. rubric:: Footnotes -.. [#] Beginning with version 0.7.0 of vmm support for pyPgSQL will be dropped. - .. include:: ../ext_references.rst