KRB5KRB_AP_ERR_MODIFIED пытается использовать учетные данные SPN

Я пытаюсь настроить систему Windows 2019 в качестве SMB-сервера для работы со сторонним программным обеспечением во внешней системе, отличной от Windows, которая использует Kerberos для аутентификации на SMB-сервере. Этот сервер SMB присоединен к существующему домену Active Directory на отдельном сервере контроллера домена. Хотя программное обеспечение успешно получает учетные данные пользователя и SPN с сервера Windows AD Kerberos, сервер SMB отклоняет эти учетные данные с ошибкой KRB5KRB_AP_ERR_MODIFIED.

Пользователь SMB определен в AD, и в AD также есть учетная запись компьютера для сервера SMB. Хотя в списке участников-служб в учетной записи контроллера домена нет этого SMB-сервера, он есть в списке участников-служб в учетной записи компьютера для сервера SMB. Я попытался вручную добавить запись SPN для сервера SMB на контроллере домена, но она была отклонена, поскольку это дубликат, поэтому я предполагаю, что контроллер домена учитывает учетную запись сервера SMB при поиске дубликатов.

Я сталкивался с такой проблемой раньше, и обычно это проблема с записями DNS, когда сервер SMB считает, что его имя хоста — это одно, а сервер Kerberos и/или стороннее программное обеспечение — другое. В этом случае, однако, ситуация немного отличается — отказ в ответе на установку сеанса показывает имя сервера SMB в виде его короткого имени хоста, за которым следует знак доллара. И это несмотря на то, что полным именем компьютера SMB-сервера на SMB-сервере является его DNS FQDN (это согласно программе System в Панели управления). Я также проверил, что DNS-сервер (который также является AD DC) правильно разрешает имя хоста и IP-адрес сервера SMB.

Вот последовательность событий:

  1. Клиентское программное обеспечение в системе, отличной от Windows, подключается к серверу SMB через TCP и, используя SMBv2, успешно выполняет согласование протокола.
  2. Клиентское программное обеспечение запрашивает учетные данные для пользователя SMB с сервера Kerberos (AD DC) через AS-REQ и получает положительный AS-REP с учетными данными. (Я убедился, что используется правильное имя области Kerberos и что значения имени в запросе и ответе совпадают.)
  3. Затем клиентское программное обеспечение запрашивает учетные данные для SPN сервера SMB в TGS-REQ, отправляемом на сервер Kerberos. Используемое им значение SPN — «cifs/DNS_FQDN», где «DNS_FQDN» — это полное DNS-имя хоста SMB-сервера. Он получает эти учетные данные в положительном TGS-REP. (Я убедился, что используется правильное имя области Kerberos и что значения имени в запросе и ответе совпадают.)
  4. Клиентское программное обеспечение помещает эти учетные данные в большой двоичный объект безопасности GSS-API внутри запроса на настройку сеанса SMB и отправляет запрос на сервер SMB.
  5. Сервер SMB отклоняет учетные данные с ошибкой KRB5KRB_AP_ERR_MODIFIED. Имя области в большом двоичном объекте безопасности в пакете ответа на установку сеанса правильное, но строка имени сервера SMB в ответе представляет собой короткое имя хоста сервера, за которым следует знак доллара.

Явно что-то не так настроил. Стороннее программное обеспечение работает с общими ресурсами SMB на AD DC; он просто не работает с общими ресурсами на отдельном сервере SMB, и то только потому, что сервер SMB отклоняет учетные данные, предоставленные стороннему программному обеспечению сервером Kerberos.

Что я делаю не так? Должен ли я удалить учетную запись компьютера SMB в AD DC, а затем вручную добавить в нее запись SPN для сервера SMB? Есть ли что-то, что мне нужно добавить или изменить в учетной записи компьютера SMB? Нужно ли мне что-то изменить на сервере SMB, чтобы он распознавал «cifs/DNS_FQDN» как допустимый?

блок сообщений сервера kerberos активного каталога spn

0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *