Postfix + Dovecot + Squirrelmail и локальные пользователи - Сети SMB

Общий индекс серии: Компьютерные сети для МСП: Введение

Эта статья является продолжением и последней из мини-сериала:

Привет друзья и друзья!

Los Энтузиасты они хотят иметь свой собственный почтовый сервер. Они не хотят использовать серверы, на которых «Конфиденциальность» стоит между вопросительными знаками. Лицо, отвечающее за реализацию услуги на вашем небольшом сервере, не является специалистом в данной области и сначала попытается установить ядро ​​будущего полноценного почтового сервера. Разве что «уравнения» для создания полного почтового сервера немного сложны для понимания и применения. 😉

Индекс

Аннотации на полях

  • Необходимо четко понимать, какие функции выполняет каждая программа, задействованная в почтовом сервере. В качестве начального руководства мы приводим целый ряд полезных ссылок с заявленной целью их посещения..
  • Внедрение комплексной почтовой службы с нуля вручную - утомительный процесс, если только вы не один из тех «избранных», которые ежедневно выполняют этот тип задач. Почтовый сервер обычно состоит из различных программ, которые по отдельности обрабатывают SMTP, POP / IMAP, Локальное хранилище сообщений, задачи, связанные с лечением СПАМ, Антивирус и др. ВСЕ эти программы должны правильно взаимодействовать друг с другом.
  • Не существует универсального подхода к управлению пользователями или «лучших практик»; где и как хранить сообщения, или как заставить все компоненты работать как единое целое.
  • Сборка и точная настройка почтового сервера имеют тенденцию быть неприятными в таких вопросах, как разрешения и владельцы файлов, выбор того, какой пользователь будет отвечать за определенный процесс, а также небольшие ошибки, сделанные в каком-то скрытом файле конфигурации.
  • Если вы не очень хорошо знаете, что делаете, конечным результатом будет небезопасный или немного нефункциональный почтовый сервер. То, что в конце реализации "Это не работает", вероятно, будет наименьшим из зол.
  • Мы можем найти в Интернете большое количество рецептов, как сделать почтовый сервер. Один из самых полных -по моему очень личному мнению- предложен автором Ивар Абрахамсен в тринадцатом издании от января 2017 г. «Как настроить почтовый сервер в системе GNU / Linux».
  • Также рекомендуем прочитать статью «Почтовый сервер в Ubuntu 14.04: Postfix, Dovecot, MySQL«, или же "Почтовый сервер в Ubuntu 16.04: Postfix, Dovecot, MySQL».
  • Правда. Лучшую документацию по этому поводу можно найти на английском языке.
    • Хотя мы никогда не делаем почтовый сервер, точно руководствуясь Как… Упомянутый в предыдущем абзаце, простой факт следования ему шаг за шагом даст нам очень хорошее представление о том, с чем мы столкнемся.
  • Если вы хотите получить полный почтовый сервер за несколько шагов, вы можете загрузить изображение iRedOS-0.6.0-CentOS-5.5-i386.iso, или ищите более современную, будь то iRedOS или iRedMail. Я лично рекомендую этот способ.

Мы собираемся установить и настроить:

Осталось сделать:

Осталось реализовать по крайней мере следующие услуги:

  • Постгрей: Политики сервера Postfix для серых списков и отклонения нежелательной почты.
  • Амависд-новый: скрипт, который создает интерфейс между MTA, антивирусными сканерами и фильтрами содержимого.
  • Clamav Антивирус: антивирусный пакет
  • SpamAssassin: извлечь нежелательную почту
  • бритва (Пызор): Перехват спама через распределенную и совместную сеть. Сеть Vipul Razor поддерживает обновленный каталог распространения нежелательной почты или СПАМА.
  • DNS-запись «Почта с идентификационными ключами домена» или DKIM.

Пакеты postgrey, amavisd-new, clamav, spamassassin, бритва y Пызор Они находятся в репозиториях программы. Так же найдем программу опендким.

  • Правильное объявление DNS-записей «SPF» и «DKIM» важно, если мы не хотим, чтобы наш почтовый сервер был только что введен в эксплуатацию, был объявлен нежелательным или источником спама или нежелательной почты другими почтовыми службами, такими как Gmail, Yahoo, Hotmail, и т.д.

Первоначальные проверки

Помните, что эта статья является продолжением других статей, которые начинаются в Squid + PAM аутентификация на CentOS 7.

Интерфейс Ens32 LAN подключен к внутренней сети

[корень @ linuxbox ~] # нано / etc / sysconfig / network-scripts / ifcfg-ens32
DEVICE=ens32
ONBOOT=yes
BOOTPROTO=static
HWADDR=00:0c:29:da:a3:e7
NM_CONTROLLED=no
IPADDR=192.168.10.5
NETMASK=255.255.255.0
GATEWAY=192.168.10.1
DOMAIN=desdelinux.fan
DNS1=127.0.0.1
ЗОНА = общедоступная

[root @ linuxbox ~] # ifdown ens32 && ifup ens32

Интерфейс Ens34 WAN подключен к Интернету

[корень @ linuxbox ~] # нано / etc / sysconfig / network-scripts / ifcfg-ens34
DEVICE = ens34 ONBOOT = yes BOOTPROTO = static HWADDR = 00: 0c: 29: da: a3: e7 NM_CONTROLLED = no IPADDR = 172.16.10.10 NETMASK = 255.255.255.0 # Маршрутизатор ADSL подключен к # этому интерфейсу с # следующим адресом ШЛЮЗ IP = 172.16.10.1 ДОМЕН = desdelinux.fan DNS1 = 127.0.0.1
ЗОНА = внешняя

Разрешение DNS из LAN

[root @ linuxbox ~] # cat /etc/resolv.conf поиск с linux.fan nameserver 127.0.0.1 nameserver 172.16.10.30 [root @ linuxbox ~] # host mail
mail.desdelinux.fan - это псевдоним для linuxbox.desdelinux.fan. linuxbox.desdelinux.fan имеет адрес 192.168.10.5 linuxbox.desdelinux.fan, почта обрабатывается 1 mail.desdelinux.fan.

[root @ linuxbox ~] # хост mail.fromlinux.fan
mail.desdelinux.fan - это псевдоним для linuxbox.desdelinux.fan. linuxbox.desdelinux.fan имеет адрес 192.168.10.5 linuxbox.desdelinux.fan, почта обрабатывается 1 mail.desdelinux.fan.

Разрешение DNS из Интернета

buzz @ sysadmin: ~ $ host mail.fromlinux.fan 172.16.10.30
Использование сервера домена: Имя: 172.16.10.30 Адрес: 172.16.10.30 # 53 Псевдонимы: mail.desdelinux.fan - это псевдоним для desdelinux.fan.
из linux.fan имеет адрес 172.16.10.10
Почта desdelinux.fan обрабатывается 10 mail.desdelinux.fan.

Проблемы с локальным разрешением имени хоста "desdelinux.fan"

