Попытка получить доступ к kerberized NFS монтируется, дает: 'ОШИБКА: GSS-API: ошибка в gss_acquire_cred ()'

У меня есть kerberized файловая система NFS, к которой мы пытаемся получить доступ от клиента Ubuntu 16.04. Сервер является RHEL7. Мы можем смонтировать его успешно (как корень):

mount -t nfs4 -o sec=krb5 colossal.ipa.localdomain:/export/home /mnt

Я могу выполнить 'df' или 'ls/mnt' как корень успешно, но когда я пытаюсь сделать, то же через учетную запись пользователя ('username@localdomain'), rpc.gssd производит ошибку:

ERROR: GSS-API: error in gss_acquire_cred(): GSS_S_FAILURE (Unspecified GSS failure.  Minor code may provide more information) - Can't find client principal username@localdomain in cache collection

Полный вывод отладки (включая KRB5_TRACE =/dev/stdout) от rpc.gssd:

# rpc.gssd -f -v -v -v -r -r -r
Warning: rpcsec_gss library does not support setting debug level
beginning poll
[...]
handling gssd upcall (/run/rpc_pipefs/nfs/clnt0)
handle_gssd_upcall: 'mech=krb5 uid=1388813135 enctypes=18,17,16,23,3,1,2 '
handling krb5 upcall (/run/rpc_pipefs/nfs/clnt0)
process_krb5_upcall: service is '<null>'
[28643] 1501554205.58843: Retrieving username@localdomain from FILE:/etc/krb5/user/0/client.keytab (vno 0, enctype 0) with result: 2/Key table file '/etc/krb5/user/0/client.keytab' not found
ERROR: GSS-API: error in gss_acquire_cred(): GSS_S_FAILURE (Unspecified GSS failure.  Minor code may provide more information) - Can't find client principal username@localdomain in cache collection
getting credentials for client with uid 1388813135 for server colossal.ipa.localdomain
WARNING: Failed to create krb5 context for user with uid 1388813135 for server colossal.ipa.localdomain
doing error downcall

'username@localdomain' имеет TGT Kerberos в LOCALDOMAIN:

$ klist
Ticket cache: KEYRING:persistent:1388813135:1388813135
Default principal: username@LOCALDOMAIN

Valid starting     Expires            Service principal
01/08/17 12:23:15  01/08/17 22:23:15  krbtgt/LOCALDOMAIN@LOCALDOMAIN
        renew until 02/08/17 12:23:13

Я не соглашаюсь, почему rpc.gssd пытается считать '/etc/krb5/user/0/client.keytab'? Кэш находится в брелоке для ключей ядра.

Я не знаю, значительно ли это, но учетные записи пользователей получены через sssd/IPA через AD доверие и имеют имя пользователя 'username@localdomain' в kerberos области LOCALDOMAIN (домен AD).

(Я могу сделать это успешно на клиенте RHEL7 NFS),

Какие-либо подсказки относительно того, чем проблема могла бы быть здесь?

0
задан 31 July 2017 в 23:25

1 ответ

Согласно https://www.redhat.com/archives/freeipa-users/2017-March/msg00049.html rpc.gssd не имеет никакой поддержки брелока для ключей ядра в Ubuntu 16.04.

В/etc/krb5.conf Вы имеете: default_ccache_name = KEYRING:persistent: % {uid}

Удалите ту строку и перезагрузку после той nfs, монтирование должно работать. Это работало на меня сегодня :-)

1
ответ дан 2 November 2019 в 20:47

Другие вопросы по тегам:

Похожие вопросы: