LINUX.ORG.RU

Самое лучшее SSO (функциональное, гибкое, удобное, безопасное и т.п.)

 , , , ,


0

7

Добрый день уважаемые гуру форума,

Пожалуйста, подскажите, какой софт лучше выбрать для SSO (и почему), чтобы в результате получить наиболее оптимальное решение для различных устройств (Linux, Windows, Web типа WordPress и т.п.)? Нужно, чтобы была возможность для аутентификации использовать аппаратное крипто (U2F, FIDO2 или PKCS11), чтобы исключить возможность аутентификации через украденный пароль или ключ, хранящийся на рабочей станции (подразумевается, что аппаратная ключница - это уже не рабочая станция, а соседний компьютер, подключенный к рабочей станции хотя бы по USB). Кроме того нужно, чтобы такой SSO хорошо интегрировался с обратным прокси типа NGINX Proxy Manager, SWAG и т.п.:

https://github.com/NginxProxyManager/nginx-proxy-manager/issues/437

https://github.com/NginxProxyManager/nginx-proxy-manager/pull/2630

https://github.com/NginxProxyManager/nginx-proxy-manager/issues/313

для защиты веб ресурсов, которые пока самостоятельно не поддерживают плагины SSO.

Т.е. хотелось бы, чтобы получился хотя бы частично self-hosted аналог JumpCloud в миниатюре.

Как вариант присматриваюсь к связке FreeIPA+KeyCloak

Если я правильно понял, то KeyCloak поддерживает регистрацию нескольких токенов FIDO2 аналогично Google.com

Среди относительно популярных SSO также мне известны: Authelia, Authentik, Kanidm, Okta, Ory, Dex, etc. Сравнение части из них со стороны Authentik (возможно предвзятое): https://goauthentik.io/

Насколько я понял из обзоров, Authentik самый тяжелый (около 2GB RAM), а KeyCloak последнее время достаточно хорошо оптимизировали, и он потребляет менее 500 Mb RAM при средней нагрузке?

В целом я сильно неуверен в безопасности SSO. Можно ли считать аутентификацию через U2F/PKCS11 -> FreeIPA+KeyCloak -> Приложение такой же безопасной, как и аутентификацию напрямую в приложение без SSO, т.е. только U2F/PKCS11 -> Приложение без звена FreeIPA+KeyCloak?

При использовании ключей U2F/PKCS11 хранит ли софт FreeIPA+KeyCloak долговременно (дольше аутентифицированной сессии) какие-либо важные секреты у себя на сервере? Т.е. облегчает ли злоумышленнику задачу входа в систему получение (например, кража) ZFS снэпшота такого сервера FreeIPA+KeyCloak ? Ведь украсть неизвлекаемый ключ только из носителя U2F/PKCS11 практически невозможно без использования бэкдоров трехбуквенных спецслужб или очень дорогой операции по извлечению и декодированию памяти такого носителя, сравнимой со взломом операционной системы современной банковской карты с чипом?

Наверно, bastion hosts (пограничные Internet узлы для входящих админских подключений) все же лучше никогда не подключать к подобному SSO и использовать на них только самые минимальные, но хорошо защищенные варианты аутентификации SSH типа PKCS11 (Nitrokey PRO2 или Rutoken ECP2) или U2F? С другой стороны, например, Linode использует какую-то систему SSO для аутентификации через учетку Github и Google. А ведь их облако ворочает миллионами U$D доходов и потенциальных убытков в случае взлома?

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

И вишенка на торте, где находится волшебный docker-compose.yml к такому SSO? :)



Последнее исправление: sanyo1234 (всего исправлений: 2)

Ответ на: комментарий от annulen

Некому ломать, так что можно не сильно переживать про безопасность

Почему некому? Территория замурована и двери залиты железобетоном? Живых не осталось?

А побочные каналы? 220В? Приносимые с собой телефоны, модемы и т.п.?

sanyo1234
() автор топика
Ответ на: комментарий от sanyo1234

IntelME

Ну тут ты либо веришь Интелу на слово, либо не пользуешься их продукцией (или выпиливаешь IntelME кустарными средствами), так как защищаться от этого бесполезно

annulen ★★★★★
()
Ответ на: комментарий от Avial

А нельзя их все три интегрировать одновременно: Samba_v4+FreeIPA+KeyCloak?

Samba для вендовых клиентов, FreeIP для линуксовых, KeyCloak для браузеров, но чтобы при этом была одна общая логическая таблица юзеров?

sanyo1234
() автор топика
Последнее исправление: sanyo1234 (всего исправлений: 2)