Если у вас есть проблемы с разрешением имени хоста «fromlinux.fan" из ЛВС, попробуйте закомментировать строку файла /etc/dnsmasq.conf где это заявлено local = / из linux.fan /. После этого перезапустите Dnsmasq.

[root @ linuxbox ~] # nano /etc/dnsmasq.conf # Прокомментируйте строку ниже:
# местный = / desdelinux.fan /

[root @ linuxbox ~] # перезапуск службы dnsmasq
Перенаправление в / bin / systemctl restart dnsmasq.service

[root @ linuxbox ~] # статус dnsmasq службы

[root @ linuxbox ~] # хост из linux.fan
desdelinux.fan имеет адрес 172.16.10.10 desdelinux.fan, почта обрабатывается 10 mail.desdelinux.fan.

Постфикс и Dovecot

Очень обширную документацию по Postfix и Dovecot можно найти по адресу:

[root @ linuxbox ~] # ls /usr/share/doc/postfix-2.10.1/
bounce.cf.default ЛИЦЕНЗИЯ README-Postfix-SASL-RedHat.txt СОВМЕСТИМОСТЬ main.cf.default Примеры TLS_ACKNOWLEDGEMENTS README_FILES TLS_LICENSE

[root @ linuxbox ~] # ls /usr/share/doc/dovecot-2.2.10/
АВТОРЫ COPYING.MIT dovecot-openssl.cnf NEWS wiki КОПИРОВАНИЕ ChangeLog example-config README COPYING.LGPL documentation.txt mkcert.sh solr-schema.xml

В CentOS 7 Postfix MTA устанавливается по умолчанию, когда мы выбираем опцию Infrastructure Server. Мы должны проверить, что контекст SELinux разрешает запись в Potfix в локальной очереди сообщений:

[root @ linuxbox ~] # getsebool -a | grep postfix
postfix_local_write_mail_spool -> on

Модификации в FirewallD

Используя графический интерфейс для настройки FirewallD, мы должны убедиться, что следующие службы и порты включены для каждой Зоны:

# ------------------------------------------------- -----
# Исправления в FirewallD
# ------------------------------------------------- -----
# Межсетевой экран
# Публичная зона: http, https, imap, pop3, smtp сервисы
# Публичная зона: порты 80, 443, 143, 110, 25

# Внешняя зона: http, https, imap, pop3s, smtp сервисы
# Внешняя зона: порты 80, 443, 143, 995, 25

Устанавливаем Dovecot и необходимые программы

[root @ linuxbox ~] # yum install dovecot mod_ssl procmail telnet

Минимальная конфигурация Dovecot

[root @ linuxbox ~] # nano /etc/dovecot/dovecot.conf
протоколы = imap pop3 lmtp
Слушать знак равно
login_greeting = Голубятня готова!

Мы явно отключаем аутентификацию Dovecot с открытым текстом:

[корень @ linuxbox ~] # nano /etc/dovecot/conf.d/10-auth.conf 
disable_plaintext_auth = да

Мы объявляем Группу с необходимыми привилегиями для взаимодействия с Dovecot и местонахождением сообщений:

[корень @ linuxbox ~] # nano /etc/dovecot/conf.d/10-mail.conf
mail_location = mbox: ~ / mail: INBOX = / var / mail /% u
mail_privileged_group = почта
mail_access_groups = почта

Сертификаты на Dovecot

Dovecot автоматически генерирует ваши тестовые сертификаты на основе данных в файле /etc/pki/dovecot/dovecot-openssl.cnf. Чтобы новые сертификаты были сгенерированы в соответствии с нашими требованиями, мы должны выполнить следующие шаги:

[root @ linuxbox ~] # cd / etc / pki / dovecot /
[root @ linuxbox dovecot] # nano dovecot-openssl.cnf
[req] default_bits = 1024 encrypt_key = yes visible_name = req_dn x509_extensions = cert_type prompt = no [req_dn] # страна (двухбуквенный код) C = CU # Название штата или провинции (полное имя) ST = Куба # Название населенного пункта (например, город) ) L = Habana # Организация (например, Компания) O = FromLinux.Fan # Название организационной единицы (например, Раздел) OU = Enthusiasts # Общее имя (также возможно * .example.com) CN = *. Desdelinux.fan # E -mail контактный адрес электронной почтыAddress=buzz@desdelinux.fan [cert_type] nsCertType = server

Исключаем сертификаты испытаний

[root @ linuxbox dovecot] # rm certs / dovecot.pem 
rm: удалить обычный файл "certs / dovecot.pem"? (г / н) г
[root @ linuxbox dovecot] # rm private / dovecot.pem 
rm: удалить обычный файл "private / dovecot.pem"? (г / н) г

Копируем и выполняем скрипт mkcert.sh из каталога документации

[root @ linuxbox dovecot] # cp /usr/share/doc/dovecot-2.2.10/mkcert.sh. [root @ linuxbox dovecot] # bash mkcert.sh 
Генерация 1024-битного закрытого ключа RSA ...... ++++++ ................ ++++++ запись нового закрытого ключа в '/ etc / pki / dovecot / private / dovecot.pem '----- subject = /C=CU/ST=Cuba/L=Habana/O=DesdeLinux.Fan/OU=Entusiasts/CN=*.desdelinux.fan/emailAddress= buzz@desdelinux.fan Отпечаток SHA1 = 5F: 4A: 0C: 44: EC: EC: EF: 95: 73: 3E: 1E: 37: D5: 05: F8: 23: 7E: E1: A4: 5A

[root @ linuxbox dovecot] # ls -l certs /
всего 4 -рв -------. 1 root root 1029 22 мая 16:08 dovecot.pem
[root @ linuxbox dovecot] # ls -l private /
всего 4 -рв -------. 1 root root 916 22 мая 16:08 dovecot.pem

[root @ linuxbox dovecot] # перезапуск службы dovecot
[root @ linuxbox dovecot] # статус службы dovecot

Сертификаты для Postfix

[root @ linuxbox ~] # cd / etc / pki / tls / [root @ linuxbox tls] # openssl req -sha256 -x509 -nodes -newkey rsa: 4096-дней 1825 \ -out certs / desdelinux.fan.crt -keyout частный / desdelinux.fan.key

Создание 4096-битного закрытого ключа RSA ......... ++ .. ++ запись нового закрытого ключа в 'private / domain.tld.key' ----- Вас сейчас попросят ввести информацию который будет включен в ваш запрос на сертификат. То, что вы собираетесь ввести, называется отличительным именем или DN. Есть довольно много полей, но вы можете оставить некоторые пустыми. Для некоторых полей будет значение по умолчанию. Если вы введете '.', Поле останется пустым. ----- Название страны (двухбуквенный код) [XX]: Название штата или провинции CU (полное название) []: Название населенного пункта Кубы (например, город) [Город по умолчанию]: Название организации в Гаване (например, компания) [ Компания по умолчанию, ООО]: desdeLinux.Fan Название организационной единицы (например, раздел) []: Общее имя энтузиастов (например, ваше имя или имя хоста вашего сервера) []: адрес электронной почты desdelinux.fan []: buzz@desdelinux.fan

