Архив рубрики: Kerberos

Конфигурационные параметры

Конфигурационные параметры необходимы для использования защищенной аутентификации по протоколу Kerberos. В данном разделе описываются необходимые конфигурационные параметры:

Конфигурационный параметрТипПо умолчаниюВозможные значенияСекцияОписание
createUsersAllowedлогический0|1[event]Определяет возможность менеджера событий добавлять новых пользователей в _Users DP. Новый пользователь в качестве идентификатора пользователя получает наивысший идентификатор пользователя + 1.Система также задает членство в группе, права пользователя и т.д.
updateUsersAllowedлогический0|1[event]Определяет будет ли «КАСКАД Цифра» обновлять _Users DP, когда пользователь, содержащийся в _Users DP, входит в систему.В ОС Windows система запускает поиск OSID, а в ОС Linux — поиск имени.Менеджер событий «КАСКАД Цифра» обновляет имя (только в ОС Windows), описание, членство в группе, биты аутентификации и основную группу. Если задать конфигурационному параметру createUsersAllowed значение 1 (TRUE/ИСТИНА)(см. описание выше), менеджер событий игнорирует параметр updateUsersAllowed, и разрешается обновление _User-DP.
kerberosRootGroupстрока«PVSSRoot»«PVSSRoot» или любая допустимая доменная группа[general]Этот конфигурационный параметр контролирует, какие учетные записи ОС (пользователи и компьютеры) имеют разрешение действовать в качестве пользователя root. «root» рассматривается как пользователь unix root: разрешая все и не контролируя ничего. Это подходящее поведение для драйверов, но не для пользовательского интерфейса (UI). Следовательно, право действовать в качестве root может быть ограничено для некоторых пользователей, главным образом тех, которые принадлежат к конкретной группе.
kerberosSecurityстрока«non»«none»,  «auth», «int», «enc» Любая, включая [general]Управляет поведением клиент-серверного соединения. «none»— это значение по умолчанию, которое указывает на то, что протокол Kerberos не используется. «authenticate»указывает на то, что клиенты и серверы должны себя аутентифицировать. Сообщения не подписываются и не шифруются. «integrity»указывает на то, что клиенты и серверы должны себя аутентифицировать и после этого заверить подписью все сообщения. Если ни одному из партнеров не удается проверить подпись сообщения от другого партнера, соединение прерывается. «encryption»указывает на то, что клиенты и серверы должны себя аутентифицировать и после этого зашифровать все сообщения. Если ни одному из партнеров не удается дешифровать сообщение от другого партнера, соединение прерывается. Если клиент и сервер имеют разные настройки, значение с большим приоритетом (в последовательности: auth/ int/ enc) победит и определит поведение сообщения. (Первоначальные) сообщения INIT_SYS и KEEP_ALIVE ни заверены подписью, ни зашифрованы. Эти сообщения не содержат существенных данных, и отправка в незашифрованном виде не представляет собой проблему. Причина отправки сообщений в незашифрованном виде состоит в том, что один одноранговый узел может быть готов заверить подписью или зашифровать сообщение, но другая сторона по-прежнему нуждается в большем количестве данных, чтобы проверить или дешифровать это сообщение.

Требования и конфигурация

Требования

  • Корректно установленная «КАСКАД Цифра» версии 3.7 или выше.
  • Инфраструктура Kerberos (не является частью «КАСКАД Цифра); например, домен windows.
  • Работающая синхронизация часов.
  • Работающее разрешение имен.
  • Действующий лицензионный ключ для использования Kerberos в «КАСКАД Цифра». Для различных вариантов аутентификации (уровней) доступны различные варианты лицензий:
  • kerberos = 0 — 30 (по умолчанию) = none (отсутствует), 1 = authentication (аутентификация), 2 = integrity (целостность), 3 = encryption (шифрование)

Запуск kerberos с помощью «КАСКАД Цифра»

Для использования аутентификации на основе Kerberos необходима стандартная установка «КАСКАД Цифра» версии 3.7 или выше.

Добавьте параметр конфигурации «kerberosSecurity» (определяет, должен ли использоваться Kerberos) в конфигурационный файл (дополнительную информацию см. в разделе Конфигурационные параметры). Помимо «kerberosSecurity» необходим параметр «kerberosRootGroup».

Конфигурация сервера

Для использования Kerberos выполните следующие действия:

Группы пользователей Active Directory

Рекомендуется создать три организационных элемениа в Active Directory (AD), например, KASKAD_ADMINS, KASKAD_ROOT и KASKAD_USER. Группы пользователей и пользователи должны быть назначены на эти организационные элементы в соответствии с уровнем их прав доступа.

В организационном элементе KASKAD_ADMINS создается группа KASKAD_Admins, а также как минимум один пользователь (например, KASKAD_Administrator). Аналогичная процедура применяется к другим организационным элементам.

Рисунок. Активный каталог(группы KASKAD_Admins, KASKAD_Root, KASKAD_User)

Service Principal Names

