Пример реализации системы SSO

Применение протокола Kerberos для аутентификации достаточно рас- пространено как в сервисах Microsoft, так и в сервисах других производите- лей.  Например,  Kerberos  используется  для  аутентификации клиента  перед

web-сервером. Рассмотрим ее  на  примере модуля  mod_auth_kerb для  web-

сервера Apache.

Выполнение следующего задания создаст защищенную web-страницу на сервере Apache, при этом аутентификация для пользователей домена AD бу- дет происходить прозрачно.

ВЫПОЛНИТЬ!

16. На виртуальной машине WS-Linux открыть текстовым редактором файл

«/etc/apache2/sites-available/default», в разделе <Directory /var/www> ука-

зать следующие директивы (комментарии, указанные после символа «#»,

набирать не надо):

# подключить  модуль  mod_auth_kerb

AuthType Kerberos

# расположение  keytab-файла

Krb5Keytab /etc/apache2/http.keytab

# разрешить  аутентификацию

# при   помощи  сеансового  ключа

KrbMethodNegotiate on

# запретить  аутентификацию уровня Basic

KrbMethodK5Passwd off

# разрешить доступ только

# аутентифицированным  пользователям

Require valid-user

17. На  виртуальной машине  DC  запустить  «Windows  Support  Tools  Shell» (Start ? Programs ? Windows Support tools ? Command Prompt)

18. Создать сущность Kerberos, соответствующую учетную запись и keytab-

файл  для  web-сервера  Apache.  Для  этого  создать  пользователя  ws- linux_http при помощи оснастки «Active Directory Users and Computers».

Создать файл «keytab» при помощи следующей команды:

ktpass –princ HTTP/ws-linux.example.com@EXAMPLE.COM

–crypto des-cbc-md5 +desOnly

–ptype KRB5_NT_PRINCIPAL

–out c:\http.keytab +rndPass

–mapuser ws-linux_http@example.com –mapop set

19. Скопировать файл «http.keytab» в каталог «/etc/apache2» виртуальной ма-

шины WS-Linux.

20. Перезапустить web-сервер Apache при помощи команды

/etc/init.d/apache2 force-reload

21. На виртуальной машине DC запустить и настроить обозреватель Internet

Explorer. Для этого в меню Tools ? Internet Options выбрать закладку «Se-

curity», выбрать зону «Local Intranet», нажать кнопку «Sites», нажать кноп-

ку «Advanced», добавить к списку сайтов строку «*.example.com». В раз-

деле   «Security   level   for   this   zone»   нажать   кнопку   «Custom   level». Убедиться, что в подразделе «logon» раздела «User authentication» выбран пункт «Automatic logon only in Intranet zone». Перейти на закладку «Ad- vanced». Убедиться, что в разделе «Security» активизирована опция «En- able Integrated Windows Authentication». Если она не была выбрана, то вы- брать и перезагрузить виртуальную машину.

22. Запустить утилиту kerbtray.exe (Start ? Programs ? Windows Resource Kit

Tools ? Command Shell, набрать в консоли kerbtray). Просмотреть теку-

щий  список  билетов  пользователя,  вызвав  окно  утилиты  при  помощи

иконки в системном трее (иконка в виде билета зеленого цвета).

23. В  адресной  строке  обозревателя  набрать  «http://ws-linux.example.com».

Убедиться,  что  в  обозревателе  отобразилась  стартовая  страница  web-

сервера Apache.

24. Убедиться, что в списке билетов пользователя добавился билет «HTTP/ws- linux.example.com@EXAMPLE.COM».

25. На рабочей станции WS-Linux выполнить команду

tail /var/log/apache2/access.log

26. В выводе команды найти запись, аналогичную представленной на рис. 7.9.

Рис. 7.9. Запись в лог-файле web-сервера Apache о доступе Kerberos-сущности

«Administrator@EXAMPLE.COM»

27. Попробовать зайти на web-страницу с основной рабочей станции  (может понадобиться перенастройка IP-адреса виртуального сетевого  подключе- ния VMWare VMNet1, адрес должен быть из сети 192.168.0/24), убедиться, что в окне обозревателя выводится сообщение об ошибке 401 (Unauthor- ized).

Источник: Андрончик А. Н., Богданов В. В., Домуховский Н. А., Коллеров А. С., Синадский Н. И., Хорьков Д. А., Щербаков М. Ю., Защита информации в компьютерных сетях. Практический курс

Похожие посты:

Вы можете оставить комментарий, или ссылку на Ваш сайт.

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