Минимальная конфигурация Postfix

Добавляем в конец файла / etc / aliases следующие:

корень: гудение

Чтобы изменения вступили в силу, мы выполняем следующую команду:

[root @ linuxbox ~] # newaliases

Конфигурация Postifx может быть выполнена путем прямого редактирования файла. /etc/postfix/main.cf или по команде postconf -e следя за тем, чтобы все параметры, которые мы хотим изменить или добавить, отражались в одной строке консоли:

  • Каждый должен заявить о вариантах, которые он понимает и в которых нуждается!.
[root @ linuxbox ~] # postconf -e 'myhostname = desdelinux.fan'
[root @ linuxbox ~] # postconf -e 'mydomain = desdelinux.fan'
[root @ linuxbox ~] # postconf -e 'myorigin = $ mydomain'
[root @ linuxbox ~] # postconf -e 'inet_interfaces = all'
[root @ linuxbox ~] # postconf -e 'mydestination = $ myhostname, localhost. $ mydomain, localhost, $ mydomain, mail. $ mydomain, www. $ mydomain, ftp. $ mydomain'

[root @ linuxbox ~] # postconf -e 'mynetworks = 192.168.10.0/24, 172.16.10.0/24, 127.0.0.0/8'
[root @ linuxbox ~] # postconf -e 'mailbox_command = / usr / bin / procmail -a "$ EXTENSION"'
[root @ linuxbox ~] # postconf -e 'smtpd_banner = $ myhostname ESMTP $ mail_name ($ mail_version)'

Добавляем в конец файла /etc/postfix/main.cf варианты, указанные ниже. Чтобы узнать значение каждого из них, рекомендуем прочитать сопроводительную документацию.

biff = нет
append_dot_mydomain = нет
delay_warning_time = 4 часа
readme_directory = нет
smtpd_tls_cert_file = / etc / pki / certs / desdelinux.fan.crt
smtpd_tls_key_file = / etc / pki / private / desdelinux.fan.key
smtpd_use_tls = да
smtpd_tls_session_cache_database = btree: $ {data_directory} / smtpd_scache
smtp_tls_session_cache_database = btree: $ {data_directory} / smtp_scache
smtpd_relay_restrictions = permission_mynetworks permission_sasl_authenticated defer_unauth_destination

# Максимальный размер почтового ящика 1024 мегабайта = 1 г и г
mailbox_size_limit = 1073741824

recipient_delimiter = +
maximal_queue_lifetime = 7 дней
header_checks = регулярное выражение: / etc / postfix / header_checks
body_checks = регулярное выражение: / etc / postfix / body_checks

# Учетные записи, которые отправляют копию входящей почты на другую учетную запись
recipient_bcc_maps = хэш: / etc / postfix / accounts_ forwarding_copy

Следующие строки важны для определения того, кто может отправлять почту и ретранслировать на другие серверы, чтобы мы случайно не настроили «открытый ретранслятор», который позволяет неаутентифицированным пользователям отправлять почту. Мы должны обратиться к страницам справки Postfix, чтобы понять, что означает каждая опция.

  • Каждый должен заявить о вариантах, которые он понимает и в которых нуждается!.
smtpd_helo_restrictions = permission_mynetworks,
 warn_if_reject reject_non_fqdn_hostname,
 reject_invalid_hostname,
 позволять

smtpd_sender_restrictions = permission_sasl_authenticated,
 allow_mynetworks,
 warn_if_reject reject_non_fqdn_sender,
 reject_unknown_sender_domain,
 reject_unauth_pipelining,
 позволять

smtpd_client_restrictions = reject_rbl_client sbl.spamhaus.org,
 reject_rbl_client blackholes.easynet.nl

# ПРИМЕЧАНИЕ: параметр "check_policy_service inet: 127.0.0.1: 10023"
# включает программу Postgrey, и мы не должны ее включать
# в противном случае мы будем использовать Postgrey

smtpd_recipient_restrictions = reject_unauth_pipelining,
 allow_mynetworks,
 allow_sasl_authenticated,
 reject_non_fqdn_recipient,
 reject_unknown_recipient_domain,
 reject_unauth_destination,
 check_policy_service inet: 127.0.0.1: 10023,
 позволять

smtpd_data_restrictions = reject_unauth_pipelining

smtpd_relay_restrictions = reject_unauth_pipelining,
 allow_mynetworks,
 allow_sasl_authenticated,
 reject_non_fqdn_recipient,
 reject_unknown_recipient_domain,
 reject_unauth_destination,
 check_policy_service inet: 127.0.0.1: 10023,
 позволять
 
smtpd_helo_required = да
smtpd_delay_reject = да
disable_vrfy_command = да

Создаем файлы / и т.д. / постфикс / body_checks y / и т.д. / postfix / accounts_forwarding_copy, и измените файл / и т.д. / постфикс / header_checks.

  • Каждый должен заявить о вариантах, которые он понимает и в которых нуждается!.
[root @ linuxbox ~] # nano / etc / postfix / body_checks
# Если этот файл был изменен, нет необходимости # запускать postmap # Чтобы проверить правила, запустите как root: # postmap -q 'super new v1agra' regexp: / etc / postfix / body_checks
# Должен вернуться: # REJECT Правило № 2 Текст сообщения защиты от спама
/ viagra / REJECT Rule # 1 Защита от спама в теле сообщения
/ super new v [i1] agra / REJECT Rule # 2 Текст сообщения защиты от спама

[root @ linuxbox ~] # nano / etc / postfix / accounts_ forwarding_copy
# После модификации вы должны выполнить: # postmap / etc / postfix / accounts_ forwarding_copy
# и файл создан или измерен: # /etc/postfix/cuentas_reenviando_copia.db
# ------------------------------------------ # Один аккаунт для пересылки Копия BCC # BCC = Black Carbon Copy # Пример: # webadmin@desdelinux.fan buzz@desdelinux.fan

[root @ linuxbox ~] # postmap / etc / postfix / accounts_ forwarding_copy

