doc/web/source/installation/prerequisites.rst
author "martin f. krafft" <madduck@debian.org>
Tue, 07 Aug 2012 21:54:39 +0000
changeset 583 a479c38931c4
parent 579 be0906181a10
child 635 54172669bbae
permissions -rw-r--r--
If an alias has multiple destinations, multiple records exist, due to the nature of the database. address_list would then return the same alias multiple times, which does not add any information, eats screen space and is potentially confusing. Therefore, we SELECT DISTINCTly from the alias table. Signed-off-by: martin f. krafft <madduck@debian.org> --- VirtualMailManager/common.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)

==========================
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.

Check for pgsql support in Dovecot and Postfix
----------------------------------------------
To verify that your Dovecot and Postfix installation has support for
PostgreSQL use the :command:`postconf` and :command:`dovecot` commands as
shown below:

.. code-block:: console

  root@host:~# postconf -m | grep pgsql
  pgsql
  root@host:~# postconf -a | grep dovecot
  dovecot
  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``.

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
recompiling the corresponding part.

Package names by OS/Distribution
--------------------------------
Debian GNU/Linux (Squeeze/Wheezy)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`postfix <http://packages.debian.org/postfix>`_ and
   `postfix-pgsql <http://packages.debian.org/postfix-pgsql>`_
 ‣ Squeeze:

   * `dovecot-common <http://packages.debian.org/dovecot-common>`_

 ‣ Wheezy (and Squeeze backports):

   * `dovecot-core <http://packages.debian.org/dovecot-core>`_ and
     `dovecot-lmtpd <http://packages.debian.org/dovecot-lmtpd>`_

`dovecot-imapd <http://packages.debian.org/dovecot-imapd>`_ and/or
   `dovecot-pop3d <http://packages.debian.org/dovecot-pop3d>`_
`postgresql-client <http://packages.debian.org/postgresql-client>`_
   (or `postgresql <http://packages.debian.org/postgresql>`_ , if you do not
   have a dedicated PostgreSQL server.)
`python <http://packages.debian.org/python>`_,
   `python-egenix-mxdatetime \
   <http://packages.debian.org/python-egenix-mxdatetime>`_
   and `python-psycopg2 <http://packages.debian.org/python-psycopg2>`_
   optionally `python-crypto <http://packages.debian.org/python-crypto>`_
`gettext <http://packages.debian.org/gettext>`_

FreeBSD
^^^^^^^
Packages or build from ports:
 ‣ dovecot
 ‣ postfix
 ‣ postgresql-client (and postgresql-server, if you do not have a dedicated
   PostgreSQL server.)
 ‣ python25, py25-mx-base and py25-pyPgSQL optionally py25-pycrypto

Gentoo Linux
^^^^^^^^^^^^
`dev-python/pypgsql <http://gentoo-portage.com/dev-python/pypgsql>`_
`mail-mta/postfix <http://gentoo-portage.com/mail-mta/postfix>`_
`net-mail/dovecot <http://gentoo-portage.com/net-mail/dovecot>`_
`dev-db/postgresql-base <http://gentoo-portage.com/dev-db/postgresql-base>`_
 ‣ `dev-db/postgresql-server \
   <http://gentoo-portage.com/dev-db/postgresql-server>`_

Applied use-Flags (/etc/portage/package.use)::

 mail-mta/postfix dovecot-sasl postgres -pam sasl
 net-mail/dovecot postgres -pam pop3d sieve
 dev-db/postgresql-server -perl

OpenBSD
^^^^^^^
Packages or build from ports:
 ‣ postfix
 ‣ dovecot
 ‣ postgresql-client
 ‣ python and py-mxDateTime optionally py-crypto

Build from source:
 ‣ pyPgSQL_

openSUSE Linux
^^^^^^^^^^^^^^
 ‣ postfix and postfix-postgresql
 ‣ postgresql-server and postgresql
 ‣ 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