Назад | Перейти на главную страницу

Почему SPN на другом хосте приводит к потере доверия сервера? Как мне это исправить?

У меня есть совершенно новый образ сервера, который теряет доверие, как только присоединяется к домену. Я подозреваю, что это из-за повторяющегося имени участника-службы, которое я обнаружил с помощью версии LDAP этого сценария Powershell.

Скрипт Powershell

#Set Search
cls
$search = New-Object DirectoryServices.DirectorySearcher([ADSI]“”)
$search.filter = “(servicePrincipalName=*)”
$results = $search.Findall()



#list results
foreach($result in $results)
{
       $userEntry = $result.GetDirectoryEntry()
       Write-host "Object Name = " $userEntry.name -backgroundcolor "yellow" -foregroundcolor "black"
       Write-host "DN      =      "  $userEntry.distinguishedName
       Write-host "Object Cat. = "  $userEntry.objectCategory
       Write-host "servicePrincipalNames"
       $i=1
       foreach($SPN in $userEntry.servicePrincipalName)
       {
           Write-host "SPN(" $i ")   =      " $SPN       $i+=1
       }
       Write-host ""

} 

Хост с повторяющимся SPN

dn: CN=NYC01IMFE02,CN=Computers,DC=hp,DC=com
changetype: add
servicePrincipalName: MSSQLSvc/NYC01IMFE02.hp.com:52407
servicePrincipalName: MSSQLSvc/NYC01IMFE02.hp.com:LYNCLOCAL
servicePrincipalName: MSSQLSvc/NYC01IMFE02.hp.com:59066
servicePrincipalName: MSSQLSvc/NYC01IMFE02.hp.com:RTCLOCAL
servicePrincipalName: http/nyc01imfe02.hp.com
servicePrincipalName: sip/nyc01imfe02.hp.com
servicePrincipalName: TERMSRV/NYC01IMFE02.hp.com
servicePrincipalName: TERMSRV/NYC01IMFE02
servicePrincipalName: WSMAN/NYC01IMFE02
servicePrincipalName: WSMAN/NYC01IMFE02.hp.com
servicePrincipalName: RestrictedKrbHost/NYC01IMFE02
servicePrincipalName: HOST/NYC01IMFE02
servicePrincipalName: RestrictedKrbHost/NYC01IMFE02.hp.com
servicePrincipalName: HOST/NYC01IMFE02.hp.com
servicePrincipalName: TERMSRV/NYC01EXCAS04
servicePrincipalName: TERMSRV/NYC01EXCAS04.hp.com
servicePrincipalName: RestrictedKrbHost/NYC01EXCAS04.hp.com
servicePrincipalName: HOST/NYC01EXCAS04.hp.com
servicePrincipalName: RestrictedKrbHost/NYC01EXCAS04
servicePrincipalName: HOST/NYC01EXCAS04

Хост, который я только что создал

dn: CN=nyc01excas04,CN=Computers,DC=hp,DC=com
changetype: add
servicePrincipalName: WSMAN/NYC01EXCAS04
servicePrincipalName: WSMAN/NYC01EXCAS04.hp.com
servicePrincipalName: TERMSRV/NYC01EXCAS04
servicePrincipalName: TERMSRV/NYC01EXCAS04.hp.com
servicePrincipalName: RestrictedKrbHost/NYC01EXCAS04
servicePrincipalName: HOST/NYC01EXCAS04
servicePrincipalName: RestrictedKrbHost/NYC01EXCAS04.hp.com
servicePrincipalName: HOST/NYC01EXCAS04.hp.com

Вопрос

  1. Что может привести к тому, что эти записи будут расположены не на том хосте?

.

servicePrincipalName: TERMSRV/NYC01EXCAS04
servicePrincipalName: TERMSRV/NYC01EXCAS04.hp.com
servicePrincipalName: RestrictedKrbHost/NYC01EXCAS04.hp.com
servicePrincipalName: HOST/NYC01EXCAS04.hp.com
servicePrincipalName: RestrictedKrbHost/NYC01EXCAS04
servicePrincipalName: HOST/NYC01EXCAS04
  1. Что означают эти записи? Для чего они используются

  2. Вызвали бы они доверие к новой машине? Почему проблемы возникают только на одной машине, а на другой нет?

  3. Как мне исправить проблему?

В принципе, setspn в исправно функционирующем AD дубликатов не показывает. Я думаю, вам стоит их удалить хотя бы для неисправной машины. Начните с проблемных машинных SPN, в которых отсутствует реальная часть.

dhcp предлагает IP-адрес, уже зарегистрированный в DNS, другому компьютеру. Когда компьютер повторно подключается к ActiveDirectory, имя хоста имеет одно значение, а DNS-сервер - другое.

servicePrincipalName (s) используются для аутентификации Kerberos. Когда приложение, интегрированное с ActiveDirectory, связывается с серверами MSSQL, приложение, вероятно, не будет работать правильно без этих тегов MSSQLSvc, по крайней мере, с использованием аутентификации Kerberos.