* Written for CentOS 7.1, Dovecot 2.2.10. * Users are system users (in `/etc/aliases`) * Mailbox style is `Maildir` (in their home folders.) * Certificates are [Comodo PositiveSSLs from NameCheap](https://www.namecheap.com/security/ssl-certificates/domain-validation.aspx) ## Pre-Flight Getting your mail is not something which can always be done via telnet (insecure) or SSH (e.g. in the case of virtual accounts.)[^1] [Dovecot](http://www.dovecot.org/) allows you to get your mail using the POP3 and/or IMAP protocols. ### On SSL * The Dovecot instance will use POP3S and IMAPS in addition to POP3 and IMAP. When TLS properly implemented/initiated with the latter pair, there's really no reason why the former would be required. Seems to be [some](http://wiki.dovecot.org/SSL) [debate](https://support.google.com/mail/answer/1074635?hl=en&uls=en) about this. * The Comodo certificates were chosen since they would [work with Gmail](http://www.tomsguide.com/us/Gmail-SSL-POP3-Certificate-Self-Signed,news-16468.html) and most other MUAs. ## Installation yum install dovecot systemctl enable dovecot ## Configuration Turn off SSL (for now) in `/etc/dovecot/conf.d/10-ssl.conf`. ssl = no ### Initial Configuration Edit `/etc/dovecot/dovecot.conf` and set the protocols you want to serve protocols = imap pop3 Listen on IPv4 and IPv6 interfaces listen = *, :: Location for run time data base_dir = /var/run/dovecot/ Now, in `/etc/dovecot/conf.d/10-mail.conf`, tell Dovecot where to find the messages mail_location = maildir:~/Maildir Start the service and make sure it's running [root@example ~]# systemctl start dovecot [root@example ~]# netstat -tulpn | grep dovecot tcp   0      0 0.0.0.0:110      0.0.0.0:*         LISTEN      7183/dovecot tcp   0      0 0.0.0.0:143      0.0.0.0:*         LISTEN      7183/dovecot tcp   0      0 :::110           :::*              LISTEN      7183/dovecot tcp   0      0 :::143           :::*              LISTEN      7183/dovecot ### Testing You can now telnet to either ports 110 ([POP3](http://www.anta.net/misc/telnet-troubleshooting/pop.shtml)) or 143 ([IMAP](http://www.anta.net/misc/telnet-troubleshooting/imap.shtml)). The syntaxes differ quite a bit. Make sure firewall is poked :) ### Securing Now we use TLS with the POP3 and IMAP ports. All authentication and message transfer will be done only over a secure connection. Edit `/etc/dovecot/conf.d/10-ssl.conf` to mandate SSL ssl = required And configure the certificates and keys you will use ssl_cert =