У меня есть базовое понимание того, как Kerberos работает в среде Active Directory и какие методы он использует для аутентификации пользователей и рабочих станций в сети, но у меня такой вопрос ... поскольку Kerberos полагается на выдачу токена безопасности, который конечный пользователь затем использует для доступа сетевые ресурсы, как системы (ноутбуки), не находящиеся в домене, могут получить доступ к одним и тем же сетевым ресурсам, используя только имя пользователя и пароль пользователя активного каталога?
Я полагаю, что было бы более разумно, если бы, просто используя учетные данные пользователя, Kerberos генерирует токен безопасности и выдает его системе, но, похоже, там должно быть больше безопасности, чтобы не допустить доступа не-доменной системы к сетевым ресурсам.
Если бы кто-нибудь мог просветить меня, я был бы благодарен!
Ответы:
NTLM используется в этом случае ...
http://msdn.microsoft.com/en-us/library/windows/desktop/aa378749(v=vs.85).aspx
http://en.wikipedia.org/wiki/NTLM
источник
Это зависит от того, какие «сетевые ресурсы» задействованы. На подключенном к домену компьютере Windows, на котором вы вошли, в игре находятся по крайней мере две идентификационные записи Kerberos клиента:
Существует также хост / рабочая станция @ DOMAIN, но это, как правило, идентификация службы, работающей на хосте, доступ к которой осуществляется из других источников. Если привилегированный процесс на хосте хочет что-то сделать, скажем, добавить свое имя в DNS, используя динамический DNS с аутентификацией Kerberos, он использует для этого свою идентификационную информацию, рабочую станцию $ @ DOMAIN. Однако если вы во время сеанса входа в систему обращаетесь к какому-либо ресурсу самостоятельно, например, к сетевому ресурсу CIFS или к URL-адресу с проверкой подлинности HTTP, то идентификатор клиента - это ваше основное имя, user @ DOMAIN (учетные данные, для которых вы получаете данные автоматически, используя пароль, который вы ввели для входа). От вашего вопроса вы, кажется, думаете, что какая-то комбинация вовлечена; это не так, они отдельные.
Вот почему нет проблем с использованием Kerberos для доступа к ресурсам на базе Windows с других платформ. Вы также можете ввести «kinit user» в поле Linux, ввести свой пароль, чтобы получить учетные данные Kerberos (TGT) от контроллера домена, а затем использовать Firefox для доступа к веб-странице с проверкой подлинности Kerberos в IIS. Протоколы для всего этого являются стандартными, и вам ничего не нужно, кроме ваших учетных данных пользователя.
В предыдущем ответе говорилось, что в этом случае требуется NTLM; это неверно (хотя, конечно, это может быть использовано). Однако, когда вы обращаетесь к какому-либо ресурсу с компьютера, не входящего в домен, и у вас запрашивают имя пользователя и пароль, вы не обязательно знаете, какой метод аутентификации фактически используется. Это может использовать Kerberos. Он также может просто прибегнуть к механизму на основе паролей, при котором он отправляет ваше имя пользователя и пароль на сервер для проверки, а затем кэширует ваш пароль, чтобы вам не приходилось вводить его повторно. Многие протоколы позволяют использовать обе схемы абстракции, такие как SASL. Вы должны посмотреть на провод, чтобы увидеть, что происходит.
источник
Ниже приведены инструкции по аутентификации на сервере Samba с использованием Kerberos из клиента Windows 7/10 (возможно, других). Я не проверял другие версии клиента и сервера:
На клиенте Windows «Запуск от имени администратора» cmd.exe. Затем введите эту команду, чтобы предоставить Windows сведения о контроллере домена Kerberos (KDC) для Kerberos REALM.COM.
Если KDC находятся в DNS:
В противном случае:
(Введите дополнительные KDC для области REALM.COM, если они существуют. Также можно добавить другие области в любом стиле.)
Затем используйте проводник для доступа к интересующей сетевой папке. (Например,
\\samba.realm.com\share
в адресной строке.) Откроется запрос пароля, если общий ресурс защищен.Вам нужно будет указать область в имени пользователя. Это может быть сделано как
user@REALM.COM
илиREALM.COM\user
.Затем введите пароль.
источник
Я знаю по крайней мере одну систему, которая может использовать kerberos, которая работает с рабочих станций, не входящих в домен. Это приложение называется «Портал SAP NETWEAVER». Я выполнил некоторый анализ сетевого трафика на рабочей станции и во время связи, когда захожу в веб-приложение, которое находится между рабочей станцией и контроллерами домена. Перед этим выполняется DNS-запрос для записей домена srv _krb, которые я передал в поле имени пользователя (это должен быть формат домена FQDN, например, mydomain.local \ myusername). После этого происходит несколько кадров kerberos.
источник