Как вы не упомянули об этом, предположим, что вы находитесь в среде Windows Active Directory? Я говорю, потому что команда «ktpass», указанная в вашем примере, является родной для Windows. Исходя из этого, я предполагаю, что доменное имя домена Active Directory - это abc.com, а имя области Kerberos - ABC.COM.
- При создании Keytab, то SPN получает отображается пользователю или объекта компьютера (основной, с точки зрения Kerberos) в то время, так что вам не нужно настроить SPN этого принципала впоследствии если вас добавляют их как вторичные SPN.
- Сделайте себе одолжение и поместите имя царства Kerberos в верхний регистр внутри вашей команды создания keytab. Лучше всего рандомизировать пароль, чтобы никто этого не знал. Функциональность SSB Kerberos будет работать отлично. И имя области Kerberos должно быть добавлено к аргументу «/ mapUser». Я изменил ваш пример на лучший, который вы должны использовать.
- Его внешний вид вашего вопроса, но больше не используют шифрование DES. В отрасли долгое время не понравилось. Я не буду больше говорить об этом, потому что это не то, о чем вы просите.
- Не используйте синтаксис «setspn -a» для добавления или создания имен SPN на принципалах, вместо этого используйте «setspn -s», поскольку «-s» проверяет дубликаты SPN, а «-a» - нет (см. “setspn -s” vs. “setspn -a”).
- Убедитесь, что вы полностью квалифицируете хост-часть SPN (т. Е. Dummy.abc.com, а не просто манекен). Кроме того, механизм аутентификации может сразу же попробовать использовать NTLM вместо Kerberos, чего вы не хотите.
- В простой среде, состоящей только из одного домена DNS и одного домена Kerberos, и имеющих область Kerberos для сопоставлений доменов DNS, уже установлены (обычно по /etc/krb5.conf, когда в UNIX/Linux Windows обрабатывает это автоматически но если он этого не сделает, он попробует C: \ Windows \ krb5.ini, если он есть), в то время как вам не нужно будет квалифицировать область Kerberos как часть SPN при запуске «setspn -a» или «setspn -s», , вы должны сделать это внутри своей команды создания Kerberos.
Таким образом, в вашем случае, на основании всего я говорил, в то время как вы можете использовать:
setspn -a CS/dummy dummyuser
Было бы лучше, чтобы сделать это таким образом, вместо того, чтобы:
setspn -s CS/dummy.abc.com dummyuser
Для дополнительной Кроме того, я также изменил вашу команду создания keytab, но сохраняю часть DES, чтобы не путать.
ktpass +rndPass -out dummy.1.keytab -princ CS/[email protected] -crypto DES-CBC-MD5 +DumpSalt -ptype KRB5_NT_PRINCIPAL +desOnly /mapOp set /mapUser [email protected]