Настройка почтового сервера (Postfix) — различия между версиями

Материал из ARK-HOSTER.RU | Документация хостинга
Перейти к: навигация, поиск
(Новая страница: «= Настройка почтового сервера (Postfix) = == 1. Подготовка системы == * Войдите в систему под уче…»)
(нет различий)

Версия 19:48, 14 октября 2025

Содержание

Настройка почтового сервера (Postfix)

1. Подготовка системы

  • Войдите в систему под учетной записью с правами root или пользователя с правами sudo.
  • Убедитесь, что у вас есть доступ к серверу через SSH или консоль.

2. Установка Postfix =

Установка пакета

1. Обновите список пакетов: sudo apt update

2. Установите Postfix: sudo apt install postfix

3. Установите дополнительные компоненты: sudo apt install mailutils dovecot-core dovecot-imapd dovecot-pop3d

Настройка при установке

1. При установке выберите тип конфигурации:

  • Internet Site - для обычного почтового сервера
  • Internet with smarthost - для использования внешнего SMTP
  • Satellite system - для пересылки почты

2. Введите доменное имя сервера: mail.example.com

3. Базовая настройка Postfix =

Основная конфигурация

1. Отредактируйте основной файл конфигурации: sudo nano /etc/postfix/main.cf

2. Настройте основные параметры:

  1. Основные настройки

myhostname = mail.example.com mydomain = example.com myorigin = $mydomain inet_interfaces = all inet_protocols = ipv4 mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain relayhost = mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 mailbox_size_limit = 0 recipient_delimiter = +

Настройка безопасности

1. Добавьте настройки безопасности:

  1. Настройки безопасности

smtpd_banner = $myhostname ESMTP $mail_name biff = no append_dot_mydomain = no readme_directory = no smtpd_helo_required = yes smtpd_helo_restrictions = permit_mynetworks, reject_invalid_helo_hostname, reject_non_fqdn_helo_hostname

2. Настройте ограничения:

  1. Ограничения

smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination smtpd_sender_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_sender, reject_unknown_sender_domain

4. Настройка аутентификации =

Установка SASL

1. Установите SASL: sudo apt install libsasl2-modules libsasl2-modules-sql

2. Настройте SASL: sudo nano /etc/postfix/sasl/smtpd.conf

3. Добавьте содержимое: pwcheck_method: auxprop auxprop_plugin: sasldb mech_list: PLAIN LOGIN

Настройка аутентификации в Postfix

1. Отредактируйте конфигурацию: sudo nano /etc/postfix/main.cf

2. Добавьте настройки SASL:

  1. SASL настройки

smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous smtpd_sasl_local_domain = $myhostname broken_sasl_auth_clients = yes smtpd_sasl_authenticated_header = yes

3. Настройте TLS:

  1. TLS настройки

smtpd_use_tls = yes smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key smtpd_tls_security_level = may smtp_tls_security_level = may

5. Настройка пользователей =

Создание пользователей

1. Создайте пользователя для почты: sudo useradd -m -s /bin/bash user1

2. Установите пароль: sudo passwd user1

3. Добавьте пользователя в SASL базу данных: sudo saslpasswd2 -c -u example.com user1

4. Проверьте пользователей: sudo sasldblistusers2

Настройка виртуальных пользователей

1. Создайте файл виртуальных пользователей: sudo nano /etc/postfix/virtual_users

2. Добавьте пользователей: user1@example.com user1 user2@example.com user2 admin@example.com admin

3. Создайте базу данных: sudo postmap /etc/postfix/virtual_users

4. Настройте Postfix для виртуальных пользователей: sudo nano /etc/postfix/main.cf

5. Добавьте настройки:

  1. Виртуальные пользователи

virtual_alias_maps = hash:/etc/postfix/virtual_users virtual_mailbox_domains = example.com virtual_mailbox_base = /var/mail/vhosts virtual_mailbox_maps = hash:/etc/postfix/virtual_mailboxes virtual_minimum_uid = 100 virtual_uid_maps = static:5000 virtual_gid_maps = static:5000

