Наличие централизованного и/или локального механизма обеспечения сложности пароля¶
В AccentOS поддерживается аутентификация пользователей, базирующаяся на локальных механизмах модуля Keystone OpenStack и централизованных механизмах LDAP, в частности MS AD, FreeIPA, OpenLDAP.
Выбор механизма аутентификации¶
Аутентификация настраивается на локальный или внешний режим работы в Keystone.
- Внешние централизованные механизмы (LDAP) — предпочтительны при работе в распределенных архитектурах и в организациях, где уже развернут LDAP для минимизации издержек на его поддержку
- Локальные механизмы (Keystone) — используются для небольших установок или когда по соображениям безопасности необходимо отделить аутентификацию от любых других инструментов
Предупреждение
Абсолютно безопасного метода для сохранения паролей не существует ни в FreeIPA, ни в Keystone, поскольку угрозы проистекают из уязвимостей ОС Linux или Windows и в определенной мере связаны с криптографическими методами, которые являются основным риском при хранении хешей паролей.
Политики паролей в LDAP (на примере FreeIPA)¶
Безопасность пользователей, опции и ограничения паролей при использовании LDAP базируются на механизмах, реализованных в самом LDAP. Парольные политики распространяются либо на группу пользователей LDAP, либо на всех пользователей (глобальная политика).
### Основные параметры политики паролей FreeIPA
### Преимущества использования LDAP с Kerberos
Преимуществом использования LDAP на основе FreeIPA и MS AD является протокол Kerberos, который реализует функции безопасности пользователей и функции безопасности при хранении, модификации, распространении, администрировании паролей пользователей.
Примечание
- Современные реализации FreeIPA используют усиленные пароли на базе SPAKE и FAST
- Kerberos поддерживает работу с несколькими доменами
- Поддерживаются Kerberos tickets, которые позволяют проводить аутентификацию пользователей непосредственно на требуемых системах и ресурсах
### Хранение паролей в FreeIPA
В FreeIPA не хранятся пароли пользователей, а только их хеши:
- ipaNTHash — NT-хеш пароля пользователя для интеграции с LDAP
- userPassword — основной атрибут, в котором хранится хеш пароля пользователя, используемый для LDAP-аутентификации
Предупреждение
Если администратор:
- имеет root-права на сервере FreeIPA
- владеет паролем от учетной записи Directory Manager
- имеет возможность читать хеши паролей учетных записей в каталоге LDAP
у него существует возможность с помощью brute force получить информацию о паролях, если будет получен MasterKey и krbPrincipalKey.
Повышение прав до root возможно, если произойдет:
- получение доступа к учетной записи из группы admins
- повышение привилегий при помощи изменения HBAC- и Sudo-правил
- эксплуатация какой-либо уязвимости
Данные ситуации должны четко отслеживаться администраторами LDAP, чтобы исключить компрометацию.
Политики паролей в Keystone OpenStack¶
При использовании Keystone OpenStack можно (и нужно) независимо друг от друга включать дополнительные функции обеспечения безопасности Keystone в соответствии с корпоративной политикой безопасности.
### Хеширование паролей
Keystone использует методы хранения хешей, а не паролей в СУБД, использует современные криптографические методы:
- bcrypt — используется по умолчанию
- pbkdf2_sha512 — поддерживается
- scrypt — поддерживается
Важно
Считается, что sha512_crypt недостаточен для безопасного хеширования паролей для хранения в базе данных. Keystone по умолчанию использует bcrypt, но может обрабатывать scrypt и pbkdf2_sha512 с рядом параметров настройки, если это необходимо.
Все доступные функции применяются только к SQL-серверу драйвера Identity.
### Функции безопасности Keystone
Ограничения и рекомендации¶
Keystone, централизованная система управления идентификацией и доступом для OpenStack, предоставляет базовые функции для аутентификации и авторизации. В нем также, как и во FreeIPA, существуют слабые места и отсутствие поддержки функций во многих областях, включая механизмы контроля доступа и механизмы аудита.