Dovecot-2.2.13

Introduction to Dovecot

Dovecot is an Internet Message Access Protocol (IMAP) and Post Office Protocol (POP) server, written primarily with security in mind. Dovecot aims to be lightweight, fast and easy to set up as well as highly configurable and easily extensible with plugins.

This package is known to build and work properly using an LFS-7.6 systemd platform.

Package Information

Dovecot Dependencies

Optional

OpenSSL-1.0.1i, Linux-PAM-1.1.8, OpenLDAP-2.4.39, PostgreSQL-9.3.5, MariaDB-10.0.13, SQLite-3.8.6, and CLucene-2.3.3.4

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/dovecot

Installation of Dovecot

There should be dedicated users and groups for unprivileged Dovecot processes and for processing users' logins. Issue the following commands as the root user:

groupadd -g 42 dovecot &&
useradd -c "Dovecot unprivileged user" -d /dev/null -u 42 \
        -g dovecot -s /bin/false dovecot &&
groupadd -g 43 dovenull &&
useradd -c "Dovecot login user" -d /dev/null -u 43 \
        -g dovenull -s /bin/false dovenull

Install Dovecot by running the following commands:

./configure --prefix=/usr \
            --sysconfdir=/etc \
            --localstatedir=/var \
            --docdir=/usr/share/doc/dovecot-2.2.13 \
            --disable-static \
            --with-systemdsystemunitdir=/lib/systemd/system &&
make

To test the results, issue make check.

Now, as the root user:

make install

Command Explanations

--disable-static: This switch prevents installation of static versions of the libraries.

--with-systemdsystemunitdir=/lib/systemd/system: This switch is used to set the correct installation directory for systemd units.

--with-ldap: This switch enables OpenLDAP authentication support.

--with-pgsql: This switch enables PostgreSQL authentication support.

--with-mysql: This switch enables MySQL authentication support.

--with-sqlite: This switch enables SQLite authentication support.

--with-lucene: This switch enables CLucene full text search support.

Configuring Dovecot

Config Files

/etc/dovecot/dovecot.conf, /etc/dovecot/conf.d/*, and /etc/dovecot/local.conf

Configuration Information

Copy an example configuration, which you can use as a starting point:

cp -rv /usr/share/doc/dovecot-2.2.13/example-config/* /etc/dovecot

The following configuration is a simple proof of concept with IMAP service using local users for authentication and mailbox location. Reading files from the conf.d directory is commented out since the included example configuration requires OpenSSL and Linux PAM.

sed -i '/^\!include / s/^/#/' /etc/dovecot/dovecot.conf &&
chmod -v 1777 /var/mail &&
cat > /etc/dovecot/local.conf << "EOF"
protocols = imap
ssl = no
# The next line is only needed if you have no IPv6 network interfaces
listen = *
mail_location = mbox:~/Mail:INBOX=/var/mail/%u
userdb {
  driver = passwd
}
passdb {
  driver = shadow
}
EOF

You will definitely want to read the official documentation at http://wiki2.dovecot.org/ if you plan to use Dovecot in production environment.

Systemd Units

To start the dovecot daemon at boot, install the systemd unit from the blfs-systemd-units-20140907 package by running the following command as the root user:

systemctl enable dovecot

Contents

Installed Programs: doveadm, doveconf, dovecot, dsync, and various internal programs
Installed Libraries: various internal plugins
Installed Directories: /etc/dovecot, /usr/include/dovecot, /usr/lib/dovecot, /usr/libexec/dovecot, and /usr/share/doc/dovecot-2.2.13

Short Descriptions

doveadm

is the Dovecot administration tool.

doveconf

is Dovecot's configuration dumping utility.

dovecot

is the IMAP and POP server.

dsync

is Dovecot's mailbox synchronization utility.

Last updated on 2014-08-24 14:59:27 -0700