6. Настройка Dovecot =

Основная конфигурация

1. Отредактируйте конфигурацию Dovecot: sudo nano /etc/dovecot/dovecot.conf

2. Настройте основные параметры:

  1. Основные настройки

protocols = imap pop3 lmtp listen = *, :: mail_location = maildir:/var/mail/vhosts/%d/%n mail_privileged_group = mail userdb {

   driver = passwd

} passdb {

   driver = pam

}

Настройка IMAP/POP3

1. Настройте IMAP: sudo nano /etc/dovecot/conf.d/10-mail.conf

2. Добавьте настройки: mail_location = maildir:/var/mail/vhosts/%d/%n mail_privileged_group = mail

3. Настройте аутентификацию: sudo nano /etc/dovecot/conf.d/10-auth.conf

4. Добавьте настройки: auth_mechanisms = plain login !include auth-system.conf.ext

7. Настройка SSL/TLS =

Генерация SSL сертификата

1. Создайте приватный ключ: sudo openssl genrsa -out /etc/ssl/private/mail.example.com.key 2048

2. Создайте запрос на сертификат: sudo openssl req -new -key /etc/ssl/private/mail.example.com.key -out /etc/ssl/certs/mail.example.com.csr

3. Создайте самоподписанный сертификат: sudo openssl x509 -req -days 365 -in /etc/ssl/certs/mail.example.com.csr -signkey /etc/ssl/private/mail.example.com.key -out /etc/ssl/certs/mail.example.com.crt

Настройка SSL в Postfix

1. Отредактируйте конфигурацию: sudo nano /etc/postfix/main.cf

2. Обновите настройки TLS:

  1. TLS настройки

smtpd_use_tls = yes smtpd_tls_cert_file = /etc/ssl/certs/mail.example.com.crt smtpd_tls_key_file = /etc/ssl/private/mail.example.com.key smtpd_tls_security_level = may smtp_tls_security_level = may smtpd_tls_protocols = !SSLv2, !SSLv3 smtpd_tls_ciphers = high

Настройка SSL в Dovecot

1. Отредактируйте конфигурацию: sudo nano /etc/dovecot/conf.d/10-ssl.conf

2. Настройте SSL: ssl = yes ssl_cert = </etc/ssl/certs/mail.example.com.crt ssl_key = </etc/ssl/private/mail.example.com.key ssl_protocols = !SSLv2 !SSLv3 ssl_cipher_list = ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384

8. Настройка файрвола =

Настройка UFW

1. Разрешите почтовые порты: sudo ufw allow 25/tcp sudo ufw allow 587/tcp sudo ufw allow 465/tcp sudo ufw allow 993/tcp sudo ufw allow 995/tcp sudo ufw allow 143/tcp sudo ufw allow 110/tcp

2. Проверьте статус: sudo ufw status

Настройка iptables

1. Разрешите почтовые порты: sudo iptables -A INPUT -p tcp --dport 25 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 587 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 465 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 993 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 995 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 143 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 110 -j ACCEPT

2. Сохраните правила: sudo iptables-save > /etc/iptables/rules.v4

9. Управление Postfix =

Основные команды управления

  • Запуск Postfix:

sudo systemctl start postfix

  • Остановка Postfix:

sudo systemctl stop postfix

  • Перезапуск Postfix:

sudo systemctl restart postfix

  • Проверка статуса:

sudo systemctl status postfix

  • Проверка конфигурации:

sudo postfix check

  • Перезагрузка конфигурации:

sudo postfix reload

Управление очередью почты

1. Просмотрите очередь: sudo postqueue -p

2. Очистите очередь: sudo postqueue -f

3. Удалите все письма из очереди: sudo postsuper -d ALL

4. Удалите письма старше определенного времени: sudo postsuper -d ALL deferred

10. Мониторинг и логирование =

Настройка логирования