[root @ linuxbox ~] # нано / и т.д. / постфикс / header_checks
# Добавить в конец файла # НЕ ТРЕБУЕТСЯ Postmap, поскольку они являются регулярными выражениями
/ ^ Subject: =? Big5? / REJECT Китайская кодировка не поддерживается этим сервером
/ ^ Тема: =? EUC-KR? / REJECT Корейская кодировка не разрешена этим сервером
/ ^ Тема: ADV: / REJECT Рекламные объявления не принимаются этим сервером
/^From:.*\@.*\.cn/ REJECT Извините, китайская почта здесь не разрешена
/^From:.*\@.*\.kr/ REJECT Извините, корейская почта здесь не разрешена
/^From:.*\@.*\.tr/ REJECT Извините, турецкая почта здесь не разрешена
/^From:.*\@.*\.ro/ REJECT Извините, румынская почта здесь не разрешена
/^(Получено | Идентификатор сообщения|X-(Mailer|Sender)):.*\b(AutoMail|E-Broadcaster|Emailer Platinum | Thunder Server | eMarksman | Extractor | e-Merge | from stealth [^.] | Global Messenger | GroupMaster | Mailcast | MailKing | Match10 | MassE-Mail | massmail \ .pl | News Breaker | Powermailer | Quick Shot | Ready Aim Fire | WindoZ | WorldMerge | Yourdora | Lite) \ b / REJECT Массовые рассылки запрещены.
/ ^ От: "спамер / REJECT
/ ^ От: "спам / REJECT
/^Subject:.*viagra/ ОТКАЗАТЬ
# Опасные расширения
/ name = [^> Iluminación * \. (bat | cmd | exe | com | pif | reg | scr | vb | vbe | vbs) / REJECT REJECT Мы не принимаем вложения с этими расширениями

Проверяем синтаксис, перезапускаем Apache и Postifx, включаем и запускаем Dovecot

[root @ linuxbox ~] # проверка постфикса
[root @ linuxbox ~] #

[root @ linuxbox ~] # systemctl перезапуск httpd
[root @ linuxbox ~] # статус systemctl httpd

[root @ linuxbox ~] # systemctl перезапустить постфикс
[root @ linuxbox ~] # постфикс статуса systemctl

[root @ linuxbox ~] # systemctl status dovecot
● dovecot.service - почтовый сервер Dovecot IMAP / POP3 Загружено: загружено (/usr/lib/systemd/system/dovecot.service; отключено; предустановка поставщика: отключено) Активно: неактивно (мертв)

[root @ linuxbox ~] # systemctl включить dovecot
[root @ linuxbox ~] # systemctl start dovecot
[root @ linuxbox ~] # systemctl перезапуск dovecot
[root @ linuxbox ~] # systemctl status dovecot

Проверки на уровне консоли

  • Перед продолжением установки и настройки других программ очень важно выполнить минимально необходимые проверки служб SMTP и POP..

Локально с самого сервера

Мы отправляем электронное письмо локальному пользователю Леголас.

[root @ linuxbox ~] # echo "Привет. Это тестовое сообщение" | mail -s "Test" legolas

Проверяем почтовый ящик леголас.

[root @ linuxbox ~] # openssl s_client -crlf -connect 127.0.0.1:110 -starttls pop3

После сообщения Dovecot готов! продолжаем:

Напишите нам в чат или Email
+ OK Dovecot готов!
ПОЛЬЗОВАТЕЛЬ леголас + ОК ПРОЙТИ леголас + ОК Авторизован. STAT + OK 1 559 LIST + OK 1 сообщений: 1 559. RETR 1 + OK 559 октетов Обратный путь: X-Original-To: legolas Доставлено-To: legolas@desdelinux.fan Получено: desdelinux.fan (Postfix, from userrid 0) id 7EA22C11FC57; Пн, 22 мая 2017 г. 10:47:10 -0400 (EDT) Дата: Пн, 22 мая 2017 г. 10:47:10 -0400 Кому: legolas@desdelinux.fan Тема: Тест пользовательского агента: Heirloom mailx 12.5 7/5 / 10 MIME-Version: 1.0 Content-Type: text / plain; charset = us-ascii Content-Transfer-Encoding: 7bit Message-Id: <20170522144710.7EA22C11FC57@desdelinux.fan> От: root@desdelinux.fan (root) Здравствуйте. Это тестовое сообщение. ВЫЙТИ
[root @ linuxbox ~] #

Пульты от компьютера в локальной сети

Отправим еще одно сообщение Леголас с другого компьютера в локальной сети. Обратите внимание, что безопасность TLS НЕ является строго необходимой в сети SME.

buzz @ sysadmin: ~ $ sendemail -f buzz@deslinux.fan \
-t legolas@desdelinux.fan \
-u "Привет" \
-m "Привет Леголасу от твоего друга Базза" \
-s mail.desdelinux.fan -o tls = нет
22 мая, 10:53:08 sysadmin sendemail [5866]: Электронное письмо успешно отправлено!

Если мы попытаемся подключиться через Telnet От хоста в локальной сети (или, конечно, из Интернета) до Dovecot произойдет следующее, потому что мы отключим аутентификацию с открытым текстом:

buzz @ sysadmin: ~ $ telnet mail.fromlinux.fan 110 Попытка 192.168.10.5 ...
Подключен к linuxbox.fromlinux.fan. Экранирующий символ - '^]'. + OK Dovecot готов! пользователь леголас
-ERR [AUTH] Аутентификация с открытым текстом запрещена для незащищенных (SSL / TLS) соединений.
quit + OK Выход из системы Соединение закрыто внешним хостом.
buzz @ sysadmin: ~ $

Мы должны сделать это через OpenSSL. Полный вывод команды будет таким:

buzz @ sysadmin: ~ $ openssl s_client -crlf -connect mail.fromlinux.fan:110 -starttls pop3
CONNECTED (00000003)
depth = 0 C = CU, ST = Куба, L = Гавана, O = FromLinux.Fan, OU = Энтузиасты, CN = * .fromlinux.fan, emailAddress = buzz@fromlinux.fan
ошибка проверки: число = 18: самоподписанный сертификат проверка возврата: 1
depth = 0 C = CU, ST = Куба, L = Гавана, O = FromLinux.Fan, OU = Энтузиасты, CN = * .fromlinux.fan, emailAddress = buzz@fromlinux.fan проверить возврат: 1
--- Цепочка сертификатов 0 с: /C=CU/ST=Cuba/L=Habana/O=DesdeLinux.Fan/OU=Entusiasts/CN = *. Desdelinux.fan/emailAddress=buzz@desdelinux.fan i: / C =CU/ST=Cuba/L=Habana/O=DesdeLinux.Fan/OU=Entusiasts/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan --- Сертификат сервера ----- НАЧАТЬ СЕРТИФИКАТ-- --- MIICyzCCAjSgAwIBAgIJAKUHI / 2ZD + MeMA0GCSqGSIb3DQEBBQUAMIGbMQswCQYD VQQGEwJDVTENMAsGA1UECBMEQ3ViYTEPMA0GA1UEBxMGSGFiYW5hMRcwFQYDVQQK Ew5EZXNkZUxpbnV4LkZhbjEUMBIGA1UECxMLRW50dXNpYXN0YXMxGTAXBgNVBAMU ECouZGVzZGVsaW51eC5mYW4xIjAgBgkqhkiG9w0BCQEWE2J1enpAZGVzZGVsaW51 eC5mYW4wHhcNMTcwNTIyMjAwODEwWhcNMTgwNTIyMjAwODEwWjCBmzELMAkGA1UE BhMCQ1UxDTALBgNVBAgTBEN1YmExDzANBgNVBAcTBkhhYmFuYTEXMBUGA1UEChMO RGVzZGVMaW51eC5GYW4xFDASBgNVBAsTC0VudHVzaWFzdGFzMRkwFwYDVQQDFBAq LmRlc2RlbGludXguZmFuMSIwIAYJKoZIhvcNAQkBFhNidXp6QGRlc2RlbGludXgu ZmFuMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC7wckAiNNfYSz5hdePzKuZ Bnk m2MMuhGDvwrDSPDEcVutznbZSgJ9bvTo445TR + + nBmqxzJbpc OZ80lujS2hP XR7E9eWIXxr4fP4HpRrCA8NxlthEsapVMSHW + lnPBqF2b / Bt2eYyR7g JhtlP6gRG V57MmgL8BdYAJLvxqxDIxQIDAQABoxUwEzARBglghkgBhvhCAQEEBAMCBkAwDQYJ KoZIhvcNAQEFBQADgYEAAuYU1nIXTbXtddW + QkLskum7ESryHZonKOCelfn2vnRl 8oAgHg7Hbtg / e6sR / W9m3DObP5DEp3lolKKIKor7ugxtfA4PBtmgizddfDKKMDql LT + MV5 / DP1pjQbxTsaLlZfveNxfLRHkQY13asePy4fYJFOIZ4OojDEGQ6 / VQBI8 = ----- ----- END CERTIFICATE при условии = / С = CU / ST = Куба / л = Гавана / O = DesdeLinux.Fan /OU=Entusiasts/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan эмитент = / C = CU / ST = Cuba / L = Habana / O = DesdeLinux.Fan / OU = Entusiasts / CN = *. Desdelinux .fan / emailAddress = buzz @ desdelinux.fan --- Не отправлены имена ЦС сертификатов клиента. Временный ключ сервера: ECDH, secp384r1, 384 бита. , Шифр ​​- ECDHE-RSA-AES1342-GCM-SHA411. Открытый ключ сервера - 1 бит. Поддерживается безопасное повторное согласование. Сжатие: НЕТ Расширение: НЕТ SSL-сеанс: Протокол: TLSv3. ID: C256B384A1024E1.2CB256DC384CDBC745D4FF0236204F16234DB15C9BF3E084125D5989A Session-ID-ctx: Master-Key : 5D6C5295B4CEA2F73AF1904AF204D564C76361F50373F8879A793FD7CD7506F04473777BC6BFF3503E9F919F1 Ключа-Арг: Нет Krb837 Главный: Нет 67 идентичность ФМно: Нет идентичность ФМна подсказка: HS 29F309F352526A5FD5CD300F0000BC4BFF3E8F29F7 Ключ-Арг: Нет krb4 Основная: Нет 63 PSK идентичности: идентичность Отсутствует ФМна подсказка: HS 72TLS сессия 7 секунд 6 F Нет 4 сессия 7 F Nonec билета 1 секунды XNUMX FXNUMXFXNUMX Билет ec XNUMXe XNUMXc N :.) zOcr ... O .. ~.
 0010 - 2c d4 be a8 be 92 2e ae-98 7e 87 6d 45 c5 17 a8, ........ ~ .mE ...
 0020 - db 3a 86 80 df 8b dc 8d-f8 1f 68 6e db a7 e3 86 .: ........ hn ....
 0030-08 35 e5 eb 98 b8 a4 98-68 b1 ea f7 72 f7 c1 79 .5 ...... h ... r..y 0040-89 4a 28 e3 85 a4 8b da-e9 7a 29 c7 77 bf 22 0d .J (...... z) .w. ".
 0050 - bd 5c f6 61 8c a1 14 bd-cb 31 27 66 7a dc 51 28. \. A ..... 1'fz.Q (0060 - b7 de 35 bd 2b 0f d4 ec-d3 e0 14 c8 65 03 b1 35 ..5. + ....... e..5 0070 - 38 34 f8 de 48 da ae 31-90 bd f6 b0 e6 9c cf 19 84..H..1 ..... ...
 0080 - f5 42 56 13 88 b0 8c db-aa ee 5a d7 1b 2c dd 71 .BV ....... Z ..,. Q 0090 - 7a f1 03 70 90 94 c9 0a-62 e5 0f 9c bf dc 3c a0 z..p .... b ..... <.

