Установите полный почтовый сервер с Postfix и веб-почтой в Debian 9

  1. Требования
  2. Шаг 1. Начальные настройки почтового сервера Postfix в Debian
  3. Шаг 2: Установите почтовый сервер Postfix на Debian
  4. Шаг 3: Настройте почтовый сервер Postfix в Debian
  5. Шаг 3: Тест почтового сервера Postfix в Debian
  6. Шаг 4: Установите и настройте Dovecot IMAP в Debian
  7. Шаг 5: Установите и настройте веб-почту в Debian

Из этого туториала вы узнаете, как установить и настроить полный почтовый сервер с Postfix в выпуске Debian 9. Также будет рассказано, как настроить почтовые ящики учетных записей с использованием Dovecot для получения и составления писем по протоколу IMAP . Пользователи будут использовать интерфейс Rainloop Webmail в качестве почтового агента для обработки почты.

Требования

  1. Минимальная установка Debian 9
  2. Статический IP-адрес, настроенный для сетевого интерфейса
  3. Местное или публичное зарегистрированное доменное имя.

В этом руководстве мы будем использовать учетную запись частного домена для настройки почтового сервера, настроенного только через файл / etc / hosts , без какого-либо DNS-сервера, участвующего в обработке разрешения DNS.

Шаг 1. Начальные настройки почтового сервера Postfix в Debian

1. На первом шаге войдите в систему на своем компьютере с учетной записью с правами root или напрямую от имени пользователя root и убедитесь, что ваша система Debian обновлена ​​до самых последних обновлений безопасности и выпусков ПО и пакетов, выполнив следующую команду.

# apt-get update # apt-get update

2. На следующем шаге установите следующие программные пакеты, которые будут использоваться для системного администрирования, введя следующую команду.

# apt-get install curl net-tools bash-завершение wget lsof nano

3. Затем откройте файл /etc/host.conf для редактирования в вашем любимом текстовом редакторе и добавьте следующую строку в начале файла, чтобы разрешение DNS сначала считывало файл hosts.

заказать хосты, связать мульти на

4. Затем настройте полное доменное имя своего компьютера и добавьте свое доменное имя и полное системное имя в файл / etc / hosts . Используйте системный IP-адрес для разрешения имени домена и полного доменного имени, как показано на снимке экрана ниже.

Замените IP-адрес и домен соответственно. После этого перезагрузите компьютер, чтобы правильно применить имя хоста.

# hostnamectl set-hostname mail.tecmint.com # echo "192.168.0.102 tecmint.com mail.tecmint.com" >> / etc / hosts # init 6 # hostnamectl set-hostname mail

Установить имя хоста в Debian

5. После перезагрузки проверьте правильность настройки имени хоста , введя следующие серии команд. Имя домена, полное доменное имя, имя хоста и IP-адрес системы должны быть возвращены командой hostname.

# hostname # hostname -s # hostname -f # hostname -A # hostname -i # cat / etc / hostname # hostname # hostname -s # hostname -f # hostname -A # hostname -i # cat / etc / hostname

Проверьте имя хоста в Debian

6. Также проверьте, правильно ли домен отвечает на локальные запросы, введя приведенные ниже команды. Имейте в виду, что домен не будет воспроизводить удаленные запросы, отправленные другими системами в вашей сети, поскольку мы не используем DNS-сервер.

Однако домен должен отвечать из других систем, если вы вручную добавляете имя домена в каждый из их файла / etc / hosts . Также помните, что разрешение DNS для домена, добавленного в файл / etc / hosts , не будет работать через хозяин , Nslookup или же копать команды ,

# getent ahosts mail.tecmint.com # ping tecmint.com # ping mail.tecmint.com # getent ahosts mail

Запрос домена DNS

Шаг 2: Установите почтовый сервер Postfix на Debian

7. Самым важным программным обеспечением, необходимым для правильной работы почтового сервера, является агент MTA . MTA - это программное обеспечение, встроенное в архитектуру сервер-клиент, которое отвечает за передачу почты между почтовыми серверами.

В этом руководстве мы будем использовать Postfix в качестве агента пересылки почты. Чтобы установить постфикс в Debian из официальных репозиториев, выполните следующую команду.

# apt-get install postfix

8. В процессе установки Postfix вам будет задан ряд вопросов. В первом приглашении выберите параметр « Интернет-сайт» в качестве общего типа конфигурации Postfix и нажмите клавишу [enter], чтобы продолжить, а затем добавьте свое доменное имя к имени системной почты, как показано на следующих снимках экрана.

Postfix Mail Configuration

Postfix Mail Configuration

Настроить почтовый домен Postfix

Шаг 3: Настройте почтовый сервер Postfix в Debian

9. Затем сделайте резервную копию основного файла конфигурации Postfix и настройте Postfix для своего домена с помощью следующих команд.

# cp /etc/postfix/main.cf],.backup} # nano /etc/postfix/main.cf