1. Отредактируйте конфигурацию логирования: sudo nano /etc/rsyslog.d/50-default.conf

2. Добавьте настройки для Postfix:

  1. Postfix logging

mail.* -/var/log/mail.log mail.err -/var/log/mail.err

3. Перезапустите rsyslog: sudo systemctl restart rsyslog

Просмотр логов

1. Просмотрите логи Postfix: sudo tail -f /var/log/mail.log

2. Просмотрите логи Dovecot: sudo tail -f /var/log/dovecot.log

3. Просмотрите системные логи: sudo journalctl -u postfix -f sudo journalctl -u dovecot -f

Создание скрипта мониторинга

1. Создайте скрипт мониторинга: sudo nano /usr/local/bin/mail-monitor.sh

2. Добавьте содержимое:

  1. !/bin/bash
  1. Проверка статуса Postfix

if systemctl is-active --quiet postfix; then

   echo "Postfix is running"

else

   echo "Postfix is not running"
   # Отправка уведомления
   echo "Postfix is down" | mail -s "Mail Server Alert" admin@example.com

fi

  1. Проверка статуса Dovecot

if systemctl is-active --quiet dovecot; then

   echo "Dovecot is running"

else

   echo "Dovecot is not running"
   # Отправка уведомления
   echo "Dovecot is down" | mail -s "Mail Server Alert" admin@example.com

fi

  1. Проверка размера очереди

QUEUE_SIZE=$(sudo postqueue -p | grep -c "^[A-F0-9]") if [ $QUEUE_SIZE -gt 100 ]; then

   echo "ALERT: Large mail queue: $QUEUE_SIZE messages" | mail -s "Mail Queue Alert" admin@example.com

fi

3. Сделайте скрипт исполняемым: sudo chmod +x /usr/local/bin/mail-monitor.sh

11. Устранение неполадок =

Частые проблемы

1. Postfix не запускается:

  • Проверьте конфигурацию: sudo postfix check
  • Проверьте логи: sudo journalctl -u postfix
  • Проверьте порты: sudo netstat -tlnp | grep :25

2. Письма не отправляются:

  • Проверьте настройки релея
  • Проверьте DNS записи
  • Проверьте файрвол

3. Пользователи не могут получать почту:

  • Проверьте настройки Dovecot
  • Проверьте права доступа к почтовым ящикам
  • Проверьте аутентификацию

Диагностика

1. Проверьте статус служб: sudo systemctl status postfix sudo systemctl status dovecot

2. Проверьте конфигурацию: sudo postfix check sudo doveconf -n

3. Проверьте подключения: sudo netstat -tlnp | grep -E ':(25|587|465|993|995|143|110)'

4. Проверьте DNS записи: dig MX example.com dig A mail.example.com

12. Дополнительные настройки =

Настройка антиспама

1. Установите SpamAssassin: sudo apt install spamassassin spamc

2. Настройте Postfix для использования SpamAssassin: sudo nano /etc/postfix/master.cf

3. Добавьте настройки:

  1. SpamAssassin

spamassassin unix - n n - - pipe

 user=spamd argv=/usr/bin/spamc -f -e /usr/sbin/sendmail -oi -f ${sender} ${recipient}

Настройка антивируса

1. Установите ClamAV: sudo apt install clamav clamav-daemon

2. Настройте Postfix для использования ClamAV: sudo nano /etc/postfix/master.cf

3. Добавьте настройки:

  1. ClamAV

clamav unix - n n - - pipe

 user=clamav argv=/usr/bin/clamdscan --stdout --no-summary -i

Заключение

Почтовый сервер Postfix успешно установлен и настроен! Теперь вы можете отправлять и получать электронную почту.

Для размещения ваших почтовых серверов на надежном хостинге рекомендуем воспользоваться услугами [ARK-HOSTER.RU](https://ark-hoster.ru):

Наши специалисты помогут с настройкой почтового сервера и обеспечением безопасности вашей почты!