Dovecot is IMAP and POP3 server, install with:
pacman -Sy dovecot
NOTE: This page is for the Maildir in the home directory and is for plain no ssl login and for the system user:
sudo maildirmake.dovecot /home/mailuser/Maildir
sudo chown -R mailuser:mailuser /home/mailuser/Maildir
Just copy these files to thier folders and restart the dovecot service:
systemctl restart dovecot
And test the dovecot imap with telnet.
ssl = no
Configure the /etc/dovecot/conf.d/10-master.conf for exim server:
# Dovecot master configuration
# IMAP login service
service imap-login {
inet_listener imap {
port = 143
}
inet_listener imaps {
port = 0
}
}
service pop3-login {
inet_listener pop3 {
port = 110
}
}
# IMAP service
#service imap {
#}
# Authentication service
service auth {
# Socket for Dovecot processes (IMAP, doveadm)
unix_listener auth-userdb {
mode = 0666
user = exim
group = mail
}
# Socket for Dovecot clients (IMAP login, doveadm)
unix_listener auth-client {
mode = 0666
user = dovecot
group = mail
}
# Optional: Socket for Exim SASL authentication
unix_listener /var/spool/exim/auth-client {
mode = 0666
user = root
group = mail
}
}
# Login process (internal)
service login {
}
# Indexer (internal)
service indexer {
}
# Anvil (rate-limiting)
service anvil {
}
create /etc/dovecot/conf.d/10-auth.conf:
auth_username_format = %{user}
auth_allow_cleartext = yes
auth_mechanisms = plain login
auth_verbose = yes
auth_debug = yes
auth_debug_passwords = yes
!include auth-system.conf.ext
create /etc/dovecot/conf.d/10-mail.conf:
# Dovecot 10-mail.conf
mail_driver = maildir
mail_path = ~/Maildir
first_valid_uid = 1000
mail_access_groups = mail
namespace inbox {
inbox = yes
separator = /
}
create /etc/dovecot/conf.d/10-logging.conf:
info_log_path = /var/log/dovecot-info.log
debug_log_path = /var/log/dovecot-debug.log
mail_debug = yes
auth_verbose = yes
auth_debug = yes
log_timestamp = "%Y-%m-%d %H:%M:%S "
create /etc/dovecot/conf.d/auth-system.conf.ext:
passdb pam {
session = yes
service_name = dovecot
failure_show_msg = yes
}
userdb passwd {
fields_import_all = no
fields {
uid = %{passwd:uid}
gid = %{passwd:gid}
home = /home/%{user | username}/Maildir
mail_driver = maildir
mail_path = /home/%{user | username}/Maildir
}
}
create /etc/dovecot/conf.d/15-mailboxes.conf:
namespace inbox {
mailbox Drafts {
special_use = \Drafts
}
mailbox Junk {
special_use = \Junk
}
mailbox Trash {
special_use = \Trash
}
mailbox Sent {
special_use = \Sent
}
mailbox "Sent Messages" {
special_use = \Sent
}
}
create /etc/dovecot/conf.d/20-imap.conf:
protocol imap {
mail_plugins =
}
create /etc/dovecot/conf.d/10-director.conf:
service imap-login {
inet_listener imap {
port = 143
}
}
service pop3-login {
}
Finally create /etc/dovecot/dovecot.conf:
dovecot_config_version = 2.4.2
dovecot_storage_version = 2.4.2
base_dir = /run/dovecot
!include conf.d/*.conf
!include_try local.conf
protocols {
imap = yes
lmtp = no
}
mail_driver = maildir
mail_path = ~/Maildir
mail_uid = %{user}
mail_gid = mail
namespace inbox {
inbox = yes
separator = /
}
auth_username_format = %{user}
Open the /var/run/dovecot check the ownership of auth-client it should be:
ls al /run/dovecot | grep auth-client
srw-rw-rw- 1 dovecot mail 0 Nov 6 10:09 auth-client
check if dovecot is working with telnet:
telnet localhost 143
Now run this command for the user login:
a login username password
Now login to the imap client the login details will be printed in the terminal.