Вы должны настроить Service Principal Name (SPN) для использования Kerberos. «КАСКАД Цифра» использует два типа SPN: «PVSS/<полностью определенное имя хоста для связи с менеджером>» и «HTTP»/<полностью определенное имя хоста для связи с браузером>». PVSS SPN зарезервирован для WCCILpmon, который должен быть запущен на указанном хосте. SPN может использоваться только для одного компьютера («КАСКАД Цифра» server). <полностью расширенное имя хоста> — это имя хоста, включая домен. Служба имен должна быть способна разрешать имена, используемые для SPN. Если вы используете избыточные LAN соединения, SPN должна быть создана для всех задействованных имен хостов, например, PVSS/host-1.domain.com и PVSS/host-2.domain.com. Запись HTTP необходима при запуске HTTP-сервера.

Добавьте эти адреса.

Рисунок. SPN

SPN должен существовать для каждой учетной записи пользователя, в контексте которой запущена служба PMON.

В Linux вы должны создать SPN самостоятельно. Введите SPN сервера «PVSS/<полностью расширенное имя хоста для связи с менеджером>» в базу данных Kerberos. Обратите внимание, что в Linux SPN чувствителен к регистру. Подробную информацию об установке Kerberos под Linux смотрите в Установка и конфигурация

ВНИМАНИЕ!

SPN не может повторятся.

ВНИМАНИЕ!

В ОС Windows можно использовать инструмент «setspn». Он является частью набора инструментов Microsoft Resource Toolkit. Для использования этого инструмента необходимы права администратора. Используйте эти команды, только если вы являетесь опытным пользовательем.

setspn -l <name> :возвращает определенный SPN указанной учетной записи. Учетная запись может быть учетной записью пользователя или учетной записью устройства.

setspn -a PVSS/<host> <name>:добавляет SPN PVSS/<полностью расширенное имя хоста> на указанную учетную запись. Вы также можете указать учетную запись устройства (<HOST>$).

ПРИМЕЧАНИЕ

Обратите внимание, что Service Principle Name чувствительно к регистру. В «КАСКАД Цифра» необходимо вводить SPN в верхнем регистре.

Конфигурация «КАСКАД Цифра»

Откройте администрирование пользователей «КАСКАД Цифра» через System Management (Управление системой) -> Permission (Разрешение) -> User Administration (Управление пользователями)

Рисунок. Управление системой — Управление пользователями

Переключитесь на Администрирование пользователя Windows в качестве текущего пользователя, нажав кнопку «Управление пользователями Windows».

Рисунок. Управление пользователями

Введите пароль Windows для перехода к управлению пользователями Windows:

Рисунок. Панель для ввода пароля Windows

ПРИМЕЧАНИЕ

Обратите внимание, что при переходе от управления пользователями «КАСКАД Цифра» к управлению пользователями Windows, все пользователи «КАСКАД Цифра» (кроме пользователя ROOT) будут удалены.

Добавьте необходимые группы пользователей «КАСКАД Цифра» в управление пользователями Windows, используя панель Group Administration (Управление группами). Обратите внимание, что при использовании управления пользователями Windows можно добавить только те группы, которые определены в управлении пользователями Windows (например, Active Directory).

Группы Windows можно выбрать из комбинированного окна, которое будет отображаться после выбора управления Windows. Пользователь должен принадлежать хотя бы к одной из групп, которые были указаны в Active Directory.

Рисунок. Панель для добавления новой группы

Установите биты авторизации для групп, нажав кнопку «…» на панели «Управление группами».  Члены группы наследуют права группы.

Рисунок. Панель для установки битов авторизации

ПРИМЕЧАНИЕ

Группа, указанная как kerberosRootGroup в конфигурационном файле, не должна наследовать или получать биты авторизации.

ПРИМЕЧАНИЕ

По крайней мере, одна группа должна обладать первыми пятью битами авторизации, иначе вы не сможете администрировать «КАСКАД Цифра» после перехода на Kerberos. Поэтому используйте, например, группу KASKAD_Admins.

ПРИМЕЧАНИЕ

Пользователь по умолчанию в конфигурационном файле должен быть удален.

Необходимые шаги для использования защищенной аутентификации завершены.  

ВНИМАНИЕ!

Попытки несанкционированного подключения сохраняются в файл PVSS_II.log в каталоге log.

Запуск PMON в качестве службы

Для использования авторизации kerberos в «КАСКДА Цифра» проект должен выполняться как служба. Поэтому PMON должен быть указан как служба в Windows. Служба PMON должна иметь достаточно прав, однако рекомендуется ограничить права службы до минимально возможного уровня. Следующий список отсортирован по уровню разрешения доступа в ОС Windows.

1. сетевая служба

2. локальная служба

3. локальная система

4. специальный пользователь

ПРИМЕЧАНИЕ

Учетная запись, в контексте которой PMON работает как служба, должна быть членом группы kerberosRootGroup. Если PMON использует одну из учетных записей служб windows, учетная запись устройства должна быть членом этой группы.

ВНИМАНИЕ!

Не запускайте службу PMON до завершения всех этапов настройки.

Рисунок. PMON в качестве определенной пользователем службы