+ OK Dovecot готов!
ПОЛЬЗОВАТЕЛЬ леголас
+ ОК
ПРОПУСК Леголаса
+ ОК Авторизовался.
СПИСОК
+ OK 1 сообщений: 1 1021.
RETR 1
+ OK 1021 октет Обратный путь: X-Original-To: legolas@desdelinux.fan Получено: legolas@desdelinux.fan Получено: от sysadmin.desdelinux.fan (шлюз [172.16.10.1]) от desdelinux.fan (Postfix) с идентификатором ESMTP 51886C11E8C0 для ; Пн, 22 мая 2017 г. 15:09:11 -0400 (EDT) Идентификатор сообщения: <919362.931369932-sendEmail@sysadmin> От: "buzz@deslinux.fan" Кому: "legolas@desdelinux.fan" Тема: Привет Дата: Пн, 22 мая 2017 г. 19:09:11 +0000 X-Mailer: sendEmail-1.56 MIME-Version: 1.0 Content-Type: multipart / related; border = "---- разделитель MIME для sendEmail-365707.724894495" Это сообщение, состоящее из нескольких частей, в формате MIME. Для правильного отображения этого сообщения вам потребуется программа электронной почты, совместимая с MIME-версией 1.0. ------ Разделитель MIME для sendEmail-365707.724894495 Content-Type: text / plain; charset = "iso-8859-1" Content-Transfer-Encoding: 7-битное приветствие, Леголас от вашего друга Buzz ------ MIME-разделитель для sendEmail-365707.724894495--.
УВОЛИТЬСЯ
+ ОК Выход из системы. закрыто
buzz @ sysadmin: ~ $

Squirrelmail

Squirrelmail это веб-клиент, полностью написанный на PHP. Он включает встроенную поддержку PHP для протоколов IMAP и SMTP и обеспечивает максимальную совместимость с различными используемыми браузерами. Он правильно работает на любом сервере IMAP. Он имеет все функции, которые вам нужны от почтового клиента, включая поддержку MIME, адресную книгу и управление папками.

[root @ linuxbox ~] # yum install squirrelmail
[root @ linuxbox ~] # перезапуск службы httpd

[корень @ linuxbox ~] # nano /etc/squirrelmail/config.php
$ domain = 'desdelinux.fan';
$ imapServerAddress = 'mail.fromlinux.fan';
$ imapPort = 143;
$ smtpServerAddress = 'desdelinux.fan';

[root @ linuxbox ~] # перезагрузка службы httpd

Фреймворк политики отправки DNS или запись SPF

В статье Авторитетный DNS-сервер NSD + Shorewall Мы видели, что зона "desdelinux.fan" была настроена следующим образом:

