ActiveDirectory/PostfixDovecot2: различия между версиями

Материал из ALT Linux Wiki
 
(не показано 26 промежуточных версий 1 участника)
Строка 1: Строка 1:
{{stub}}
<div style="text-align:center;">'''Почтовая система для работы с Samba AD'''</div>
<div style="text-align:center;">'''Почтовая система для работы с Samba AD'''</div>


Строка 4: Строка 5:


= Начальные данные:  =
= Начальные данные:  =
 
<pre>
имя домена alt.fish  
имя домена alt.fish  
имя домен-контроллера d1.alt.fish  
имя домен-контроллера d1.alt.fish  
имя клиентских машин u1 и u2.  
имя клиентских машин u1 и u2.  
сеть 172.16.0.0/12  
сеть 172.16.0.0/12  
Пользователи соответствуют учетным записям в Linux  
Пользователи соответствуют учетным записям в Linux  
Почта хранится в maildir.  
Почта хранится в maildir.  
 
</pre>
== Количество доменов ==
== Количество доменов ==


Строка 22: Строка 18:


== Версии ОС ==
== Версии ОС ==
Инструкция рассчитана на использование Branch-p8.


Инструкция рассчитана на использование Branch-P8
Уровень ''Домена AD и леса AD'' должен быть не выше Windows 2008 R2.
 
ActiveDirectory примерно соответствует конфигурируемой на основе Windows Server 2008 R2.  


== Версии Office ==
== Версии Office ==


В данной версии инструкции не рассматривается конфигурация на основе MAPI или EWS.  
В данной версии инструкции не рассматривается конфигурация для подключения Microsoft Exchange на основе MAPI или EWS.  
 
Outlook может использоваться начиная с 2003 в режиме подключения по IMAP.
 
= Анализ безопасности =
 
== 1 версия ==


Следует заметить, что данная инструкция не претендует на создание&nbsp; полностью безопасной конфигурации.
Для подключения в данной конфигурации можно использовать Microsoft Outlook версии, начиная с 2003 в режиме подключения почты по imap.
 
Вопросы защиты данных будут рассмотрены ниже.  


= Начальная конфигурация =
= Начальная конфигурация =
Строка 62: Строка 49:




<div style="text-align:center;"></div>


Они видят друг друга через внутреннюю сеть VirtualBox с именем intel.  
Они видят друг друга через внутреннюю сеть VirtualBox с именем intel.  
Строка 71: Строка 56:
Для автоматической конфигурации ПО почтовых клиентов на рабочих  
Для автоматической конфигурации ПО почтовых клиентов на рабочих  


станциях используется следующая схема * &nbsp;Записи SRV домена, указывающие на местоположение конфигурационной информации  
станциях используется следующая схема  
* Записи SRV домена, указывающие на местоположение конфигурационной информации  
* Сама конфигурационная информация в формате XML, указывающая параметры подключения к почтовым сервисам.  
* Сама конфигурационная информация в формате XML, указывающая параметры подключения к почтовым сервисам.  


Строка 105: Строка 91:
Далее выполнить  
Далее выполнить  


 
<pre>
samba-tool domain provision --use-rfc2307 --interactive --use-xattrs=yes  
samba-tool domain provision --use-rfc2307 --interactive --use-xattrs=yes  


Строка 121: Строка 107:


Retype password:  
Retype password:  
 
</pre>
=== Настройка NTP ===
=== Настройка NTP ===


ntp должен обеспечивать синхронизацию времени на клиентах и серверах с точностью 30 сек.  
ntp должен обеспечивать синхронизацию времени на клиентах и серверах с точностью 5 минут.


=== настройка пользователей ===
=== настройка пользователей ===
Строка 140: Строка 126:
=== Многодоменные конфигурации ===
=== Многодоменные конфигурации ===


Многодоменные конфигурации не рассматриваются в этой инструкции.  
Многодоменные и многосайтовые в смысле ActiveDirectory конфигурации не рассматриваются.


=== ldap secure mode ===
=== ldap secure mode ===


Созданный по умолчанию конфиг smb требует авторизацию клиетов LDAP через ssl.  
Созданный по умолчанию конфиг smb требует авторизацию клиентов LDAP через ssl.  


Это требует выдачи сертификатов, что весьма сложно и препятствует подключению к ldap  
Это требует выдачи сертификатов, что весьма сложно и препятствует подключению к ldap  
Строка 150: Строка 136:
клиентов. В случае размещения postfix, dovecot, sogo и openchange на одной машине с домен-контроллером  
клиентов. В случае размещения postfix, dovecot, sogo и openchange на одной машине с домен-контроллером  


большого смысла в такой усиленной авторизации нет и можнр задать  
большого смысла в такой усиленной авторизации нет и можн задать  


ldap&nbsp;&nbsp;server&nbsp;require&nbsp;strong auth&nbsp;&nbsp;= no  
ldap&nbsp;&nbsp;server&nbsp;require&nbsp;strong auth&nbsp;&nbsp;= no  
Строка 156: Строка 142:
в smb.conf  
в smb.conf  


что упростит настройку.  
что упростит настройку.


= Mail subsystem configuration =
= Mail subsystem configuration =
Строка 165: Строка 151:


=== аутентификация при отсылке внутренней почты ===
=== аутентификация при отсылке внутренней почты ===
 
Отсылая внутреннюю почту внешнему абоненту, мы должны проверять авторизацию у отправляющего абонента для предотвращения отсылки спама (open relay).
При отсылке почты по протоколу SMTP произвольному абоненту нужна
 
проверка доступа путем входа для предотвращения open relay.  


=== доступ без аутентификации при подсоединении внешних SMTP cоединений ===
=== доступ без аутентификации при подсоединении внешних SMTP cоединений ===


При получении почты при помощи протокола smtp авторизация отправителя  
При получении почты при помощи протокола smtp авторизация отправителя  
 
невозможна по объективной причине - предполагается, что почту может отправлять любой клиент сети интернет, в том числе, которого мы не знаем.
невозможна.  
 
Возможно лишь осуществление проверок с использованием * Greylisting
* через черные/белые списки
* путем
 
 


<div style="text-align:center;"></div>
<div style="text-align:center;"></div>


=== ldap ===
== Поиск информации и проверка пароля в postfix и dovecot ==
 
Поиск информации о пользователе в ldap осуществляется путем присоединения (bind)  
Поиск информации о пользователе в ldap осуществляется путем присоединения  
с выделенным пользователем ldap-connect.
 
Этому пользователю необходимо присвоить пароль заранее.
(bind) с выделенным пользователем ldap-connect  
 
==== Аутентификация ====
 
Осуществляется возможными вариантами:
 


Проверка
* попыткой cделать bind&nbsp;&nbsp;с указанным пользователем и по результату получить результат авторизации  
* попыткой cделать bind&nbsp;&nbsp;с указанным пользователем и по результату получить результат авторизации  
* использованием bind с пользователем ldap-connect, а затем поиском по passdb  
* использованием bind с пользователем ldap-connect, а затем поиском по passdb
* другими способами.
 
 
 
<div style="text-align:center;"></div>
 
=== Связь с Dovecot ===


== dovecot ==
== dovecot ==
Строка 209: Строка 173:
=== Получение информации из LDAP ===
=== Получение информации из LDAP ===


Из LDAP AD Dovecot получает следующую информацию: * userdb - информацию о пользователе  
Из LDAP AD Dovecot получает следующую информацию:  
* userdb - информацию о пользователе  
* passdb - аутентификационную информацию.  
* passdb - аутентификационную информацию.  


Строка 216: Строка 181:
<div style="text-align:center;"></div>
<div style="text-align:center;"></div>


== Планирование путей почты ==
== Планирование путей прохождения почты ==


Достаточно важно спланировать и описать пути прохождения почты. Хотя для одного домена задача выглядит тривиальной, уже при двух доменах  
Достаточно важно спланировать и описать пути прохождения почты. Хотя для одного домена задача выглядит тривиальной, уже при двух доменах  


правильное описание прохождения почты может существенно упростить конфигурирование. * Локальный абонент-локальный абонент<br/>Письма посылаются через SMTP c авторизацией в Postfix с использованием SASL (RFC4954) <br/>путем выполнения программы deliver-lda из пакета dovecot. <br/>
правильное описание прохождения почты позволяет не запутаться
# Локальный абонент-локальный абонент<br/>Письма посылаются через SMTP c авторизацией в Postfix с использованием SASL (RFC4954) <br/>путем выполнения программы deliver-lda из пакета dovecot. <br/>
(файл После этого почта попадает в каталог /var/mail/)  
(файл После этого почта попадает в каталог /var/mail/)  


* Локальный абонент - внешний абонент<br/>Письма посылаются через Postfix SMTP c авторизацией&nbsp;&nbsp;с использованием SASL (RFC4954) <br/>путем выполнения программы deliver-lda из пакета dovecot.
#2 Локальный абонент - внешний абонент<br/>Письма посылаются через Postfix SMTP c авторизацией&nbsp;&nbsp;с использованием SASL (RFC4954) <br/>путем выполнения программы deliver-lda из пакета dovecot.  
 
* Внешний абонент-локальный абонент<br/>Полученные Postfix-ом через SMTP почтовые сообщения проверяются на наличие локального адресата путем cоединения с ldap <br/>а затем передаются dovecot для отправки.  


#3 Внешний абонент-локальный абонент<br/>Полученные Postfix-ом через SMTP почтовые сообщения проверяются на наличие локального адресата путем cоединения с ldap <br/>а затем передаются dovecot для отправки.


