Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Formatting was changed.

...

Выберите ваш механизм авторизации:
 

Авторизация Active Directory через NTLM (Архива v2.2 или выше)

 

Note

NTLM SSO: со всеми проблемами, связанными с ошибкой NTLM аутентификации, обращайтесь к разделу Ошибка NTLM аутентификации.

Note

Подготовка: прежде чем начать, убедитесь, что вы точно следовали всем шагам настройки конфигурации AD в разделе Авторизация. В особенности, вы должны были запустить скрипт ADSetupWizard.vbs. Этот скрипт создает требуемый аккаунт компьютера в Active Directory. Более того, он устанавливает пароль, выбранный вами, для этого аккаунта. 

Типичные настройки Active Directory

Типичные настройки вы найдете во вкладке Настройка -> Авторизация:

Code Block
DNS сервер: отмечено галочкой (если устанавливается интернет-соединение, то галочки не должно быть)
Выполнять DNS запросы серверов: отмечено галочкой. 
DNS сервер IP адрес: 192.168.0.1 (Замечание: Это IP-адрес вашего DNS-сервера)
DNS сайт: (оставьте незаполненным)
Bind DN: DC=company,DC=local (Замечание: написание DC заглавными буквами)
Логин на чтение LDAP

...

Вы назначили роль, в которой отсутствует атрибут LDAP. Необходимо заново назначить данную роль.

: service$@company.local (Замечание: учетная запись компьютера (она же сервисная) должна быть создана в Active Directory). 
Active Directory Сервер Адреса: activedirectory.company.local (Замечание: здесь должно быть указано полное доменное имя. Если это не работает, попробуйте company.local) (НЕ вводите сюда IP-адрес!!!)
Bind Attribute: SAMAccountName
Email Attribute: proxyAddresses (если вы используете MS Exchange)
Значение сообщения: SMTP:(.*) (если используете MS Exchange)
UPN атрибут: userPrincipalName
UPN Значение: (.*)
NTLM SSO (единый пароль на вход) авторизация: Не отмечено галочкой(если отмечено, вы должны внимательно следовать шагам подготовки для NTLM-аутентификации)

Во вкладке Настройка -> Домены проверьте, что все домены введены правильно. 

Следующие порты должны быть открыты на сервере Архива для Active Directory: 389 (LDAP), 445 (SMB) and 53 (DNS).

Note

Замечание: при соединении с сервером AD через Интернет, обычно поле "DNS сервер" не должно быть отмечено галочкой. Когда это поле отмечено, DNS сервер будет возвращать внутренний IP-адрес по подсети, где находится AD-сервер. Это не желательно, если вы подключаетесь извне. Лучше просто указать IP-адрес AD сервера. 

Роли не назначены

Ошибка: Пользователь прошёл авторизацию, но его роль не определена 

Авторизация прошла успешно, хотя пользователю не присвоена определенная роль. Вам нужно назначить соответствующую ему роль в Active Directory.

Отсутствует LDAP атрибут при назначении роли

Ошибка: LDAP атрибут должен быть указан при назначении роли Active Directory 

Вы назначили роль, в которой отсутствует атрибут LDAP. Необходимо заново назначить данную роль.

Неверный Bind атрибут

Ошибка: Авторизация пользователя невозможна: не найдена учетная запись 

Отредактируйте файл server.conf, находящийся в C:\Program Files\MailArchiva\Server\webapps\ROOT\WEB-INF\conf\server.conf. Измените параметр "authentication.bind.attribute=UserPrincipalName"  на "authentication.bind.attribute=sAMAccountName".    
Пользователь не может увидеть собственные сообщения
  

Убедитесь, что во вкладке Настройка -> Авторизация указан Bind атрибут "sAMAccountName".

Неверный DN

Ошибка: учетная запись [имя_пользователя] не была найдена в ldap репозитории.

DN, указанный во вкладке Настройка -> Авторизация, неверен. К примеру, он НЕ ДОЛЖЕН БЫТЬ следующим:

Code Block
DN=demo.local (.local неверная запись, вместо этого должно быть DN=demo, DN=local)