Теперь настройте конфигурацию Postfix в файле main.cf, как показано.

# См. /Usr/share/postfix/main.cf.dist для получения более полной версии с комментариями smtpd_banner = $ myhostname ESMTP biff = no # добавление .domain - работа MUA. append_dot_mydomain = нет readme_directory = нет # См. http://www.postfix.org/COMPATIBILITY_README.html - по умолчанию 2 для # свежих установок. compatibility_level = 2 # параметры TLS smtpd_tls_cert_file = / и т.д. / SSL / сертификаты / SSL-CERT-snakeoil.pem smtpd_tls_key_file = / и т.д. / SSL / частных / SSL-CERT-snakeoil.key smtpd_use_tls = да smtpd_tls_session_cache_database = ВТКЕЕ: $ {data_directory} / smtpd_scache smtp_tls_session_cache_database = btree: $ {data_directory} / smtp_scache # См. /usr/share/doc/postfix/TLS_README.gz в пакете postfix-doc для # информации о включении SSL в клиенте smtp. smtpd_relay_restrictions = allow_mynetworks allow_sasl_authenticated defer_unauth_destination myhostname = mail.debian.lan mydomain = debian.lan alias_maps = hash: / etc / aliases alias_database = hash: / etc / aliases #myorigin = / мой_имя_приложения $ myhostname $ myhostname $ myhostdo $ mydomain, localhost. $ mydomain, localhost relayhost = mynetworks = 127.0.0.0/8, 192.168.1.0/24 mailbox_size_limit = 0 receient_delimiter = + inet_interfaces = все #inet_protocols = все inet_protocols = ipv4 home_mailbox = maildir_s_slt_stp_sht_Shtp-тип dovecot smtpd_sasl_path = private / auth smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = безымянный smtpd_sasl_local_domain = $ myhostname smtpd_recipient_restrictions = allow_mynetworks, заявка

Замените переменные myhostname , mydomain и mynetworks в соответствии с вашими собственными конфигурациями.

Вы можете запустить команду postconf -n , чтобы выгрузить основной файл конфигурации Postfix и проверить возможные ошибки, как показано на скриншоте ниже.

# postconf -n # postconf -n

Postfix Mail Configuration

10. После установки всех конфигураций перезапустите демон Postfix, чтобы применить изменения, и проверьте, работает ли служба, проверив, привязывает ли главная служба Postfix к порту 25 , запустив команда netstat ,

# systemctl перезапустить постфикс # systemctl статус постфикс # netstat -tlpn # systemctl перезапустить постфикс # systemctl статус постфикс # netstat -tlpn

Запустить и проверить Postfix

Шаг 3: Тест почтового сервера Postfix в Debian

11. Чтобы проверить, может ли postfix обрабатывать пересылку почты, сначала установите пакет mailutils , выполнив следующую команду.

# apt-get install mailutils

12. Далее, используя утилита командной строки почты отправьте письмо в учетную запись root и проверьте, была ли почта успешно передана, выполнив приведенную ниже команду, чтобы проверить почтовую очередь и вывести список содержимого корневого каталога Maildir.

# echo "mail body" | mail -s "test mail" root # mailq # mail # ls Maildir / # ls Maildir / new / # cat Maildir / new / [TAB] # echo mail body |  mail -s test mail root # mailq # mail # ls Maildir / # ls Maildir / new / # cat Maildir / new / [TAB]

Тестовый постфикс отправкой почты

13. Вы также можете проверить, каким образом почта была обработана службой postfix, проверив содержимое файла журнала почты, выполнив следующую команду.

# tailf /var/log/mail.log

Шаг 4: Установите и настройте Dovecot IMAP в Debian

14. Агент доставки почты, который мы будем использовать в этом руководстве для доставки сообщений электронной почты в почтовые ящики локального получателя, - это Dovecot IMAP . IMAP - это протокол, который работает на 143 и 993 ( SSL ) портах, который отвечает за чтение, удаление или перемещение почты между несколькими почтовыми клиентами.

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

Это не относится к протоколу POP3 . Протокол POP3 не позволит пользователям создавать несколько каталогов на сервере для сортировки вашей почты. У вас есть только папка «Входящие» для управления почтой.

Чтобы установить главный сервер Dovecot и пакет Dovecot IMAP в Debian, выполните следующую команду.

# apt установить dovecot-core dovecot-imapd

15. После того, как Dovecot был установлен в вашей системе, откройте следующие файлы dovecot для редактирования и внесите следующие изменения. Сначала откройте файл /etc/dovecot/dovecot.conf , найдите и раскомментируйте следующую строку:

слушай = *, :: слушай = *, ::

Настройте соединение Dovecot

16. Затем откройте /etc/dovecot/conf.d/10-auth.conf для редактирования, найдите и измените строки ниже, чтобы они выглядели так, как показано в приведенном ниже фрагменте.