== Хранение почты ==
В этой конфигурации почта хранится в Maildir, находящихся в /var/mail/<имя домена>
и принадлежащих служебному пользователю mail, группе mail (8,12).


== Планирование конфигурации LDAP ==
== Планирование конфигурации LDAP ==
Строка 234: Строка 202:


При портировании настроек из существующих схем AD важно понимать, в каких конкретно полях cn= ou=  
При портировании настроек из существующих схем AD важно понимать, в каких конкретно полях cn= ou=  
 
находится информация о пользователе. Эта информация может находиться в совершенно разных, зависящих от выбора, сделанного администратором  
находится информация о пользователе. Она может находиться в совершенно разных, зависящих от выбора, сделанного администратором  
 
местах.  
местах.  


Строка 243: Строка 209:
или  
или  


ou=Organization, cn=MailUsers.  
ou=Organization, cn=MailUsers.


=== Как задается имя пользователя. ===


=== Как задается имя пользователя. ===
Для создания пользователя его необходимо завести в домене cоответствующем организационном подразделении ldap и задать ему пароль там же.
Каталоги пользователя создадутся автоматически.


=== Как задается информация о группах ===
* Из командной строки при помощи samba-tool user add
* При помощи графических утилит редактирования ldap.


Имеюшаяся информация о группах пользователей, которая важна для


маршрутизации почты должна быть исследована.
=== Как задается информация о группах ===


Подробнее о маршрутизации групп можно прочесть в документе LDAP_README, входящем в состав пакета postfix.  
Подробнее о маршрутизации групп можно прочесть в документе LDAP_README, входящем в состав пакета postfix.  
Строка 258: Строка 226:
= Приложение. Конфигурационные файлы. =
= Приложение. Конфигурационные файлы. =


== smb.conf ==
[[Категория: Почта]]
# Global parameters
[[Категория: Active Directory]]
[global]
       netbios  name = D1
       realm  = ALT.FISH
       workgroup  = ALT
       dns  forwarder = 8.8.8.8
       server  role = active directory domain controller
       idmap_ldb:use rfc2307 = yes
       idmap config * : range = 10000 - 20000
       tls enabled = yes
       ldap  server require strong auth  = no
       tls keyfile = tls/key.pem
       tls certfile = tls/cert.pem
       tls cafile = tls/ca.pem
       dsdb:schema update allowed = true
       dcerpc_mapiproxy:server = true
       dcerpc endpoint servers = +epmapper,+mapiproxy
       dcerpc_mapiproxy:interfaces = exchange_emsmdb, exchange_nsp,exchange_ds_rfr
[netlogon]
       path  = /var/lib/samba/sysvol/alt.fish/scripts
       read  only = No
       write  ok = Yes
[sysvol]
       path  = /var/lib/samba/sysvol
       read  only = No
       write  ok = Yes
[[Категория: ActiveDirectory]]

Текущая версия от 00:42, 27 октября 2017

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.
Почтовая система для работы с Samba AD

В этой инструкции разбираются вопросы работы Samba в режиме DC с Postfix и Dovecot.

Начальные данные:

имя домена alt.fish 
имя домен-контроллера d1.alt.fish 
имя клиентских машин u1 и u2. 
сеть 172.16.0.0/12 
Пользователи соответствуют учетным записям в Linux 
Почта хранится в maildir. 

Количество доменов

В текущей конфигурации не рассматриваются многодоменные конфигурации

Версии ОС

Инструкция рассчитана на использование Branch-p8.

Уровень Домена AD и леса AD должен быть не выше Windows 2008 R2.

Версии Office

В данной версии инструкции не рассматривается конфигурация для подключения Microsoft Exchange на основе MAPI или EWS.

Для подключения в данной конфигурации можно использовать Microsoft Outlook версии, начиная с 2003 в режиме подключения почты по imap.

Начальная конфигурация

Пакетная база

Будет необходимо установить следующие пакеты

  • ntp
  • task-samba-dc
  • python-module-PasteDeploy
  • postfix
  • dovecot


Network configuration

Сеть состоит из двух виртуальных машин * d1, сконфигурированная как домен-контроллер samba, postfix, dovecot с адресом 172.16.2.1

  • u1, сконфигурированная как рабочая станция с адресом 172.16.2.55


Они видят друг друга через внутреннюю сеть VirtualBox с именем intel.

Autoconfig

Для автоматической конфигурации ПО почтовых клиентов на рабочих

станциях используется следующая схема

  • Записи SRV домена, указывающие на местоположение конфигурационной информации
  • Сама конфигурационная информация в формате XML, указывающая параметры подключения к почтовым сервисам.


Client configuration

В качестве тестового клиента используется Evolution,