корень @ нс: ~ # нано /etc/nsd/desdelinux.fan.zone
$ ORIGIN из linux.fan. $ TTL 3H @ IN SOA ns.fromlinux.fan. root.fromlinux.fan. (1; серийный 1D; обновить 1H; повторить 1W; истечь 3H); минимум или; Время жизни отрицательного кеширования; @ IN NS ns.fromlinux.fan. @ IN MX 10 mail.fromlinux.fan.
@ IN TXT "v = spf1 a: mail.desdelinux.fan -all"
; ; Журнал для разрешения запросов поиска из linux.fan @ IN A 172.16.10.10; ns IN A 172.16.10.30 mail IN CNAME из linux.fan. чат IN CNAME из linux.fan. www IN CNAME с сайта linux.fan. ; ; Записи SRV, относящиеся к XMPP
_xmpp-server._tcp IN SRV 0 0 5269 из linux.fan. _xmpp-client._tcp IN SRV 0 0 5222 из linux.fan. _jabber._tcp IN SRV 0 0 5269 из linux.fan.

В нем декларируется реестр:

@ IN TXT "v = spf1 a: mail.desdelinux.fan -all"

Чтобы тот же параметр был настроен для сети SME или LAN, мы должны изменить файл конфигурации Dnsmasq следующим образом:

# TXT записей. Мы также можем объявить запись SPF txt-record = desdelinux.fan, "v = spf1 a: mail.desdelinux.fan -all"

Затем перезапускаем сервис:

[root @ linuxbox ~] # перезапуск службы dnsmasq
[root @ linuxbox ~] # service dnsmasq status [root @ linuxbox ~] # host -t TXT mail.fromlinux.fan mail.fromlinux.fan - это псевдоним для fromlinux.fan. описательный текст desdelinux.fan "v = spf1 a: mail.desdelinux.fan -all"

Самоподписанные сертификаты и Apache или httpd

Даже если ваш браузер сообщает вам, что «Владелец mail.fromlinux.fan Вы неправильно настроили свой сайт. Чтобы предотвратить кражу вашей информации, Firefox не подключился к этому веб-сайту », - ранее созданный сертификат. ДЕЙСТВИТЕЛЬНО, и позволит учетным данным между клиентом и сервером перемещаться в зашифрованном виде после того, как мы примем сертификат.

При желании и в качестве способа унификации сертификатов вы можете объявить для Apache те же сертификаты, которые вы объявили для Postfix, что является правильным.

[root @ linuxbox ~] # нано /etc/httpd/conf.d/ssl.conf
SSLCertificateFile /etc/pki/tls/certs/desdelinux.fan.crt
SSLCertificateKeyFile /etc/pki/tls/private/desdelinux.fan.key

[root @ linuxbox ~] # service httpd restart
[root @ linuxbox ~] # статус службы httpd

Группа Диффи-Хеллмана

Тема безопасности в Интернете становится все сложнее с каждым днем. Одна из самых распространенных атак на соединения SSLЕсть ли затор и для защиты от него необходимо добавить нестандартные параметры в конфигурацию SSL. Для этого есть RFC-3526 «Больше модульной экспоненты (MODP) Диффи-Хеллмана группы для обмена ключами в Интернете (IKE)».

[root @ linuxbox ~] # cd / etc / pki / tls /
[root @ linuxbox tls] # openssl dhparam -out private / dhparams.pem 2048
[root @ linuxbox tls] # chmod 600 private / dhparams.pem

В соответствии с установленной нами версией Apache мы будем использовать группу Диффи-Хельмана из файла /etc/pki/tls/dhparams.pem. Если это версия 2.4.8 или новее, то нам нужно будет добавить в файл /etc/httpd/conf.d/ssl.conf следующая строка:

SSLOpenSSLConfCmd DHParameters "/etc/pki/tls/private/dhparams.pem"

Версия Apache, которую мы используем:

[root @ linuxbox tls] # ням информация httpd
Загруженные плагины: fastestmirror, langpacks Скорость загрузки зеркала из кэшированного хост-файла Установленные пакеты Имя: httpd Архитектура: x86_64
Версия: 2.4.6
Релиз: 45.el7.centos Размер: 9.4 M Репозиторий: установлен Из репозитория: Base-Repo Обзор: HTTP-сервер Apache URL: http://httpd.apache.org/ Лицензия: ASL 2.0 Описание: HTTP-сервер Apache - это мощный, эффективный и расширяемый: веб-сервер.

Поскольку у нас есть версия до 2.4.8, мы добавляем в конец ранее сгенерированного сертификата CRT содержимое группы Диффи-Хельмана:

[root @ linuxbox tls] # cat private / dhparams.pem >> сертификаты / desdelinux.fan.crt

Если вы хотите убедиться, что параметры DH были правильно добавлены в сертификат CRT, выполните следующие команды:

[root @ linuxbox tls] # cat private / dhparams.pem 
----- НАЧАЛО ПАРАМЕТРОВ DH -----
MIIBCAKCAQEAnwfWSlirEuMwJft0hgAdB0km9d3qGGiErRXPfeZU+Tqp/ZFOCdzP
/O6NeXuHI4vnsTDWEAjXmpRzq/z1ZEWQa6j+l1PgTgk2XqaMViD/gN+sFPnx2EmV
keVcMDqG03gnmCgO9R4aLYT8uts5T6kBRhvxUcrk9Q7hIpGCzGtdgwaVf1cbvgOe
8kfpc5COh9IxAYahmNt+5pBta0SDlmoDz4Rk/4AFXk2mjpDYoizaYMPeIInGUzOv
/LE6Y7VVRY/BJG9EZ5pVYJPCruPCUHkhvm+r9Tt56slk+HE2d52uFRSDd2FxK3n3
cN1vJ5ogsvmHayWUjVUA18LLfGSxEFsc4wIBAg==
----- КОНЕЦ ПАРАМЕТРОВ DH -----

