ProCloud Yandex
19.01.2024
читать 5 минут

Установка и настройка Postfix, Dovecot и Roundcube на Ubuntu

/upload/iblock/95e/3yzjr4wwmxf70hanez1xjdrvvl0fnwze/Sover_opt.jpeg

Postfix – это программа, которая занимается обработкой и отправкой электронной почты, а Dovecot – инструмент для получения и хранения электронной почты на сервере. Обе программы имеют открытый исходный код и могут быть использованы бесплатно. Они также хорошо интегрируются с Roundcube, который является веб-интерфейсом для работы с почтой, и поддерживают технологию Ajax, которая обеспечивает быструю и эффективную работу с почтой.

В этом руководстве мы рассмотрим, как происходит установка и настройка почтового сервера Postfix и Dovecot на операционной системе Linux: обновляем систему, устанавливаем необходимые пакеты, затем создаем пользователя и задаем нужные настройки.

Предварительные условия

Почтовый сервер на Linux устанавливается в этом руководстве с использованием следующих исходных значений:

  1. Сервер Ubuntu 20.04, настроенный с полным доменным именем (FQDN).
  2. Пользователь без полномочий root с привилегиями sudo.
  3. Стек LAMP с установленным сертификатом SSL. В этом руководстве используется бесплатный сертификат Let's Encrypt.
  4. Проверьте состояние исходящего порта сервера.

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

Установите и настройте Postfix

Установка Postfix Ubuntu происходит в соответствии со следующим алгоритмом:

  1. Подключитесь по SSH к серверу и установите почтовый сервер Postfix.
  2. Вы увидите экран конфигурации Postfix. Нажмите TAB+ENTER для продолжения.
  3. Далее выберите сайт и снова нажмите конфигурацию клавиш для продолжения.
  4. Введите название домена.
  5. Создайте копию файла main.cf на случай, если что-то пойдет не так и можно было вернуться к началу, а затем создайте новый.
  6. Введите информацию ниже в новый файл. Замените example.com своим доменным именем во всем файле. Убедитесь, что значения smtpd tls cert_file и smtpd tls key_file указывают на ваш SSL-сертификат.

    smtpd_banner = $myhostname ESMTP $mail_name
    biff = no
    append_dot_mydomain = no
    readme_directory = no
    # TLS parameters
    smtp_use_tls = yes
    smtp_tls_security_level = may
    smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
    smtpd_use_tls = yes
    smtpd_tls_security_level = may
    smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
    smtpd_tls_cert_file = /etc/letsencrypt/live/example.com/fullchain.pem
    smtpd_tls_key_file = /etc/letsencrypt/live/example.com/privkey.pem
    smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated,  reject_unauth_destination
    smtpd_sasl_auth_enable = yes
    smtpd_sasl_type = dovecot
    smtpd_sasl_path = private/auth
    virtual_transport = lmtp:unix:private/dovecot-lmtp
    virtual_mailbox_domains = /etc/postfix/virtual_mailbox_domains
    myhostname = mail.example.com
    myorigin = /etc/mailname
    mydestination =  localhost.$mydomain, localhost
    relayhost =
    mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
    mailbox_size_limit = 0
    recipient_delimiter = +
    inet_interfaces = all
    inet_protocols = all
    alias_maps = hash:/etc/aliases
    alias_database = hash:/etc/aliases
  7. Сохраните и закройте файл.

Создайте домены виртуальных почтовых ящиков

Настройка Postfix также требует создания доменов виртуальных почтовых ящиков. Данный процесс выполняется следующим образом:

  1. Создайте соответствующий файл /etc/postfix/virtual_mailbox_domains.
  2. Впишите ваше доменное имя: example.com #domain.
  3. Используйте команду postmap, чтобы изменить настройки virtual_mailbox_domains на формат, распознаваемый Postfix Roundcube. Делайте это каждый раз при редактуре файла.
  4. Отредактируйте файл конфигурации /etc/postfix/master.cf, чтобы включить службу SMTP.
  5. Найдите запись #submission inet n - y - - smtpd и удалите решетку в самом начале.
  6. Сохраните изменения, после чего можете закрыть файл.

Установите и настройте Dovecot

Dovecot MySQL устанавливается следующим образом:

  1. Установите пакет Dovecot, запустив соответствующую команду. Там может быть несколько пакетов. В этом случае запускаем их все.
  2. Отредактируйте файл /etc/dovecot/conf.d/10-mail.conf и указав Dovecot в каком каталоге искать почту.
  3. Запись mail_location = mbox:~/mail:INBOX=/var/mail/%u измените на mail_location = maildir:/var/mail/vhosts/%d/%n (%d – домен, %n – пользователи).
  4. Создайте подкаталог и замените example.com своим доменным именем. Повторите приведенную выше команду для каждого другого домена, от которого планируется получать письма на своем сервере, заменяя example.com именем домена.
  5. Создайте пользователя и группу Vmail для службы Dovecot. Назначьте право собственности на /var/mail/vhosts/ пользователю и группе vmail.
  6. Отредактируйте файл Dovecot 10-master.conf.
  7. В следующих записях удалите решетки.

    inet_listener imaps {
    #port = 993
    #ssl = yes
    }


    inet_listener pop3s {
    #port = 995
    #ssl = yes
    }
  8. Включите службу lmtp.
  9. Локальный почтовый сервер должен содержать правильную настройку сокетов аутентификации Doveco.
  10. Сохраните изменения и закройте файл.
  11. Настройте Dovecot, чтобы гарантировать безопасный вход.
  12. В записи # disable_plaintext_auth = yes удалите решетку.
  13. В auth_mechanisms = plain в конце добавьте слово login.
  14. Включите аутентификацию LDAP для Dovecot, чтобы пользователи могли аутентифицироваться с помощью своих учетных записей LDAP.
  15. В строке #!include auth-passwdfile.conf.ext удалите решетку.
  16. Сохранитесь и закройте файл, с которым работали.
  17. Отредактируйте auth-passwdfile.conf.ext, сохраните его и закройте.
  18. Создайте /etc/dovecot/dovecot-users для хранения паролей.
  19. Включите поддержку SSL в Dovecot для обеспечения безопасности передачи данных.
  20. Сохраните изменения, а потом закройте файл.

Установите и настройте Roundcube

Ubuntu почтовый сервер почти настроен. Осталось немного.

  1. Выполните инсталляцию почтового клиента Roundcube.
  2. Нажмите ENTER, чтобы настроить базу данных.
  3. На следующем экране введите пароль MySQL.
  4. Откройте файл конфигурации SSL вашего веб-сайта из каталога /etc/apache2/sites-enabled. Запустите команду $ sudo nano /etc/apache2/sites-enabled/example.com-le-ssl.conf и замените example.com своим доменным именем.
  5. Добавьте запись Alias/mail/usr/share/roundcube после записи ServerName example.com
  6. Сохраните файл и закройте его, после чего перезапустите утилиту.

Проверьте службу электронной почты

Чтобы войти на сервер электронной почты с помощью Roundcube, введите https://mail.example.com/mail, замените example своим доменным именем. Введите имя пользователя и пароль, которые вы определили в файле паролей Dovecot, и войдите в систему. После входа в систему вы можете отправлять и получать электронные письма с панели инструментов Roundcube.

Новости
27 декабря 202327.12.2023
Продуктовый дайджест 2023
20 декабря 202320.12.2023
читать 2 минутычитать 2 мин
Новые тарифы и возможности