Открыть список
Как стать автором
Обновить
47,25
Рейтинг
Zextras Technology
Цифровое рабочее место Zextras

Настройка Single Sign-On в Zimbra Collaboration Suite 9 Open-Source Edition

Блог компании Zextras TechnologyСистемное администрированиеСетевые технологии
Одной из важных технологий для обеспечения удобства и безопасности работы пользователей во внутренней сети предприятия является технология Single Sign-On. Данная технология позволяет сотрудникам проходить процедуру аутентификации всего один раз и после успешного ее завершения, получать доступ ко всем корпоративным ресурсам автоматически. В том случае, если вы используете Zimbra Collaboration Suite, то можете настроить SSO в ней. В данной статье мы расскажем о том, как это сделать.

image

В данной статье подразумевается, что вы используете для аутентификации пользователей Active Directory, Single Sign-On осуществляется при помощи Kerberos, а пользователи в Zimbra OSE соответствуют тем, что заведены в AD. Напомним, что ранее мы уже писали о том, как настроить автоматическое создание пользователей в Zimbra OSE из AD.

Исходные данные: Сервер с Zimbra 9 расположен на домене madegirah.ru, на нем используется тип аутентификации AD. Сервер с AD находится по адресу MADEGIRAH.LOCAL.

Принцип настройки SSO в таком случае будет довольно прост. В рамках него мы:

  1. Создадим специального пользователя, так называемого «билетера», который будет выдавать пользователям билеты для аутентификации
  2. Создадим Keytab-файл в Kerberos
  3. Настроим утилиту SPNEGO и сам сервер Zimbra OSE на работу с Kerberos
  4. Настроим браузеры и почтовые клиенты на работу с SSO.

Обращаем ваше внимание на то, что необходимо создавать резервные копии всех файлов при внесении в них каких-либо изменений.

В первую очередь нам потребуется создать в AD новую учетную запись zimbra и запретить ей смену пароля.







После этого на контроллере домена создадим для неё ряд SPN-записей. В нашем случае это будут принципалы для протоколов http, pop, imap и smtp. Для их добавления в учетную запись zimbra нужно поочередно выполнить команды

  • setspn -S HTTP/madegirah.ru zimbra
  • setspn -S POP/madegirah.ru zimbra
  • setspn -S IMAP/madegirah.ru zimbra
  • setspn -S SMTP/madegirah.ru zimbra

После этого проверим, что пользователю были добавлены все необходимые принципалы при помощи команды setspn –L zimbra.



После этого создаем на контроллере домена папку C:\keys, в которую будем складывать сгенерированные с помощью Kerberos keytab-файлы. Сгенерируем наш первый keytab при помощт данной команды:

ktpass -out c:\keys\jetty.keytab -princ HTTP/madegirah.ru@MADEGIRAH.LOCAL -mapUser zimbra -mapOp set -pass ******** -crypto RC4-HMAC-NT -pType KRB5_NT_PRINCIPAL

Создастся keytab с одним принципалом. Теперь нам необходимо добавить в него еще 3 принципала. Делается это при помощи следующих команд,:

  1. ktpass -princ IMAP/madegirah.ru@MADEGIRAH.LOCAL -mapuser zimbra -pass ******** -crypto All -ptype KRB5_NT_PRINCIPAL -in c:\keys\jetty.keytab -out c:\keys\jetty.new.keytab
  2. ktpass -princ POP/madegirah.ru@MADEGIRAH.LOCAL -mapuser zimbra -pass ******** -crypto All -ptype KRB5_NT_PRINCIPAL -in c:\keys\jetty.new.keytab -out c:\keys\jetty.new1.keytab
  3. ktpass -princ SMTP/madegirah.ru@MADEGIRAH.LOCAL -mapuser zimbra -pass ******** -crypto All -ptype KRB5_NT_PRINCIPAL -in c:\keys\jetty.new1.keytab -out c:\keys\jetty.new2.keytab



В итоге файл c:\keys\jetty.new2.keytab будет содержать все необходимые принципалы. Удалим все полученные в ходе выполнения инструкции keytab-файлы, кроме jetty.new2.keytab. Его мы переименуем в jetty.keytab и скопируем на сервер с Zimbra OSE 9 в папки /opt/zimbra/data/mailboxd/spnego/ и /opt/zimbra/jetty/. Сменим права доступа к keytab-файлу с помощью команд

chown zimbra:zimbra /opt/zimbra/data/mailboxd/spnego/jetty.keytab
chown zimbra:zimbra /opt/zimbra/jetty/jetty.keytab


Теперь приступим к настройке встроенной в Zimbra Collaboration Suite утилиты SPNEGO, которая и будет работать с созданным ранее .keytab-файлом. Настроить SPNEGO можно при помощи следующих команд:

