Dovecot-2.3.19.1
      
      
        
          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-11.2
          platform.
        
        
          Package Information
        
        
        
          Additional Downloads
        
        
        
          Dovecot Dependencies
        
        
          Required
        
        
          libtirpc-1.3.3
        
        
          Optional
        
        
          CLucene-2.3.3.4, ICU-71.1, libcap-2.65 with PAM, Linux-PAM-1.5.2, Lua-5.4.4, MariaDB-10.6.9 or MySQL, OpenLDAP-2.6.3,
          PostgreSQL-14.5, SQLite-3.39.2, Valgrind-3.19.0, xfsprogs-5.19.0, Cassandra, lz4, stemmer and
          libsodium
        
        
          User Notes: https://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
        
          First, apply a patch to fix problems with OpenSSL-3:
        
        patch -Np1 -i ../dovecot-2.3.19.1-openssl3_fixes-1.patch
        
          Next, apply a patch to fix a security vulnerability:
        
        patch -Np1 -i ../dovecot-2.3.19.1-security_fix-1.patch
        
          Install Dovecot by running the
          following commands:
        
        CPPFLAGS="-I/usr/include/tirpc" \
LDFLAGS+=" -ltirpc" \
./configure --prefix=/usr                          \
            --sysconfdir=/etc                      \
            --localstatedir=/var                   \
            --docdir=/usr/share/doc/dovecot-2.3.19.1 \
            --disable-static                       &&
make
        
          To test the results, issue make -k
          check.
        
        
          Now, as the root user:
        
        make install
       
      
        
          Command Explanations
        
        
          CPPFLAGS=...
          LDFLAGS+=...: build with libtirpc instead of the
          recently removed RPC code provided by GlibC.
        
        
          --disable-static: This
          switch prevents installation of static versions of the libraries.
        
        
          --with-ldap: This switch enables
          OpenLDAP authentication support.
        
        
          --with-pgsql: This switch enables
          PostgreSQL database support.
        
        
          --with-mysql: This switch enables
          MySQL database support.
        
        
          --with-sqlite: This switch enables
          SQLite database support.
        
        
          --with-lucene: This switch enables
          CLucene full text search support.
        
        
          --with-lua: This switch enables
          Lua plugin support. This includes
          a mail and push notification plugin.
        
       
      
        
          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.3.19.1/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 a
            production environment.
          
         
        
          
            
          
          
             Systemd Unit
          
          
            To start the dovecot daemon at boot, enable
            the previously installed systemd unit with the following command:
          
          systemctl enable dovecot
         
       
      
        
          Contents
        
        
          
            
              Installed Programs:
              doveadm, doveconf, dovecot,
              dovecot-sysreport, and dsync (symbolic link)
            
            
              Installed Libraries:
              various internal plugins in /usr/lib/dovecot
            
            
              Installed Directories:
              /etc/dovecot,
              /usr/{include,lib,libexec,share}/dovecot and
              /usr/share/doc/dovecot-2.3.19.1
            
           
         
        
          
            Short Descriptions
          
          
            
              
              
            
            
              
                | 
                    doveadm
                   | 
                    is the Dovecot
                    administration tool
                   | 
              
                | 
                    doveconf
                   | 
                    is Dovecot's
                    configuration dumping utility
                   | 
              
                | 
                    dovecot
                   | 
                    is the IMAP and POP server
                   | 
              
                | 
                    dovecot-sysreport
                   | 
                    prints system information that is useful to the Dovecot
                    developers when submitting bug reports upstream
                   | 
              
                | 
                    dsync
                   | 
                    is Dovecot's mailbox
                    synchronization utility
                   |