Перейти к содержанию

Самый (наверное) простой почтовый сервер на Debian Linux

В этой заметке описывается минималистичная установка почтового сервера (Postfix + Dovecot) для обслуживания пользователей только в локальной сети. Используются системные учетные записи пользователей. Почтовые сообщения хранятся в домашних директориях пользователей. Шифрование трафика не применяется.

Такой сервер может быть полезен, например, в тестовых средах, а также в случаях, когда клиентские приложения не поддерживают защищенные соединения.

Установка пакетов и начальная конфигурация

sudo apt install postfix dovecot-pop3d

При установке пакета postfix будет запущена процедура предварительной настройки, в ходе которой будет запрошен тип конфигурации: выберите "No configuration".

Для только что установленной Debian Linux выполните:

echo `hostname` | sudo tee -a /etc/mailname

Отредактируйте файлы конфигурации Postfix и Dovecot.

Содержимое /etc/postfix/main.cf:

smtpd_banner = $myhostname
# biff = no
# append_dot_mydomain = no
# rsmtpeadme_directory = no
compatibility_level = 3.6
# smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = mail.home.local
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, mail.home.local, localhost.home.local, , localhost, home.local
# mailbox_size_limit = 0
# recipient_delimiter = +
inet_interfaces = 192.168.20.160
inet_protocols = ipv4
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
home_mailbox = Maildir/

Содержимое /etc/dovecot/dovecot.conf:

mail_location = maildir:~/Maildir:LAYOUT=fs
protocols = pop3
disable_plaintext_auth = no
userdb {
  driver = passwd
}
auth_username_format = %n
passdb {
  driver = pam
}
service auth {
  unix_listener /var/spool/postfix/private/auth {
    mode = 0666
    user = postfix
    group = postfix
  }
}
ssl = no

Проинициализируйте базу данных псевдонимов пользователей:

sudo newaliases

В завершение перезапустите сервисы:

sudo systemctl restart postfix
sudo systemctl restart dovecot

Добавление пользователя

Создайте пользователя:

sudo useradd -m -s /bin/false user
sudo passwd user