1 ========================== |
1 ========================== |
2 Installation Prerequisites |
2 Installation Prerequisites |
3 ========================== |
3 ========================== |
4 You already should have installed and configured Postfix and Dovecot with |
4 You already should have installed and configured Postfix and Dovecot |
5 PostgreSQL support. You also need access to a local or remote PostgreSQL |
5 ≥ 1.2.0 with PostgreSQL support. You also need access to a local or remote |
6 server. |
6 PostgreSQL server. |
7 |
7 |
8 Check for pgsql support in Dovecot and Postfix |
8 Check for pgsql support in Dovecot and Postfix |
9 ---------------------------------------------- |
9 ---------------------------------------------- |
10 To verify that your Dovecot and Postfix installation has support for |
10 To verify that your Dovecot and Postfix installation has support for |
11 PostgreSQL use the :command:`postconf` and :command:`dovecot` commands as |
11 PostgreSQL use the :command:`postconf` and :command:`dovecot` commands as |
18 root@host:~# postconf -a | grep dovecot |
18 root@host:~# postconf -a | grep dovecot |
19 dovecot |
19 dovecot |
20 root@host:~# dovecot --build-options | grep postgresql |
20 root@host:~# dovecot --build-options | grep postgresql |
21 SQL drivers: mysql postgresql sqlite |
21 SQL drivers: mysql postgresql sqlite |
22 |
22 |
23 vmm depends on Python (≥ 2.4.0) and Psycopg_ (≥ 2.0) or pyPgSQL_ (≥ 2.5.1) |
23 vmm depends on Python (≥ 3.2) and Psycopg_ (≥ 2.0). |
24 [#]_. Psycopg and pyPgSQL are depending on parts of the *eGenix.com mx Base |
|
25 Distribution* (mxDateTime_ and mxTools_). |
|
26 |
|
27 If you are using Python ≤ 2.5.0: |
|
28 |
|
29 ‣ if you want to store your users' passwords as ``PLAIN-MD4`` digest in |
|
30 the database, vmm will try to use ``Crypto.Hash.MD4`` from PyCrypto_ |
|
31 ‣ if you are using Dovecot ≥ v1.1.0 and you want to store your users' |
|
32 passwords as ``SHA256`` or ``SSHA256`` hashes, vmm will try to use |
|
33 ``Crypto.Hash.SHA256`` from PyCrypto. For ``SHA256``/``SSHA256`` you |
|
34 should have installed PyCrypto, at least in version 2.1.0alpha1. |
|
35 |
|
36 When the Crypto.Hash module couldn't be imported, vmm will use |
|
37 dovecotpw/doveadm, if the *misc.password_scheme* setting in your |
|
38 :file:`vmm.cfg` is set to ``PLAIN-MD4``, ``SHA256`` or ``SSHA256``. |
|
39 |
24 |
40 If your Dovecot and/or Postfix installation shouldn't support PostgreSQL you |
25 If your Dovecot and/or Postfix installation shouldn't support PostgreSQL you |
41 could possibly fix this by installing the missing package (see below) or by |
26 could possibly fix this by installing the missing package (see below) or by |
42 recompiling the corresponding part. |
27 recompiling the corresponding part. |
43 |
28 |
44 Package names by OS/Distribution |
29 Package names by OS/Distribution |
45 -------------------------------- |
30 -------------------------------- |
46 Debian GNU/Linux (Squeeze/Wheezy) |
31 Debian GNU/Linux (Wheezy) |
47 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
32 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
48 ‣ `postfix <http://packages.debian.org/postfix>`_ and |
33 ‣ `postfix <http://packages.debian.org/postfix>`_ and |
49 `postfix-pgsql <http://packages.debian.org/postfix-pgsql>`_ |
34 `postfix-pgsql <http://packages.debian.org/postfix-pgsql>`_ |
50 ‣ Squeeze: |
35 ‣ `dovecot-core <http://packages.debian.org/dovecot-core>`_ and |
51 |
36 `dovecot-lmtpd <http://packages.debian.org/dovecot-lmtpd>`_ |
52 * `dovecot-common <http://packages.debian.org/dovecot-common>`_ |
|
53 |
|
54 ‣ Wheezy (and Squeeze backports): |
|
55 |
|
56 * `dovecot-core <http://packages.debian.org/dovecot-core>`_ and |
|
57 `dovecot-lmtpd <http://packages.debian.org/dovecot-lmtpd>`_ |
|
58 |
|
59 ‣ `dovecot-imapd <http://packages.debian.org/dovecot-imapd>`_ and/or |
37 ‣ `dovecot-imapd <http://packages.debian.org/dovecot-imapd>`_ and/or |
60 `dovecot-pop3d <http://packages.debian.org/dovecot-pop3d>`_ |
38 `dovecot-pop3d <http://packages.debian.org/dovecot-pop3d>`_ |
61 ‣ `postgresql-client <http://packages.debian.org/postgresql-client>`_ |
39 ‣ `postgresql-client <http://packages.debian.org/postgresql-client>`_ |
62 (or `postgresql <http://packages.debian.org/postgresql>`_ , if you do not |
40 (or `postgresql <http://packages.debian.org/postgresql>`_ , if you do not |
63 have a dedicated PostgreSQL server.) |
41 have a dedicated PostgreSQL server.) |
64 ‣ `python <http://packages.debian.org/python>`_, |
42 ‣ `python3 <http://packages.debian.org/python3>`_ and |
65 `python-egenix-mxdatetime \ |
43 `python3-psycopg2 <http://packages.debian.org/python3-psycopg2>`_ |
66 <http://packages.debian.org/python-egenix-mxdatetime>`_ |
|
67 and `python-psycopg2 <http://packages.debian.org/python-psycopg2>`_ |
|
68 optionally `python-crypto <http://packages.debian.org/python-crypto>`_ |
|
69 ‣ `gettext <http://packages.debian.org/gettext>`_ |
44 ‣ `gettext <http://packages.debian.org/gettext>`_ |
70 |
45 |
71 FreeBSD |
46 FreeBSD |
72 ^^^^^^^ |
47 ^^^^^^^ |
73 Packages or build from ports: |
48 Packages or build from ports: |
90 |
65 |
91 mail-mta/postfix dovecot-sasl postgres -pam sasl |
66 mail-mta/postfix dovecot-sasl postgres -pam sasl |
92 net-mail/dovecot postgres -pam pop3d sieve |
67 net-mail/dovecot postgres -pam pop3d sieve |
93 dev-db/postgresql-server -perl |
68 dev-db/postgresql-server -perl |
94 |
69 |
95 OpenBSD (5.x) |
70 OpenBSD (5.2) |
96 ^^^^^^^^^^^^^ |
71 ^^^^^^^^^^^^^ |
97 Packages |
72 Packages |
98 ‣ postfix-2.x.y-pgsql |
73 ‣ postfix-2.x.y-pgsql |
99 ‣ dovecot-2.x.y and dovecot-postgresql-2.x.y |
74 ‣ dovecot-2.x.y and dovecot-postgresql-2.x.y |
100 ‣ postgresql-client |
75 ‣ postgresql-client |
101 ‣ python-2.7.x, py-psycopg2 and optionally py-crypto |
76 ‣ python-3.2.x |
|
77 |
|
78 Build from source |
|
79 ‣ Psycopg_ |
102 |
80 |
103 Or build the above mentioned software from ports. |
81 Or build the above mentioned software from ports. |
104 |
82 |
105 openSUSE Linux |
83 openSUSE Linux |
106 ^^^^^^^^^^^^^^ |
84 ^^^^^^^^^^^^^^ |
107 ‣ postfix and postfix-postgresql |
85 ‣ postfix and postfix-postgresql |
108 ‣ postgresql-server and postgresql |
86 ‣ postgresql-server and postgresql |
109 ‣ dovecot |
87 ‣ dovecot |
110 ‣ python and pyPgSQL optionally python-crypto |
88 ‣ python and pyPgSQL optionally python-crypto |
111 |
89 |
112 |
|
113 .. rubric:: Footnotes |
|
114 .. [#] Beginning with version 0.7.0 of vmm support for pyPgSQL will be dropped. |
|
115 |
|
116 .. include:: ../ext_references.rst |
90 .. include:: ../ext_references.rst |