sudo su — zimbra
zmprov mcf zimbraSpnegoAuthEnabled TRUE
zmprov mcf zimbraSpnegoAuthRealm MADEGIRAH.LOCAL
zmprov ms madegirah.ru zimbraSpnegoAuthTargetName HTTP/madegirah.ru
zmprov ms madegirah.ru zimbraSpnegoAuthPrincipal HTTP/madegirah.ru
zmprov ms madegirah.ru zimbraImapSaslGssapiEnabled TRUE
zmprov ms madegirah.ru zimbraPop3SaslGssapiEnabled TRUE
zmprov md madegirah.ru zimbraAuthKerberos5Realm MADEGIRAH.LOCAL
zmprov md madegirah.ru zimbraWebClientLoginURL '/service/spnego'
zmprov md madegirah.ru zimbraWebClientLogoutURL '../?sso=1'


Обращаем ваше внимание на то, что настойка SPNEGO является глобальной, а это значит, что все домены на вашем сервере Zimbra должны использовать для аутентификации одну и ту же Active Directory.

Следующим шагом станет приведение файла настроек /opt/zimbra/jetty/etc/krb5.ini в следующий вид:

[libdefaults]
default_realm = MADEGIRAH.local
dns_lookup_realm = no
dns_lookup_kdc = no
kdc_timesync = 1
ticket_lifetime = 24h

default_keytab_name = FILE:/opt/zimbra/data/mailboxd/spnego/jetty.keytab
default_tgs_enctypes = arcfour-rc4-md5 rc4-hmac des-cbc-crc des-cbc-md5
default_tkt_enctypes = arcfour-rc4-md5 rc4-hmac des-cbc-crc des-cbc-md5
permitted_enctypes = arcfour-rc4-md5 rc4-hmac des-cbc-crc des-cbc-md5

[realms]
MADEGIRAH.local = {
kdc = DC.MADEGIRAH.LOCAL
admin_server = DC.MADEGIRAH.LOCAL
default_domain = MADEGIRAH.LOCAL
}

[domain_realm]
madegirah.local = MADEGIRAH.LOCAL
.madegirah.local = MADEGIRAH.LOCAL
.local = MADEGIRAH.LOCAL

[appdefaults]
autologin = true
forwardable=true

На этом настройка серверной части завершается и остается лишь внести некоторые изменения в настройки на стороне пользователя. В частности, необходимо настроить браузеры на работу с SPNEGO. В случае с Firefox нужно ввести в адресную строку about:config и в поле поиска ввести network.neg. В отобразившихся полях, содержащих слово uris в названии указать значение madegirah.ru, либо https://.



В случае с Internet Explorer нужно добавить в местную интрасеть madegirah.ru. Также это можно сделать через групповые политики. Google Chrome же подхватывает настройки Internet Explorer.



Для SSO-аутентификации в почтовом клиенте Thunderbird необходимо при настройке учетной записи указать тип аутентификации GSSAPI. Именно для того, чтобы это работало, мы ранее добавляли принципалы для IMAP, POP и SMTP. Обращаем ваше внимание, что Outlook подобного вида аутентификации при использовании POP/IMAP и SMTP не поддерживает ввиду ограничений клиента.



Еще одним неприятным нюансом может стать предупреждение о небезопасной странице при использовании в Zimbra OSE самоподписанного сертификата. Этот нюанс не является критичным, однако регулярно появляющееся предупреждение противоречит самому принципу удобства технологии Single Sign-On. Для того, чтобы его убрать, необходимо установить сертификат Zimbra OSE на целевой машине.

Для того, чтобы это сделать, необходимо на сервере Zimbra следующие команды:

sudo su
cd /opt/zimbra/ssl/zimbra/ca
openssl x509 -in ca.pem -outform DER -out ~/zimbra.cer


После этого полученный сертификат необходимо перенести на целевую машину и дважды кликнуть по нему мышкой. В открывшемся окне нужно выбрать «Установить сертификат» и импортировать его в Мастере импорта сертификатов. Единственный нюанс при его установке, что при выборе хранилища для сертификата необходимо поместить его в хранилище «Доверенные корневые центры сертификации». Кроме того, можно установить данный сертификат через групповые политики.

После того, как данный сертификат будет указан в качестве доверенного, предупреждение при входе в веб-клиент Zimbra OSE и при использовании Thunderbird перестанет появляться.

По всем вопросам, связанными c Zextras Suite Pro и Team Pro вы можете обратиться к Представителю компании «Zextras Technology» Екатерине Триандафилиди по электронной почте ekaterina.triandafilidi@zextras.com
Теги:single sign-onkerberoszimbramicrosoft acrive directoryzextras
Хабы: Блог компании Zextras Technology Системное администрирование Сетевые технологии
Всего голосов 7: ↑7 и ↓0 +7
Просмотры888

Комментарии 4

Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Похожие публикации

Лучшие публикации за сутки

Информация

Дата основания
Местоположение
Италия
Сайт
zextras.com
Численность
201–500 человек
Дата регистрации
Представитель
Триандафилиди Екатерина

Блог на Хабре