Минимум административных сессий с помощью LimitLogin...
При развертывании операционных систем организациям часто требуются инструменты, позволяющие задавать и отслеживать ограничения на число одновременных сессий для какой-либо учетной записи. Для пользователей с высокими привилегиями, например с учетной записью Administrator, это ограничение обязательно. Как правило, все стараются полностью блокировать одновременные сессии от имени Administrator. Если пользователь регистрируется от имени учетной записи Administrator с разных мест в одно и то же время, с большой вероятностью он оставит одну из сессий открытой, в результате чего возрастает риск для всей сетевой среды.
Ограничение числа сессий для одного пользователя поддерживается собственными средствами многих операционных систем — например, Novell NetWare, но в Windows до сих пор таких средств не было. Теперь Microsoft предлагает дополнительный инструмент для Windows, который можно использовать для ограничения числа одновременных сессий в Windows. Рассмотрим, как работает инструмент LimitLogin, как его установить и настроить так, чтобы число сессий от лица Administrator, открытых в данный момент, было ограничено.
Инструмент LimitLogin представляет собой усовершенствованную версию инструмента Cconnect, которая входит в комплект ресурсов Microsoft Windows 2000 Server Resource Kit. Cconnect предоставляет основную функциональность для ограничения числа одновременных сессий в средах Windows 2000 и Windows NT 4.0, а LimitLogin обеспечивает более эффективное управление регистрацией при работе с Active Directory (AD) и административными средствами AD. Инструмент LimitLogin добавляет в AD данные по количеству подключений; для Cconnect необходима база данных SQL Server. Так же как Cconnect, LimitLogin может ограничивать только интерактивные сессии и сессии служб Windows Terminal Services. Интерактивные сессии — это сессии, которые пользователи и администраторы инициируют с консоли (нажатием Ctrl+Alt+Del или в окне регистрации Windows XP Welcome).
Для инструмента LimitLogin нужна среда Windows Server 2003 AD и Web-сервер Microsoft IIS 6.0, который имеет разблокированную поддержку ASP.NET. Оба сервера также должны иметь уже загруженную инфраструктуру .NET Framework 1.1 или более поздней версии.
LimitLogin работает на следующих клиентских платформах Windows: Windows 2003, XP Professional Service Pack 1 (SP1), Windows 2000 Professional SP4 и Windows 2000 Server SP4, а также более новых версиях. Как в случае с другими утилитами из набора ресурсов и дополнениями Windows, служба поддержки Microsoft Product Support Services (PSS) не оказывает официальной поддержки LimitLogin. Используя LimitLogin, нельзя проследить процесс регистрации на тех рабочих станциях, которые управляются операционными системами, не поддерживающими LimitLogin.
Инструмент LimitLogin требует наличия конфигурационных изменений и специальных компонентов клиентов Windows, Web-сервера IIS 6.0 и контроллеров доменов AD (DC). Большая часть этих изменений и компонентов создается автоматически, когда устанавливается программа Limit-Login. Сценарии регистрации и завершения сеанса, которые использует LimitLogin (llogin.vbs и llogoff.vbs), поставляются с программным обеспечением, но они должны копироваться вручную на общий ресурс, к которому могут иметь доступ указанные клиенты Windows. Кроме того, пользовательские настройки объекта групповой политики Group Policy Object (GPO) сценариев регистрации и завершения сеанса (находятся в контейнере User Configuration/Windows Settings/Scripts (Logon/Logoff) GPO) должны меняться вручную для указания на конкретные сценарии. Эти сценарии дают дополнительную нагрузку к обычному сценарию регистрации.
Компоненты клиентской стороны LimitLogin состоят из среды исполнения Simple Object Access Protocol (SOAP), специального набора DLL для LimitLogin и исполняемых файлов. На Web-сервере LimitLogin устанавливает Web-службу LimitLogin в виртуальном каталоге WSLimitLogin. По умолчанию WSLimitLogin создается на Web-узле Default Web, а доступ к Web-службе выполняется через порт 80.
|
| Экран 1. Раздел приложения LimitLogin в AD |
Хотя клиент LimitLogin не передает пользовательские учетные данные Web-службе, Microsoft рекомендует организациям с более строгими требованиями системы безопасности вручную настраивать протокол защищенных сокетов Secure Sockets Layer (SSL) для виртуального каталога WSLimitLogin. Автоматически LimitLogin не предоставляет эту защиту SSL.
LimitLogin расширяет схему AD и создает раздел приложения для размещения данных настройки LimitLogin — вот почему для LimitLogin нужна служба Windows 2003 AD. На экране 1 показан вид раздела приложения LimitLogin AD в окне Microsoft Management Console (MMC) оснастки ADSI Edit (который приходит с набором Windows Server 2003 Support Tools).
Раздел приложения AD называется DC=limitlogin,dc=domainname,dc=domainname. Новый тип объекта LimitLogin, который использует для хранения квоту сессий, называется msLimitLoginUser. Он имеет следующие атрибуты LimitLogin:
Объект AD и его атрибуты можно настроить с помощью расширений LimitLogin оснастки MMC Active Directory Users and Computers и утилит командной строки LimitLogin, которые будут описаны ниже.
На рисунке показаны компоненты и функционирование LimitLogin в момент регистрации пользователя в интерактивном режиме в домене Windows с запущенной службой LimitLogin. Происходят следующие события:
|
| Рисунок. Схема функционирования LimitLogin |
Если квота сессий пользователя меньше или равна числу зарегистрированных сессий в AD, то Web-служба принуждает сценарий регистрации закончить текущую сессию. LimitLogin можно настроить так, чтобы пользователь получал сообщение о других открытых им сессиях до прекращения данной сессии.
LimitLogin можно загрузить по адресу http://download.microsoft.com/download/f/d/0/fd05def7-68a1-4f71-8546-25c359cc0842/limitlogin.exe. Установка LimitLogin относительно проста. Этот инструмент включает три установочных исполнимых файла: один для установки компонентов Web-сервера (limitloginiissetup.msi), второй для установки компонентов AD на DC (limitloginadsetup.msi) и третий для установки компонентов на клиентской стороне (limitloginclientsetup.msi). Необходимо запускать эти установочные программы в следующем порядке: сначала установка для Web-сервера, потом установка для AD и, наконец, установка на клиентской стороне.
Установка компонента LimitLogin для Web-сервера позволяет указать специальное имя виртуального каталога и порт Web-службы LimitLogin. Установка для Web-сервера требует наличия административных прав на Web-сервере.
Как указывалось ранее, установочные программы LimitLogin не позволяют настраивать SSL для LimitLogin. При настройке SSL для Web-службы LimitLogin необходимо внести изменения только на стороне сервера. Следует установить сертификат SSL на стороне сервера и связать его с Web-службой LimitLogin.
|
| Таблица. Параметры LimitLogin Delete/Logoff в реестре |
Также необходимо отредактировать файл limitlogin.wsdl, который помещается в общем ресурсе LimitLogin (см. ниже — этот общий ресурс содержит сценарии регистрации и завершения сеанса LimitLogin). В файле limitlogin.wsdl надо изменить все URL-адреса, которые имеют отношение к Web-службе LimitLogin, с HTTP на HTTPs. Все URL-адреса, которые требуется изменить, находятся в разделе
Программа установки LimitLogin для AD состоит из трех частей, которые предназначены для подготовки леса AD, домена AD и установки расширений LimitLogin для оснастки Active Directory Users and Computers. Можно инициировать с командной строки часть установки для леса AD, запустив LimitLoginADSetup.exe с помощью ключа /ForestPrep. Инициировать с командной строки часть установки для домена можно, запустив LimitLoginADSetup с ключом /DomainPrep.
Для инициации первых двух частей запуск LimitLoginADSetup необходимо выполнять от имени учетной записи с привилегиями Schema Administrator в корневом домене леса. При этом требуется запускать инструмент на контроллере леса, который играет роль мастера именования домена Domain Naming Master. Чтобы определить, какой это DC, можно воспользоваться командой Ntdsutil.
Последнюю часть программы установки, установку расширений LimitLogin для Active Directory Users and Compu -ters, можно инициировать с привилегиями доменного администратора (Domain Administrator) на любом DC леса или с привилегиями Administrator на узле Windows — в случае использования административных средств Administrative Tools для управления AD с любого узла сети.
Подготовка леса расширяет схему AD и модифицирует контекст конфигурации AD. Подготовка домена создает раздел приложения LimitLogin в AD и сценарии регистрации и завершения сеанса LimitLogin (logon и logoff). В процессе подготовки домена можно указать DC, на котором предстоит создавать раздел приложения LimitLogin.
В целях высокой отказоустойчивости или восстановления в аварийных ситуациях можно было бы создать реплику раздела приложения LimitLogin на нескольких DC. В разделе Advanced Configuration Options файла подсказки LimitLogin Help описано, как это можно сделать.
|
| Экран 2. Напоминание о необходимости скопировать сценарии регистрации и завершения сеанса |
В конце установки для AD необходимо вручную скопировать сценарии регистрации и завершения сеанса LimitLogin на общий ресурс и указать на них в настройках GPO домена. Программа установки Limit-Login напомнит об этом в конце этапа установки LimitLogin для AD (как показано на экране 2).
На этапе установки LimitLogin для AD создаются подробные регистрационные файлы: %systemdrive%program fileslimitloginlimitloginadsetup .log и %systemdrive%windowssystem32 ldif.log.
Можно инициировать программу установки клиента LimitLogin вручную или в автоматическом режиме. Автоматические параметры для централизованной установки используются в Microsoft Systems Management Server (SMS), объектах GPO и сценариях регистрации. Для инициирования установки клиента с командной строки в фоновом режиме (без вмешательства пользователя) следует воспользоваться limitloginclientsetup .msi с ключом /qn. Поскольку в ходе этой процедуры устанавливается клиент SOAP, здесь требуются права администратора.
Если Web-служба LimitLogin не работает на DC, содержащем раздел приложения LimitLogin, необходимо убедиться, что вы делегировали доверие учетной записи Web-сервера с LimitLogin DC. В разделе LimitLogin Active Directory Setup файла подсказки LimitLogin Help поясняется, как это сделать.
Для настройки отслеживания одновременных сессий пользователей AD лучше всего задействовать оснастку Active Directory Users and Computers. Программа установки LimitLogin для AD добавляет в эту оснастку несколько параметров настройки LimitLogin. Доступ к меню LimitLogin Tasks возможен из контекстного меню объектов пользователя, компьютера и организационного подразделения (OU).
|
| Экран 3. Диалоговое окно конфигурирования для пользовательского объекта LimitLogin |
На экране 3 показано диалоговое окно настройки, которое появляется при выборе пункта LimitLogin Tasks для учетной записи пользователя — в приведенном примере учетной записи администратора. В этом диалоговом окне показаны системы, на которых выбранный объект зарегистрировался в настоящее время интерактивно. Это же окно можно применять и для завершения выбранной сессии, и для удаления из раздела приложений LimitLogin в AD, и для сохранения отчета в формате CSV (comma-separated value) или XML, и, что наиболее ценно, для настройки квот на одновременные сессии.
Для настройки квоты нужно нажать Configure, чтобы открыть окно Configure LimitLogin (см. экран 4), которое позволит задать число квот или указать, что квоты настраиваться не будут. В приведенном примере для учетной записи Administrator, как правило, разрешается только одна сессия, т. е. надо присвоить учетной записи Administrator значение квоты равное «1».
|
| Экран 4. Настройки квоты на сессии в LimitLogin |
LimitLogin поставляется с примером на VBScript, который автоматизирует настройку квот одновременных сессий для всех пользователей указанного OU или домена. Этот сценарий имеет имя bulk_limituserlogins.vbs; он находится в папке %systemdrive%program fileslimitlogin на DC, на котором установлен LimitLogin.
При выборе пункта контекстного меню LimitLogin Tasks на объекте компьютера появляется диалоговое окно, где перечислены все пользователи, которые в настоящее время зарегистрировались интерактивно. В диалоговом окне также можно удалить или завершить выбранные сессии — например, сессии для Administrator, переместить информацию на удаленную систему и сохранить в отчете со списком интерактивных сессий в формате CSV или XML. Если выбрать сессию и щелкнуть по Delete/Logoff Selected Sessions, LimitLogin по умолчанию удалит сессию из раздела приложения в AD и завершит удаленную сессию, не выводя администратору подсказки для подтверждения. Работу процессов удаления и завершения в LimitLogin можно настроить, щелкнув по ссылке Click Here to Set Logoff Options (щелкнуть здесь для настройки параметров завершения) в диалоговом окне (см. экран 5).
|
| Экран 5. Настройка процессов удаления и завершения сеанса в LimitLogin |
LimitLogin предлагает следующие параметры настройки работы для процессов удаления/завершения (delete/ logoff):
Можно также установить настройки режима работы операций удаления/завершения в системном реестре компьютера, на котором используется оснастка Active Directory Users and Computers с установленными расширениями LimitLogin. В таблице показаны соответствующие параметры системного реестра и их значения. Все они находятся в разделе реестра HKEY_CURRENT_USER Software MicrosoftLimitLogin.
Пункт LimitLogin Tasks в контекстном меню объекта OU можно применять для установки квот на одновременные сессии сразу для всех пользовательских объектов в выбранном OU.
|
| Экран 6. Сообщение с предупреждением о завершении |
Если необходимо, чтобы служба LimitLogin информировала администратора о месте, где он зарегистрировался (как показано на экране 6) до завершения сессии администратора, придется изменить сценарий регистрации Llogin для LimitLogin. В нем нужно просто удалить знаки комментария в следующих строках:
? wshShell.run «lloginsessions « & loginok
? wscript.sleep 1OOOOO
Как показано выше, можно также использовать LimitLogin в качестве инструмента для сообщений о сессиях. Можно создать файлы в формате XML или CSV из оснастки Active Directory Users and Computers. Для генерации отчетов о сессиях, которые охватывают целые домены, можно запустить утилиту llogincmd.exe с командной строки с ключом /report.
Ту же утилиту можно ввести с командной строки с ключом /diag для инициирования диагностики LimitLogin (см. экран 7). Для удаления всей информации из раздела LimitLogin в AD нужно запустить Llogincmd с ключом /ClearLogins. Для синхронизации информации о пользовательских учетных записях и их именования в разделе LimitLogin в AD с соответствующими им записями в AD следует запустить Llogincmd с ключом /Update.
|
| Экран 7. Диагностика LimitLogin |
LimitLogin является необходимым инструментом при развертывании AD в рамках компании для управления числом сессий, открытых пользователями одновременно, и особенно пользователями с правами Administrator. Инструмент LimitLogin также предусматривает возможность ручного создания отчетов, однако не стоит развертывать LimitLogin там, где требуется только инструмент для создания отчетов о сессиях. Отчет о сессии можно легко подготовить с помощью более простых инструментальных средств например посредством копирования текстового файла с именем machinename.username в скрытую общую папку в момент регистрации.
Жан де Клерк - член Security Office компании HP. Специализируется на управлении идентификационными параметрами и безопасности в продуктах Microsoft. Автор книги Windows Server 2003 Security Infrastructures (издательство Digital Press). jan.declercq@hp.com
Проблема: ограничение одновременных сессий в Windows с учетной записью Administrator.
Решение: инструмент Microsoft LimitLogin.
Что потребуется: LimitLogin.exe, Windows 2003 Server с AD и Web-сервер IIS 6.0 с ASP.NET. Оба сервера также должны иметь версию .NET Framework 1.1 или более позднюю. На клиентской стороне необходимы Windows 2003, XP Pro SP1, Windows 2000 Pro SP4, Windows 2000 Server SP4 или их более поздние версии.
Сложность: 3 из 5.
Последовательность действий:
|
© «Открытые системы», 1992-2012. Все права защищены. |
|
Распечатать
|
Закрыть окно |