Создание единого пространства безопасности на базе Active Directory

Рассмотренные выше технологии позволяют создать распределенную систему с единой базой аутентификационных и авторизующих данных. Ау- тентификационные данные — это сущности Kerberos, которые связаны с объ- ектами  LDAP,  хранящими  авторизующую  информацию  (идентификаторы пользователей, членство в группах и т. п.).

Операционные системы семейства Windows встраиваются в среду Ac- tive Directory при помощи стандартного инструментария, при этом на рабочей станции запускаются необходимые сервисы, которые переадресуют запросы к локальной базе SAM на контроллеры домена (так же активизируется SSPI- модуль, отвечающий за аутентификацию по протоколу Kerberos). Для того чтобы увидеть этот процесс более подробно, рассмотрим интеграцию рабочей станции под управлением ОС Linux в среду Active Directory.

7.4.1. Технология PAM

В первую очередь необходимо сменить режим аутентификации рабочей станции с традиционного (через файл «/etc/shadow»), на аутентификацию по протоколу Kerberos.

Для решения подобных задач уже довольно долгое время в Linux (и не-

которых других Unix-системах) система аутентификации отделена от утилит, которым необходимо производить аутентификацию. Каждая такая  утилита (например, login) запрашивает специальную библиотеку libpam для проведе- ния аутентификации пользователя. Все, что должен обеспечить сервис, — это обратную связь между пользователем и библиотекой (для запроса пароля при необходимости, вывода служебных сообщений, например с просьбой прило- жить специальное устройство к считывателю и т. п.). Сама библиотека libpam тоже не содержит конкретного функционала по аутентификации, весь функ-

ционал содержится в модулях PAM1. О том, какие модули необходимо загру-

жать, библиотека узнает из файлов конфигурации, расположенных в каталоге

«/etc/pam.d» (по файлу конфигурации на каждый сервис).

Файл конфигурации может содержать 4 типа записей:

?    auth — отвечают за процесс аутентификации;

?    account — отвечают за то, что учетная запись актуальна (не заблокиро-

вана, не истек срок действия пароля и т. п.);

?    password — отвечают за манипуляции с аутентификационными данны-

ми (например, смена пароля);

?    session — выполняют некоторые действия, связанные с сеансом пользо-

вателя (установка переменных окружения, удаление кэша при выходе пользо-

вателя и т. п.).

Модуль аутентификации по протоколу Kerberos должен присутствовать в разделах auth и session (для создания кэша билетов и его удаления). Для того

чтобы не было необходимости переписывать конфигурационные файлы для каждого из сервисов, в любом дистрибутиве Linux предусмотрены общие на- стройки PAM для всех сервисов. В дистрибутиве Debian — это файлы comon- auth, common-password, common-account и common-session, в каждом описаны

умолчания для соответствующих разделов. Именно сюда и необходимо доба-

вить модуль «pam_krb5.so».

1 PAM (Pluggable Authentication Modules) – подключаемые модули аутентификации.

ВЫПОЛНИТЬ!

28. На виртуальной машине WS-Linux обязательно произвести вход от имени суперпользователя в две или более виртуальных консоли.

29. Открыть в текстовом редакторе файл «/etc/pam.d/common-auth».

30. Поставить   символ   «#»   в   начале   строки,   подключающей   модуль

pam_unix.so     (традиционный     механизм,     основанный     на     файлах

«/etc/passwd» и «/etc/shadow»).

31. Добавить строку «auth required pam_krb5.so».

32. На виртуальной машине DC создать пользователя «ws-linux_host» при по-

мощи оснастки «Active Directory Users and Computers».

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

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

–crypto des-cbc-md5 +desOnly

–ptype KRB5_NT_PRINCIPAL

–out c:\http.keytab +rndPass

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

34. Скопировать keytab-файл на виртуальную машину WS-Linux под именем

«/etc/krb5.keytab».

35. Сменить права доступа на keytab-файл командой:

chmod 400 /etc/krb5.keytab.

36. На одной из виртуальных консолей произвести выход из системы и вход в нее. Убедиться при помощи команды klist, что пользователь получил TGT.

После того как модуль pam_krb5 был подключен к системе аутентифи-

кации, получилось следующее:

?    пользователь root способен осуществить вход в систему;

?    пользователь student не способен войти в систему, поскольку он не об-

ладает учетной записью Kerberos;

?    пользователь Administrator способен пройти аутентификацию, но он от-

вергается нижележащими модулями, которые не могут получить про него ав-

торизующую информацию (членство в группах, идентификатор, домашний каталог, login shell).

Для того чтобы обеспечить вход для пользователя student достаточно

создать для него соответствующую учетную запись в Active Directory. Чтобы разрешить вход администратору, надо каким-то образом перенаправить ос- тальные  модули  на  получение  информации  о  пользователе  не  из  файла

«/etc/passwd», а из LDAP каталога Active Directory.

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

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

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

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