[root @ linuxbox tls] # кошачьи сертификаты / desdelinux.fan.crt 
-----BEGIN CERTIFICATE-----
MIIGBzCCA++gAwIBAgIJANd9FLCkDBfzMA0GCSqGSIb3DQEBCwUAMIGZMQswCQYD
VQQGEwJDVTENMAsGA1UECAwEQ3ViYTEPMA0GA1UEBwwGSGFiYW5hMRcwFQYDVQQK
DA5EZXNkZUxpbnV4LkZhbjEUMBIGA1UECwwLRW50dXNpYXN0YXMxFzAVBgNVBAMM
DmRlc2RlbGludXguZmFuMSIwIAYJKoZIhvcNAQkBFhNidXp6QGRlc2RlbGludXgu
ZmFuMB4XDTE3MDUyMjE0MDQ1MloXDTIyMDUyMTE0MDQ1MlowgZkxCzAJBgNVBAYT
AkNVMQ0wCwYDVQQIDARDdWJhMQ8wDQYDVQQHDAZIYWJhbmExFzAVBgNVBAoMDkRl
c2RlTGludXguRmFuMRQwEgYDVQQLDAtFbnR1c2lhc3RhczEXMBUGA1UEAwwOZGVz
ZGVsaW51eC5mYW4xIjAgBgkqhkiG9w0BCQEWE2J1enpAZGVzZGVsaW51eC5mYW4w
ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCn5MkKRdeFYiN+xgGdsRn8
sYik9X75YnJcbeZrD90igfPadZ75ehtfYIxxOS+2U+omnFgr/tCKYUVJ50seq/lB
idcLP4mt7wMrMZUDpy1rlWPOZGKkG8AdStCYI8iolvJ4rQtLcsU6jhRzEXsZxfOb
O3sqc71yMIj5qko55mlsEVB3lJq3FTDQAY2PhXopJ8BThW1T9iyl1HlYpxj7OItr
/BqiFhxbP17Fpd3QLyNiEl+exVJURYZkvuZQqVPkFAlyNDh5I2fYfrI9yBVPBrZF
uOdRmT6jv6jFxsBy9gggcy+/u1nhlKssLBEhyaKfaQoItFGCAmevkyzdl1LTYDPY
ULi79NljQ1dSwWgraZ3i3ACZIVO/kHcOPljsNxE8omI6qNFWqFd1qdPH5S4c4IR1
5URRuwyVNffEHKaCJi9vF9Wn8LVKnN/+5zZGRJA8hI18HH9kF0A1sCNj1KKiB/xe
/02wTzR/Gbj8pkyO8fjVBvd/XWI8EMQyMc1gvtIAvZ00SAB8c1NEOCs5pt0Us6pm
1lOkgD6nl90Dx9p805mTKD+ZcvRaShOvTyO3HcrxCxOodFfZQCuHYuQb0dcwoK2B
yOwL77NmxNH1QVJL832lRARn8gpKoRAUrzdTSTRKmkVrOGcfvrCKhEBsJ67Gq1+T
YDLhUiGVbPXXR9rhAyyX2QIDAQABo1AwTjAdBgNVHQ4EFgQURGCMiLVLPkjIyGZK
UrZgMkO0X8QwHwYDVR0jBBgwFoAURGCMiLVLPkjIyGZKUrZgMkO0X8QwDAYDVR0T
BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAgEAdy1tH1DwfCW47BNJE1DW8Xlyp+sZ
uYTMOKfNdnAdeSag1WshR6US6aCtU6FkzU/rtV/cXDKetAUIzR50aCYGTlfMCnDf
KKMZEPjIlX/arRwBkvIiRTU1o3HTniGp9d3jsRWD/AvB3rSus4wfuXeCoy7Tqc9U
FaXqnvxhF8/ptFeeCeZgWu16zyiGBqMj4ZaQ7RxEwcoHSd+OByg8E9IE2cYrWP2V
6P7hdCXmw8voMxCtS2s++VRd1fGqgGxXjXT8psxmY2MrseuTM2GyWzs+18A3VVFz
UXLD2lzeYs638DCMXj5/BMZtVL2a4OhMSYY4frEbggB3ZgXhDDktUb7YhnBTViM3
2sgJJOSTltOgAnyOPE0CDcyktXVCtu3PNUc+/AB3UemI9XCw4ypmTOMaIZ2Gl6Uo
pmTk41fpFuf8pqW3ntyu43lC5pKRBqhit6MoFGNOCvFYFBWcltpqnjsWfY2gG/b5
8D5HsedueqkAsVblKPBFpv1BB9X0HhBUYsrz8jNGZGbkgR4XQoIoLbQZHEB35APU
4yT1Lzc3jk34yZF5ntmFt3wETSWwJZ+0cYPw7n4E6vbs1C7iKAMQRVy+lI5f8XYS
YKfrieiPPdmQ22Zm2Tbkqi4zjJBWmstrw6ezzAQNaaAkiOiJIwvXU81KYsN37THh
Nf0/JsEjPklCugE=
-----END CERTIFICATE-----
-----BEGIN DH PARAMETERS-----
MIIBCAKCAQEAnwfWSlirEuMwJft0hgAdB0km9d3qGGiErRXPfeZU+Tqp/ZFOCdzP
/O6NeXuHI4vnsTDWEAjXmpRzq/z1ZEWQa6j+l1PgTgk2XqaMViD/gN+sFPnx2EmV
keVcMDqG03gnmCgO9R4aLYT8uts5T6kBRhvxUcrk9Q7hIpGCzGtdgwaVf1cbvgOe
8kfpc5COh9IxAYahmNt+5pBta0SDlmoDz4Rk/4AFXk2mjpDYoizaYMPeIInGUzOv
/LE6Y7VVRY/BJG9EZ5pVYJPCruPCUHkhvm+r9Tt56slk+HE2d52uFRSDd2FxK3n3
cN1vJ5ogsvmHayWUjVUA18LLfGSxEFsc4wIBAg==
----- КОНЕЦ ПАРАМЕТРОВ DH -----

После этих изменений мы должны перезапустить службы Postfix и httpd:

[root @ linuxbox tls] # перезапуск постфикса службы
[root @ linuxbox tls] # статус постфикса службы
[root @ linuxbox tls] # перезапуск службы httpd
[root @ linuxbox tls] # статус httpd службы

Включение группы Diffie-Helman Group в наши сертификаты TLS может немного замедлить подключение по HTTPS, но добавление безопасности того стоит.

Проверка Squirrelmail

Despues что сертификаты сгенерированы правильно и что мы проверяем их правильную работу, как это делали с помощью консольных команд, укажите в предпочтительном браузере URL http://mail.desdelinux.fan/webmail и он подключится к веб-клиенту после принятия соответствующего сертификата. Обратите внимание, что даже если вы укажете протокол HTTP, он будет перенаправлен на HTTPS, и это связано с конфигурацией по умолчанию, которую CentOS предлагает для Squirrelmail. Посмотреть файл /etc/httpd/conf.d/squirrelmail.conf.

О почтовых ящиках пользователей

Dovecot создает почтовые ящики IMAP в папке HOME каждого пользователя:

[корень @ linuxbox ~] # ls -la /home/legolas/mail/.imap/
всего 12 drwxrwx ---. 5 леголас мейл 4096 22 мая 12:39. drwx ------. 3 леголас леголас 75 22 мая, 11:34 .. -rw -------. 1 леголас леголас 72 22 мая, 11:34 dovecot.mailbox.log -rw -------. 1 леголас леголас 8 мая, 22:12 dovecot-uidvalidity -r - r - r--. 39 леголас леголас 1 0 мая 22:10 dovecot-uidvalidity.12f5922d1 drwxrwx ---. 1 леголас почта 2 56 мая 22:10 INBOX drwx ------. 23 леголас леголас 2 56 мая 22:12 Отправлено drwx ------. 39 леголас леголас 2 мая 30 22:11 Trash

Они также хранятся в / var / mail /