установленный на Branch-p8.

 

Samba Configuration and installation

Installation of domain

Сгенерировать и записать себе где-то пароль на домен.

Пароль  должен быть не

менее 8 символов и содержать символы

 как минимум трёх групп из четырёх возможных:

 латинских букв в верхнем и нижнем регистрах,

чисел и других небуквенно-цифровых символов.


Далее выполнить

samba-tool domain provision --use-rfc2307 --interactive --use-xattrs=yes 

Realm [ALT.FISH]: 

 Domain [ALT]: 

 Server Role (dc, member, standalone) [dc]: 

 DNS backend (SAMBA_INTERNAL, BIND9_FLATFILE, BIND9_DLZ, NONE) [SAMBA_INTERNAL]: 

 DNS forwarder IP address (write 'none' to disable forwarding) [8.8.8.8]: 

Administrator password: 

Retype password: 

Настройка NTP

ntp должен обеспечивать синхронизацию времени на клиентах и серверах с точностью 5 минут.

настройка пользователей

В данной конфигурации рассматривается настройка при которой пользователи SAMBA входят в число пользователей

домен-контроллеров путем nsswitch и nscld. Идентификаторы пользователей SAMBA начинаются с 10000.

Необходим пользователь

cn=ldap-connect,cn=users,dn=alt,dn=fish

пароль которого надо записать и выставить ему отсутствие expiration date при помощи samba-tool.

Многодоменные конфигурации

Многодоменные и многосайтовые в смысле ActiveDirectory конфигурации не рассматриваются.

ldap secure mode

Созданный по умолчанию конфиг smb требует авторизацию клиентов LDAP через ssl.

Это требует выдачи сертификатов, что весьма сложно и препятствует подключению к ldap

клиентов. В случае размещения postfix, dovecot, sogo и openchange на одной машине с домен-контроллером

большого смысла в такой усиленной авторизации нет и можн задать

ldap  server require strong auth  = no

в smb.conf

что упростит настройку.

Mail subsystem configuration

Postfix

Настройка Postfix для работы с SAMBA AD.

аутентификация при отсылке внутренней почты

Отсылая внутреннюю почту внешнему абоненту, мы должны проверять авторизацию у отправляющего абонента для предотвращения отсылки спама (open relay).

доступ без аутентификации при подсоединении внешних SMTP cоединений

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

Поиск информации и проверка пароля в postfix и dovecot

Поиск информации о пользователе в ldap осуществляется путем присоединения (bind) с выделенным пользователем ldap-connect. Этому пользователю необходимо присвоить пароль заранее.

Проверка

  • попыткой cделать bind  с указанным пользователем и по результату получить результат авторизации
  • использованием bind с пользователем ldap-connect, а затем поиском по passdb

dovecot

Получение информации из LDAP

Из LDAP AD Dovecot получает следующую информацию:

  • userdb - информацию о пользователе
  • passdb - аутентификационную информацию.


Планирование путей прохождения почты

Достаточно важно спланировать и описать пути прохождения почты. Хотя для одного домена задача выглядит тривиальной, уже при двух доменах

правильное описание прохождения почты позволяет не запутаться

  1. Локальный абонент-локальный абонент
    Письма посылаются через SMTP c авторизацией в Postfix с использованием SASL (RFC4954)
    путем выполнения программы deliver-lda из пакета dovecot.

(файл После этого почта попадает в каталог /var/mail/)

  1. 2 Локальный абонент - внешний абонент
    Письма посылаются через Postfix SMTP c авторизацией  с использованием SASL (RFC4954)
    путем выполнения программы deliver-lda из пакета dovecot.
  1. 3 Внешний абонент-локальный абонент
    Полученные Postfix-ом через SMTP почтовые сообщения проверяются на наличие локального адресата путем cоединения с ldap
    а затем передаются dovecot для отправки.

Хранение почты

В этой конфигурации почта хранится в Maildir, находящихся в /var/mail/<имя домена> и принадлежащих служебному пользователю mail, группе mail (8,12).

Планирование конфигурации LDAP

В каких полях содержится Email

При портировании настроек из существующих схем AD важно понимать, в каких конкретно полях cn= ou= находится информация о пользователе. Эта информация может находиться в совершенно разных, зависящих от выбора, сделанного администратором местах.

например cn=Users

или

ou=Organization, cn=MailUsers.

Как задается имя пользователя.

Для создания пользователя его необходимо завести в домене cоответствующем организационном подразделении ldap и задать ему пароль там же. Каталоги пользователя создадутся автоматически.

  • Из командной строки при помощи samba-tool user add
  • При помощи графических утилит редактирования ldap.


Как задается информация о группах

Подробнее о маршрутизации групп можно прочесть в документе LDAP_README, входящем в состав пакета postfix.

Приложение. Конфигурационные файлы.