disable_plaintext_auth = нет auth_mechanisms = простой вход

17. Откройте файл /etc/dovecot/conf.d/10-mail.conf и добавьте следующую строку, чтобы использовать расположение Maildir вместо формата Mbox для хранения электронной почты.

mail_location = maildir: ~ / Maildir mail_location = maildir: ~ / Maildir

Настроить Postfix Maildir

18. Последний файл для редактирования - /etc/dovecot/conf.d/10-master.conf . Здесь найдите блок Postfix smtp-auth и внесите следующие изменения:

# Postfix smtp-auth unix_listener / var / spool / postfix / private / auth {mode = 0666 user = postfix group = postfix} # Postfix smtp-auth unix_listener / var / spool / postfix / private / auth {mode = 0666 user = postfix group = postfix}

Настроить Postfix SMTP Auth

19. После того, как вы внесли все вышеперечисленные изменения, перезапустите демон Dovecot , чтобы отразить изменения, проверьте его состояние и убедитесь, что Dovecot привязан к порту 143 , выполнив следующие команды.

# systemctl restart dovecot.service # systemctl status dovecot.service # netstat -tlpn # systemctl restart dovecot

Запустите и проверьте Dovecot

20. Проверьте правильность работы почтового сервера, добавив в систему новую учетную запись пользователя, и используйте команду telnet или netcat для подключения к SMTP-серверу и отправки нового письма новому добавленному пользователю, как показано в приведенных ниже выдержках.

# adduser matie # nc localhost 25 # ehlo localhost mail from: root rcpt to: matie data subject: тело сообщения теста. уволиться # adduser matie # nc localhost 25 # ehlo localhost mail from: root rcpt to: matie data subject: тело сообщения теста

Тестовый постфикс SMTP

21. Проверьте, поступило ли письмо в новый почтовый ящик пользователя, перечислив содержимое домашнего каталога пользователя, как показано на снимке экрана ниже.

# ls / home / test_mail / Maildir / new / # ls / home / test_mail / Maildir / new /

Подтвердить почту пользователя

22. Кроме того, вы можете подключиться к почтовому ящику пользователя из командной строки по протоколу IMAP, как показано в приведенной ниже выдержке. Новое письмо должно быть указано в папке «Входящие» пользователя.

# nc localhost 143 x1 LOGIN matie user_password x2 LIST "" "*" x3 SELECT Входящие x4 ВЫХОД

Шаг 5: Установите и настройте веб-почту в Debian

23. Пользователи будут управлять своей электронной почтой через клиент Rainloop Webmail . Перед установкой почтового агента Rainloop сначала установите HTTP- сервер Apache и следующие модули PHP, необходимые для Rainloop, введя следующую команду.

# apt install apache2 php7.0 libapache2-mod-php7.0 php7.0-curl php7.0-xml

24. После установки веб-сервера Apache измените путь к каталогу / var / www / html / directory, удалите файл index.html и выполните следующую команду, чтобы установить Rainloop Webmail.

# cd / var / www / html / # rm index.html # curl -sL https://repository.rainloop.net/installer.php | PHP

25. После того, как клиент Rainloop Webmail будет установлен в системе, перейдите к IP-адресу вашего домена и войдите в веб-интерфейс администратора Rainloop со следующими учетными данными по умолчанию:

http://192.168.0.102/?admin Пользователь: admin Пароль: 12345 http://192

Postfix Webmail Логин

26. Перейдите в меню « Домены» , нажмите кнопку « Добавить домен» и добавьте настройки своего доменного имени, как показано на скриншоте ниже.

Добавить домен в веб-почте

27. После того, как вы закончили добавлять настройки своего домена, выйдите из интерфейса администратора Ranloop и наведите браузер на свой IP-адрес, чтобы войти в клиент веб-почты с учетной записью электронной почты.

После успешного входа в веб-почту Rainloop вы должны увидеть электронное письмо, отправленное ранее из командной строки, в папку «Входящие».

http://192.168.0.102 Пользователь: [электронная почта защищена] Pass: пароль от matie http://192

Postfix Webmail Логин пользователя

Postfix Webmail Логин пользователя

Postfix Webmail User Inbox

27. Чтобы добавить новую проблему пользователя команда useradd с флагом -m для создания домашнего каталога пользователя. Но сначала убедитесь, что вы настроили переменную пути Maildir для каждого пользователя с помощью следующей команды.

# echo 'export MAIL = $ HOME / Maildir' >> / etc / profile # useradd -m user3 # passwd user3

28. Если вы хотите перенаправить всю электронную почту root на определенную локальную учетную запись почты из системы, выполните следующие команды. Все письма, перенаправленные или предназначенные для корневой учетной записи, будут перенаправлены вашему почтовому пользователю, как показано на рисунке ниже.

# echo "root: test_mail" >> / etc / aliases # newaliases

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