[root @ linuxbox ~] # меньше / var / mail / legolas
От MAILER_DAEMON Пн, 22 мая, 10:28:00 2017 Дата: Пн, 22 мая 2017, 10:28:00 -0400 От: Внутренние данные почтовой системы Тема: НЕ УДАЛЯЙТЕ ЭТО СООБЩЕНИЕ - ВНУТРЕННИЕ ДАННЫЕ ПАПКИ Идентификатор сообщения: <1495463280 @ linuxbox> X-IMAP: 1495462351 0000000008 Статус: RO Этот текст является частью внутреннего формата вашей почтовой папки и не является настоящим сообщением . Он создается автоматически программным обеспечением почтовой системы. При удалении важные данные папки будут потеряны, и они будут созданы заново с восстановлением исходных значений данных. От root@desdelinux.fan Пн 22 мая 10:47:10 2017 г. Обратный путь: X-Original-To: legolas Доставлено-To: legolas@desdelinux.fan Получено: desdelinux.fan (Postfix, from userrid 0) id 7EA22C11FC57; Пн, 22 мая 2017 г. 10:47:10 -0400 (EDT) Дата: Пн, 22 мая 2017 г. 10:47:10 -0400 Кому: legolas@desdelinux.fan Тема: Тест пользовательского агента: Heirloom mailx 12.5 7/5 / 10 MIME-версия: 1.0 Content-Type: text / plain; charset = us-ascii Content-Transfer-Encoding: 7bit Message-Id: <20170522144710.7EA22C11FC57@desdelinux.fan> От: root@desdelinux.fan (root) X-UID: 7 Статус: RO Здравствуйте. Это тестовое сообщение от buzz@deslinux.fan, понедельник, 22 мая, 10:53:08, 2017 г. Обратный путь: X-Original-To: legolas@desdelinux.fan Кому доставлено: legolas@desdelinux.fan Получено: от sysadmin.desdelinux.fan (шлюз [172.16.10.1]) desdelinux.fan (Postfix) с идентификатором ESMTP C184DC11FC57 для ; Пн, 22 мая 2017 г. 10:53:08 -0400 (EDT) Идентификатор сообщения: <739874.219379516-sendEmail@sysadmin> От: "buzz@deslinux.fan" Кому: "legolas@desdelinux.fan" Тема: Привет Дата: Пн, 22 мая 2017 г. 14:53:08 +0000 X-Mailer: sendEmail-1.56 MIME-Version: 1.0 Content-Type: multipart / related; border = "---- разделитель MIME для sendEmail-794889.899510057
/ var / mail / леголас

Резюме мини-сериала PAM

Мы рассмотрели суть почтового сервера и сделали небольшой упор на безопасность. Мы надеемся, что эта статья послужит отправной точкой в ​​тему, столь же сложную и подверженную ошибкам, как реализация почтового сервера вручную.

Мы используем локальную аутентификацию пользователя, потому что, если мы правильно прочитаем файл /etc/dovecot/conf.d/10-auth.conf, мы увидим, что в итоге он включен -по умолчанию- файл аутентификации пользователей системы ! включить auth-system.conf.ext. Именно этот файл в заголовке сообщает нам, что:

[root @ linuxbox ~] # меньше /etc/dovecot/conf.d/auth-system.conf.ext
# Аутентификация для пользователей системы. Включено из 10-auth.conf. # # # # PAM аутентификация. В настоящее время предпочитается большинством систем.
# PAM обычно используется с userdb passwd или userdb static. # ПОМНИТЕ: вам понадобится файл /etc/pam.d/dovecot, созданный для аутентификации PAM #, чтобы она действительно работала. passdb {driver = pam # [session = yes] [setcred = yes] [failure_show_msg = yes] [max_requests = ] # [cache_key = ] [ ] #args = dovecot}

А другой файл существует /etc/pam.d/dovecot:

[root @ linuxbox ~] # cat /etc/pam.d/dovecot 
# Требуется авторизация% PAM-1.0 pam_nologin.so auth include password-auth account include password-auth session include password-auth

Что мы пытаемся донести об аутентификации PAM?

  • CentOS, Debian, Ubuntu и многие другие дистрибутивы Linux устанавливают Postifx и Dovecot с включенной локальной аутентификацией по умолчанию.
  • Многие статьи в Интернете используют MySQL - а в последнее время и MariaDB - для хранения пользователей и других данных, касающихся почтового сервера. НО это серверы для ТЫСЯЧ ПОЛЬЗОВАТЕЛЕЙ, а не для классической сети SME с - возможно - сотнями пользователей.
  • Аутентификация через PAM необходима и достаточна для предоставления сетевых услуг, если они работают на одном сервере, как мы видели в этом минисериале.
  • Пользователи, хранящиеся в базе данных LDAP, могут быть сопоставлены, как если бы они были локальными пользователями, а аутентификация PAM может использоваться для предоставления сетевых услуг с разных серверов Linux, которые действуют как клиенты LDAP для центрального сервера аутентификации. Таким образом, мы будем работать с учетными данными пользователей, хранящимися в центральной базе данных сервера LDAP, и НЕ будет иметь существенного значения поддерживать базу данных с локальными пользователями.

До следующего приключения!


Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

9 комментариев, оставьте свой

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Lagarto сказал

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

    Большое спасибо за ваш достойный вклад,

  2.   Дарко сказал

    Почему бы не использовать Mailpile с PGP для обеспечения безопасности? Также Roundcube имеет гораздо более интуитивно понятный интерфейс и может также интегрировать PGP.

  3.   Мартин сказал

    3 дня назад прочитал пост, знаю как вас благодарить. Я не планирую устанавливать почтовый сервер, но всегда полезно видеть создание сертификатов, полезных для других приложений, и срок действия этих руководств практически не истекает (особенно при использовании CentOS).

  4.   Federico сказал

    Мануэль Силлеро: Спасибо за ссылку на и из вашего блога на эту статью, которая представляет собой минимальное ядро ​​почтового сервера на основе Postfix и Dovecot.

    Ящерица: Как всегда, ваша оценка очень хорошо принята. Спасибо.

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

    Мартин: Спасибо вам также за то, что вы прочитали статью, и я надеюсь, что она поможет вам в вашей работе.

  5.   Зодиак Карбур сказал

    Потрясающая статья друга Федерико. Большое спасибо за такой хороший туто.

  6.   Archy сказал

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

  7.   Вилинтон Асеведо Руэда сказал

    Добрый день,

    Им будет предложено сделать то же самое с сервером каталогов Fedora + postifx + dovecot + thunderbird или outlook.

    У меня есть часть, но я застрял, я бы с радостью поделился документом с сообществом @desdelinux

  8.   Я получаю сказал

    Не думал, что это дойдет до более 3000 посещений !!!

    Привет Ящерица!

  9.   Darkend сказал

    Отличный коллега по учебнику.
    Не могли бы вы сделать это для Debian 10 с пользователями Active Directory, установленными на Samba4 ???
    Я предполагаю, что это будет почти то же самое, но с изменением типа аутентификации.
    Раздел, который вы посвятили созданию самозаверяющих сертификатов, очень интересен.