Запуск пользовательского интерфейса

Запуск пользовательского интерфейса на сервере службой PMON возможен лишь в ограниченной степени. ОС Windows не позволяет полный доступ от службы к интерактивному сеансу по соображениям безопасности.

Поэтому необходимо запустить отдельный пользовательский интерфейс(UI). Можно запустить либо проект UI (удаленный UI на своем компьютере) с собственным PMON, либо запустить локальный UI с дополнительным параметром, определяющим текущий проект. Например, можно создать ссылку, которая добавляет необходимый параметр (см. WCCOAui).

«WCCOAui -currentproj -m gedi» //для запуска Gedi

или

«WCCOAui -currentproj -p panel.pnl» //для вызова UI c panel.pnl в качестве стартовой панели

Рисунок. Пример запуска Gedi

ВНИМАНИЕ!

Пользователи, входящие в группу kerberosRootGroup, не могут войти в «КАСКАД Цифра», если не был указан параметр -user root:<password>. Чтобы избежать случайного входа пользователя «КАСКАД Цифра», пользователь группы kerberosRootGroup также не должен входить в Windows. Если вы вошли в «КАСКАД Цифра» как пользователь kerberosRootGroup, обратитесь в службу поддержки.

Пользователи группы kerberosRootGroup необходимы только для внутреннего использования «КАСКАД Цифра» (например, в качестве служебной учетной записи для PMON) и не должны быть реализованы для управления учетными записями пользователей проекта.

Список контрольных действий для запуска протокола Kerberos в «КАСКАД Цифра»

  1. Функциональность системы разрешения имен (DNS) / все IP-адреса для «КАСКАД Цифра» должны корректно разрешаться .
  2. Имеется лишь небольшое различие  в дате и времени с контроллером доменов.
  3. Управление пользователями домена содержит обычно 3 группы и 3 пользователя.
  1. Группа администраторов
  2. Группа Kerberos root
  3. Группа операторов
  4. Один пользователь-администратор, один пользователь kerberos root, один пользователь-оператор
  1. Переключитесь с «КАСКАД Цифра» на управление пользователями Windows.
  2. Введите биты аутентификации 1-5 для группы администраторов.
  3. Установите права для пользователей в соответствии с вашими требованиями (вы также можете сделать это позже).
  4. Создайте SPN для всех соединений (выберите подходящего пользователя).
  5. Остановите проект.
  6. Сконфигурируйте PMON в качестве службы (выберите пользователя из SPN).
  7. Адаптируйте конфигурационный файл.
  1. kerberosRootGroup
  2. kerberosSecurity
  3. Удалите пользователя по умолчанию и пароль.
  4. Запустите проект.

Аутентификация по протоколу Kerberos, основы

В мире с постоянно растущим количеством сетей система «КАСКАД Цифра» может быть подвержена различным типам хакерских атак. Неавторизованная система «КАСКАД Цифра» может подключиться через менеджер распределеных систем или хакеры могут попытаться манипулировать передаваемыми сетевыми пакетами «КАСКАД Цифра».

С целью предотвращения перехвата сигнала и других типов атак были разработаны меры по обеспечению аутентификации и защите систем «КАСКАД Цифра»от таких атак. Аутентификация по протоколу Kerberos позволяет каждому компоненту «КАСКАД Цифра» проверять подлинность другого компонента. Серверы»КАСКАД Цифра»проверяют подлинность клиентов, а клиенты проверяют подлинность серверов. Более того, протокол Kerberos способен гарантировать, что сообщения не будут изменены во время передачи (предотвращая атаку с захватом и повторным воспроизведением) и даже могут быть зашифрованы.

Протокол Kerberos построен на симметричной ключевой криптографии и требует наличия доверительной третьей стороны, центра распределения ключей (KDC). Подлинность субъекта (пользователя, компьютера, компонента) доказывается с помощью специальных токенов. Клиенты передают серверу токены, выданные доверительной третьей стороной KDC. Сервер проверяет токен, и, следовательно, подлинность клиента. По запросу клиента сервер передает доказательство своей подлинности клиенту, таким образом клиент может проверить подлинность сервера.

Для связи между клиентом и сервером используются сеансовые ключи. Протокол Kerberos генерирует сеансовый ключ, который используется для обеспечения безопасной связи между сервером и клиентом. Отправляемые сообщения заверяются подписью и могут быть зашифрованы.

Система «КАСКАД Цифра» использует Service Principal Names (SPN). SPN могут вводиться только на одном компьютере.активации протокола Kerberos на компьютере с ОС Windows, Pmon создает SPN, если Pmon работает как служба в локальной системе. Для любого другого пользователя ОС Windows или ОС Linux создайте SPN самостоятельно. Дополнительную информацию см. в разделе Требования и конфигурация.

РазделОписание
Аутентификация по протоколу Kerberos, основыВведение и взаимосвязь с другими разделами.
Требования и конфигурацияТребования и шаги, которые необходимо выполнить для использования аутентификации по протоколу Kerberos.
Конфигурационные параметрыНеобходимые конфигурационные параметры.