Bug 42209

Summary: Ошибка ввода в домен AD winserver 2003 sp0
Product: Sisyphus Reporter: Mikhail Chernonog <snowmix>
Component: alterator-authAssignee: Evgeny Sinelnikov <sin>
Status: CLOSED WONTFIX QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: alimektor, antoniopost, boyarsh, cas, greh, liannnix, sin
Version: unstable   
Hardware: x86_64   
OS: Linux   

Description Mikhail Chernonog 2022-03-22 16:35:14 MSK
Стенд:
Windows server 2003 sp0
клиент alt workstation k p10 rc2 обновленный до текущего репозитория
клиент alt workstation p10 обновленный до текущего репозитория

Шаги:
Настройка сервера.
1. На winsrv2003 развернуть AD
2. Создать пользователя administrator и добавить его в группы: "Администраторы", "Администраторы домена", "Администраторы предприятия", "Администраторы схемы"

Настройка клиента.
1. Установить пакет task-auth-ad-sssd
2. Добавить в файл /etc/krb5.conf следующие директивы:

default_tgs_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
default_tkt_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
permitted_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5

3. Настроить /etc/resolvconf.conf добавить:

search_domains=oldnt.contoso
name_servers=ip_server_domain

и выполнив команду: # resolvconf -u

4. Ввести клиента в домен:
# system-auth write ad oldnt.contoso comp03 oldnt 'administrator' 'Pa$$word'

Ожидаемый результат:
Система успешно ввелась в домен.

Реальный результат:
Ошибка ввода в домен.
Failed to join domain: failed to lookup DC info for domain 'OLDNT.CONTOSO' over rpc: {Device Timeout} The specified I/O operation on %hs was not completed before the time-out period expired.

Дополнительно:
Прописал IP в kdc = в /etc/krb5.conf:
[realms]
OLDNT.CONTOSO = {
 kdc = ip_server_domain
 default_domain = oldnt.contoso
}
Ошибка осталась.
Comment 1 Evgeny Sinelnikov 2022-03-23 14:21:28 MSK
Предварительная (перед вводом в домен) диагностика.

DNS.

$ host oldnt.contoso
$ dig +short _kerberos._udp.oldnt.contoso SRV
$ dig +short _ldap._tcp.oldnt.contoso SRV

KDC.

$ kinit administrator@OLDNT.CONTOSO

Если не заработает, то требуется выполнить более детальный вывод:

$ KRB5_TRACE=/dev/stdout kinit administrator@OLDNT.CONTOSO

Если успешно, проверяем полученный TGT:

$ klist

SMB via Kerberos.

$ smbclient -k -L //<имя_контроллера_домена>.oldnt.contoso

Если успешно, проверяем полученный TGS:

$ klist
Comment 2 Mikhail Chernonog 2022-03-23 17:49:07 MSK
Выполнил проверку на tve.

Шаги на клиенте:
1. Установил пакет task-auth-ad-sssd
2. Добавил в файл /etc/krb5.conf следующие директивы:

default_tgs_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
default_tkt_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
permitted_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5

3. Настроил /etc/resolvconf.conf:

search_domains=oldnt.contoso
name_servers=ip_server_domain

# resolvconf -u

После выполнил диагностику из комментария 2.

DNS.

$ host oldnt.contoso
$ dig +short _kerberos._udp.oldnt.contoso SRV
$ dig +short _ldap._tcp.oldnt.contoso SRV

dig - вывода нет. Но при этом команда host работает:

[test@kworkstation-10-x86-64 ~]$ host -t SRV _kerberos._udp.oldnt.contoso 
_kerberos._udp.oldnt.contoso has SRV record 0 100 88 winsrv2003.oldnt.contoso.
[test@kworkstation-10-x86-64 ~]$ host -t SRV _ldap._tcp.oldnt.contoso 
_ldap._tcp.oldnt.contoso has SRV record 0 100 389 winsrv2003.oldnt.contoso. 


KDC - успешно

[test@kworkstation-10-x86-64 ~]$ kinit administrator@OLDNT.CONTOSO
Password for administrator@OLDNT.CONTOSO: 
[test@kworkstation-10-x86-64 ~]$ klist
Ticket cache: FILE:/tmp/krb5cc_500
Default principal: administrator@OLDNT.CONTOSO

Valid starting       Expires              Service principal
23.03.2022 16:23:22  24.03.2022 02:23:22  krbtgt/OLDNT.CONTOSO@OLDNT.CONTOSO
        renew until 24.03.2022 16:23:18

SMB via Kerberos - ошибка

[test@kworkstation-10-x86-64 ~]$ smbclient -k -L //winsrv2003.oldnt.contoso
protocol negotiation failed: NT_STATUS_IO_TIMEOUT
Comment 3 Evgeny Shesteperov 2023-07-25 14:08:27 MSK
Версия: alterator-auth-0.44.3-alt1

Пытаюсь ввести в домен Windows 2003:

    # system-auth write ad oldnt.contoso $(hostname --short) oldnt 'administrator' 'Pa$$word'

Примерно через минуту получаю сообщение:

    Failed to join domain: failed to lookup DC info for domain 'OLDNT.CONTOSO' over rpc: {Device Timeout} The specified I/O operation on %hs was not completed before the time-out period expired.

Диагностика показывает такие же сообщения, как и комментарий #2.

Воспроизводится в P10.
Comment 4 Andrey Cherepanov 2023-07-25 16:22:16 MSK
(Ответ для Evgeny Shesteperov на комментарий #3)
> Версия: alterator-auth-0.44.3-alt1
> 
> Пытаюсь ввести в домен Windows 2003:
> 
>     # system-auth write ad oldnt.contoso $(hostname --short) oldnt
> 'administrator' 'Pa$$word'
> 
> Примерно через минуту получаю сообщение:
> 
>     Failed to join domain: failed to lookup DC info for domain
> 'OLDNT.CONTOSO' over rpc: {Device Timeout} The specified I/O operation on
> %hs was not completed before the time-out period expired.
> 
> Диагностика показывает такие же сообщения, как и комментарий #2.
> 
> Воспроизводится в P10.

Исключено. libkrb5 в p10 и более поздних бранчах не поддерживает шифросьюты Windows 2003.