Ошибка: ошибка соединения с LDAP {javax.naming.NamingException: [LDAP: error code 1 - 000020D6: SvcErr: DSID-031007DB, problem 5012 (DIR_ERROR), data 0                   

 Вы используете строчные буквы: dn вместо DN. Как это выглядит у вас: 

 dc=demo,dc=local (Неверно: DC должно быть написано заглавными буквами: DC=demo, DC=local)

Неверное имя учетной записи сервиса

Учетная запись сервиса должна быть записана в правильном формате. Предположим, что учетная запись сервиса - service, он НЕ МОЖЕТ БЫТЬ следующим:

Code Block
service
service@company.local

Правильное значение: service$@company.local.

Обратите внимание, после имени учетной записи идёт знак доллара. Это обозначение учетной записи компьютера в AD. Если вы не знаете, что такое учетная запись компьютера или зачем она нужен, обратитесь в раздел Авторизация.

Сообщения не видны во время поиска

Убедитесь, что почтовый атрибут (Email Attribute) в Active Directory установлен верно. Если вы используете MS Exchange, в поле атрибута во вкладке Настройки -> Авторизация должно быть задано proxyAddressesзадано значение "proxyAddresses". Если вы используете другой почтовый сервер, может быть указано что-то другое, например, mail. В дополнение в качестве фильтра роли пользователя там может быть указано значение %email%.

Нет соединения с Active Directory

Следующие порты должны быть открыты на сервере Архива для Active Directory: 389 (LDAP), 445 (SMB) and 53 (DNS).

Если вы не уверены в этом, обратитесь с помощью Telnet к каждому порту от сервера MailArchiva, чтобы подтвердить, что соединение может быть установлено. 

NTLM SSO авторизация включена без предварительной подготовки

Ошибка: Если вы заходите в веб-интерфейс через бразуер, и браузер при этом начинает быстро переключаться между "определить разрешение экрана" и другой страницей. 

В поле NTLM SSO (единый пароль на вход) авторизация во во вкладке Настройка -> Авторизация стоит галочка, без прохождения предварительно подготовкли для NTLM-авторизации. Или NTLM-авторизация должна быть отключена илил ваш браузен должен быть правильно настроен. Для получения дальнейших сведений, как решить эту проблему, обратитесь в раздел  Ошибка NTLM авторизации. Или же отключите NTLM-авторизацию, как описано ниже:

Зайдите напряму на https://localhost:8090/mailarchiva/signonform.do. Зайдите во вкладке Настройка -> Авторизация, и уберите галочку из поля "NTLM SSO авторизация" и нажмите "Сохранить".

Неверное имя сервера Active Directory 

Во вкладке Настройка -> Авторизация необходимо указать полное доменное имя сервера Active Directory (например, activedirectory.company.name). Замечание: имя сервера должно быть действительным именем сервера AD, а не просто DNS-именем (если оно другое). Не вводите туда  IP-адрес сервера!   

Для проверки, пожалуйста, пропингуйте полное доменное имя сервера Active Directory, чтобы убедиться, что он доступен. Если нет, то имеет место проблема DNS.

Ошибка "Property not set or constructed"  

 

Ошибка "Property not set or constructed" может возникнуть, когда Архива не может установить соединение с DC во время авторизации AD. 

Чтобы избавиться от этой ошибки, проверьте следующее: 

 Убедитесь, что нужные Ensure the appropriate communication ports are open between Архива and the AD server.

  • There is a both a forward and reverse lookup entry for the Архива server specified in the DNS manager on the AD server
  • The machine hosting Архива has a hostname, ip address, fully qualified domain name.

Авторизация Active Directory через Kerberos (v2.1 и более ранние версии, включая OSE)

...

Самый простой способ настроить Архива для авторизации - разрешить DES-аутентификацию в персональных учетных записях AD. В AD консоли выберите Свойства пользователя, выберите вкладку Учетная запись и там выберите "Use kerberos DES encryption types for this account" (рус. Использовать тип шифрования kerberos DES для данной учетной записи).   

Другой способ - включить AES-шифрование в  MailArchiva, создав файл kr5.conf со следующим содержанием: 

Code Block
[libdefaults]


default_tkt_enctypes = aes256-cts

default_tgs_enctypes = aes256-cts

permitted_enctypes = aes256-cts

 

Сохраните файл krb5.conf в /usr/local/mailarchiva/server/webapps/mailarchiva/WEB-INF/conf (на Linux) или в c:\Program Files\MailArchiva\Server\webapps\mailarchiva\server\WEB-INF\conf (на Windows). 

Решение сложных проблем Active Directory

  1. Прежде всего перезагрузите сервер и попробуйте все приведенные выше инструкции ещё раз. Иногда для решения проблем с Kerberos требуется перезагрузка.  
  2. Остановите сервер. 
  3. Включите опцию Отладка (DEBUG) в Логах в ServerLog. 
  4. Запустите сервер из DOS-консоли (в Windows запустите следующий exe-файл: C:\Program Files\MailArchiva\Server\bin\MailArchivaServer.exe)
  5. На экране Настроек (англ. Configuration Screen) в Email Discovery и Консоли администратора (англ. Administration Console) кликните по кнопке Test Login в настройках АD. 
  6. Просмотрите вывод консоли и логи отладки (информация о kerberos protocol handshake должна быть показана в выводе консоли). 
  7. Проверьте Jaas Kereberos Troubleshooting для решения ваших проблем. 

LDAP

...

авторизация

Пользователь не найден из-за несовпадения UID

...