* [devel] Обновление до krb5-1.15.1 @ 2017-07-14 18:47 Evgeny Sinelnikov 2017-07-17 12:49 ` Alexander Bokovoy 0 siblings, 1 reply; 18+ messages in thread From: Evgeny Sinelnikov @ 2017-07-14 18:47 UTC (permalink / raw) To: ALT Linux Team development discussions Здравствуйте, планирую на этих выходных обновиться в сизифе до krb5-1.15.1 Тестовая сборка прошла успешно. Конфликты в ABI - минимальны и, для клиентских приложений, с ходу незаметны. $ ssh girar task ls #185394 TESTED #2 [test-only] sisyphus krb5.git=1.15.1-alt1%ubt python-module-kadmin5.git=0.0.5-alt6 pecl-krb5.git=1.1.2-alt1 Отладку я проведу на samba-стенде, причём в p8 (стенда на сизифе у меня пока нет), и после этого сборка уедет в сизиф. На текущий момент я решаю вопрос о расширениях ABI, которые имеются в федоре. Там довольно обширный набор дополнительных патчей, добавляющих дополнительные тесты для PKINIT, также дополнительные возможности, расширяющие структуру krb5_kdcpreauth_callbacks_st двумя функцииями match_client ("Return true if princ matches the principal named in the request or the client principal (possibly canonicalized). If princ does not match, attempt a database lookup of princ with aliases allowed and compare the result to the client principal, returning true if it matches. Otherwise, return false.") и client_name ("Get an alias to the client DB entry principal (possibly canonicalized)") fedora-Add-certauth-pluggable-interface.patch fedora-Add-k5test-expected_msg-expected_trace.patch fedora-Add-PKINIT-UPN-tests-to-t_pkinit.py.patch fedora-Add-test-case-for-PKINIT-DH-renegotiation.patch fedora-Add-test-cert-generation-to-make-certs.sh.patch fedora-Add-the-client_name-kdcpreauth-callback.patch fedora-Build-with-Werror-implicit-int-where-supported.patch fedora-Correct-error-handling-bug-in-prior-commit.patch fedora-Deindent-crypto_retrieve_X509_sans.patch fedora-Fix-leaks-in-gss_inquire_cred_by_oid.patch fedora-Improve-PKINIT-UPN-SAN-matching.patch fedora-Use-expected_msg-in-test-scripts.patch fedora-Use-expected_trace-in-test-scripts.patch fedora-Use-fallback-realm-for-GSSAPI-ccache-selection.patch fedora-Use-GSSAPI-fallback-skiptest.patch fedora-Use-the-canonical-client-principal-name-for-OTP.patch В общем, match_client() возволяет искать юзеров по псевдонимам, а client_name возвращает псевдонимы. Этот функционал расширяет ABI плагина kdcpreauth до версии 4, которая планируется в krb5-1.16, и уже добавлен в репозиторий апстрима. Я не знаю насколько это актуально, но думаю, что это, как раз, для интеграционных задач (Samba4/FreeIPA) имеет значение. -- Sin (Sinelnikov Evgeny) ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-07-14 18:47 [devel] Обновление до krb5-1.15.1 Evgeny Sinelnikov @ 2017-07-17 12:49 ` Alexander Bokovoy 2017-08-20 3:20 ` Evgeny Sinelnikov 0 siblings, 1 reply; 18+ messages in thread From: Alexander Bokovoy @ 2017-07-17 12:49 UTC (permalink / raw) To: ALT Linux Team development discussions 2017-07-14 21:47 GMT+03:00 Evgeny Sinelnikov <sin@altlinux.org>: > Здравствуйте, > > планирую на этих выходных обновиться в сизифе до krb5-1.15.1 > Тестовая сборка прошла успешно. Конфликты в ABI - минимальны и, для > клиентских приложений, с ходу незаметны. > > $ ssh girar task ls > #185394 TESTED #2 [test-only] sisyphus krb5.git=1.15.1-alt1%ubt > python-module-kadmin5.git=0.0.5-alt6 pecl-krb5.git=1.1.2-alt1 > > Отладку я проведу на samba-стенде, причём в p8 (стенда на сизифе у > меня пока нет), и после этого сборка уедет в сизиф. > > На текущий момент я решаю вопрос о расширениях ABI, которые имеются в > федоре. Там довольно обширный набор дополнительных патчей, добавляющих > дополнительные тесты для PKINIT, также дополнительные возможности, > расширяющие структуру krb5_kdcpreauth_callbacks_st двумя функцииями > match_client ("Return true if princ matches the principal named in the > request or the client principal (possibly canonicalized). If princ > does not match, attempt a database lookup of princ with aliases > allowed and compare the result to the client principal, returning true > if it matches. Otherwise, return false.") и client_name ("Get an alias > to the client DB entry principal (possibly canonicalized)") > > fedora-Add-certauth-pluggable-interface.patch > fedora-Add-k5test-expected_msg-expected_trace.patch > fedora-Add-PKINIT-UPN-tests-to-t_pkinit.py.patch > fedora-Add-test-case-for-PKINIT-DH-renegotiation.patch > fedora-Add-test-cert-generation-to-make-certs.sh.patch > fedora-Add-the-client_name-kdcpreauth-callback.patch > fedora-Build-with-Werror-implicit-int-where-supported.patch > fedora-Correct-error-handling-bug-in-prior-commit.patch > fedora-Deindent-crypto_retrieve_X509_sans.patch > fedora-Fix-leaks-in-gss_inquire_cred_by_oid.patch > fedora-Improve-PKINIT-UPN-SAN-matching.patch > fedora-Use-expected_msg-in-test-scripts.patch > fedora-Use-expected_trace-in-test-scripts.patch > fedora-Use-fallback-realm-for-GSSAPI-ccache-selection.patch > fedora-Use-GSSAPI-fallback-skiptest.patch > fedora-Use-the-canonical-client-principal-name-for-OTP.patch > > В общем, match_client() возволяет искать юзеров по псевдонимам, а > client_name возвращает псевдонимы. Этот функционал расширяет ABI > плагина kdcpreauth до версии 4, которая планируется в krb5-1.16, и уже > добавлен в репозиторий апстрима. Я не знаю насколько это актуально, но > думаю, что это, как раз, для интеграционных задач (Samba4/FreeIPA) > имеет значение. Весь этот код был добавлен для нужд FreeIPA, Samba AD и python-gssapi. Он востребован, соответственно, в FreeIPA 4.5.x и Samba 4.7 (RC1). -- / Alexander Bokovoy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-07-17 12:49 ` Alexander Bokovoy @ 2017-08-20 3:20 ` Evgeny Sinelnikov 2017-08-20 5:08 ` Alexander Bokovoy 0 siblings, 1 reply; 18+ messages in thread From: Evgeny Sinelnikov @ 2017-08-20 3:20 UTC (permalink / raw) To: ALT Linux Team development discussions Здравствуйте, в связи с тем, что патчи от 1.16.x всё-таки имеют смысл обновление затянулось. В итоге было решено две проблемы: Первая потребовала вот такого патча: diff --git a/krb5/src/tests/gssapi/t_ccselect.py b/krb5/src/tests/gssapi/t_ccselect.py index 6be6b4e..47d9ce6 100755 --- a/krb5/src/tests/gssapi/t_ccselect.py +++ b/krb5/src/tests/gssapi/t_ccselect.py @@ -53,7 +53,7 @@ if 'No Kerberos credentials available' not in output: ccdir = os.path.join(r1.testdir, 'cc') ccname = 'DIR:' + ccdir r1.env['KRB5CCNAME'] = ccname -r2.env['KRB5CCNAME'] = ccname +r2.env['KRB5CCNAME'] = ccname + '2' . # Use .k5identity from testdir and not from the tester's homedir. r1.env['HOME'] = r1.testdir Может быть кто-нибудь подскажет как оно работает в Fedora? Смысл в том, что на один и тот же кеш ключей задётся два разных kinit. Конечно, при этом, остаётся только последний. При этом тест из патча fedora-Use-fallback-realm-for-GSSAPI-ccache-selection.patch падает: *** [33] Executing: ./t_ccselect h:host@localhost gss_accept_sec_context: Unspecified GSS failure. Minor code may provide more information gss_accept_sec_context: Request ticket server host/localhost.localdomain@KRBTEST2.COM not found in keytab (ticket kvno 1) *** [33] Completed with return code 1 *** Failure: ./t_ccselect failed with code 1. *** Last command (#33): ./t_ccselect h:host@localhost *** Output of last command: gss_accept_sec_context: Unspecified GSS failure. Minor code may provide more information gss_accept_sec_context: Request ticket server host/localhost.localdomain@KRBTEST2.COM not found in keytab (ticket kvno 1) Use --debug=NUM to run a command under a debugger. Use --stop-after=NUM to stop after a daemon is started in order to attach to it with a debugger. Use --help to see other options. make[2]: *** [check-pytests] Error 1 make[2]: Leaving directory `/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi' make[1]: *** [check-recurse] Error 1 make[1]: Leaving directory `/usr/src/RPM/BUILD/krb5-1.15.1/src/tests' make: *** [check-recurse] Error 1 make: Leaving directory `/usr/src/RPM/BUILD/krb5-1.15.1/src' error: Bad exit status from /usr/src/tmp/rpm-tmp.49745 (%check) Вторая потребовала вытащить бинарные куски из патча fedora-Add-test-cert-generation-to-make-certs.sh.patch, который отваливается с ошибкой "git binary diffs are not supported." Может быть это нужно как-то по-другому решается? В общем, в итоге, у нас имеется тестовая сборка: #187284 BUILDING #1 [locked] [test-only] sisyphus krb5.git=1.15.1-alt1%ubt В принципе, битых пакетов не так-то много получается: i586: NEW unmet dependencies detected: pecl-krb5#1.1.1-alt1.5.6.31.20170607.alt1.S1 libkadm5clnt_mit.so.10 >= set:kfLdpMy7YJqZrZJ5kxzGUKIBlrq8mV9tfKEyW0OSiBgSd0 pecl-krb5#1.1.1-alt1.5.6.31.20170607.alt1.S1 libkadm5clnt_mit.so.10(kadm5clnt_mit_10_MIT) pecl-krb5-debuginfo#1.1.1-alt1.5.6.31.20170607.alt1.S1 debug(libkadm5clnt_mit.so.10) python-module-kadmin5#0.0.5-alt5.qa6.1 libkadm5srv_mit.so.10 >= set:lhNzR5Mvn7eqpejBPZvXPt1gorqdBsFEJ3X64 python-module-kadmin5#0.0.5-alt5.qa6.1 libkadm5srv_mit.so.10(kadm5srv_mit_10_MIT) python-module-kadmin5-debuginfo#0.0.5-alt5.qa6.1 debug(libkadm5srv_mit.so.10) x86_64: NEW unmet dependencies detected: pecl-krb5#1.1.1-alt1.5.6.31.20170607.alt1.S1 libkadm5clnt_mit.so.10()(64bit) >= set:kfLdpMy7YJqZrZJ5kxzGUKIBlrq8mV9tfKEyW0OSiBgSd0 pecl-krb5#1.1.1-alt1.5.6.31.20170607.alt1.S1 libkadm5clnt_mit.so.10(kadm5clnt_mit_10_MIT)(64bit) pecl-krb5-debuginfo#1.1.1-alt1.5.6.31.20170607.alt1.S1 debug64(libkadm5clnt_mit.so.10) python-module-kadmin5#0.0.5-alt5.qa6.1 libkadm5srv_mit.so.10()(64bit) >= set:lhNzR5Mvn7eqpejBPZvXPt1gorqdBsFEJ3X64 python-module-kadmin5#0.0.5-alt5.qa6.1 libkadm5srv_mit.so.10(kadm5srv_mit_10_MIT)(64bit) python-module-kadmin5-debuginfo#0.0.5-alt5.qa6.1 debug64(libkadm5srv_mit.so.10) 17 июля 2017 г., 16:49 пользователь Alexander Bokovoy <ab@altlinux.org> написал: > 2017-07-14 21:47 GMT+03:00 Evgeny Sinelnikov <sin@altlinux.org>: >> Здравствуйте, >> >> планирую на этих выходных обновиться в сизифе до krb5-1.15.1 >> Тестовая сборка прошла успешно. Конфликты в ABI - минимальны и, для >> клиентских приложений, с ходу незаметны. >> >> $ ssh girar task ls >> #185394 TESTED #2 [test-only] sisyphus krb5.git=1.15.1-alt1%ubt >> python-module-kadmin5.git=0.0.5-alt6 pecl-krb5.git=1.1.2-alt1 >> >> Отладку я проведу на samba-стенде, причём в p8 (стенда на сизифе у >> меня пока нет), и после этого сборка уедет в сизиф. >> >> На текущий момент я решаю вопрос о расширениях ABI, которые имеются в >> федоре. Там довольно обширный набор дополнительных патчей, добавляющих >> дополнительные тесты для PKINIT, также дополнительные возможности, >> расширяющие структуру krb5_kdcpreauth_callbacks_st двумя функцииями >> match_client ("Return true if princ matches the principal named in the >> request or the client principal (possibly canonicalized). If princ >> does not match, attempt a database lookup of princ with aliases >> allowed and compare the result to the client principal, returning true >> if it matches. Otherwise, return false.") и client_name ("Get an alias >> to the client DB entry principal (possibly canonicalized)") >> >> fedora-Add-certauth-pluggable-interface.patch >> fedora-Add-k5test-expected_msg-expected_trace.patch >> fedora-Add-PKINIT-UPN-tests-to-t_pkinit.py.patch >> fedora-Add-test-case-for-PKINIT-DH-renegotiation.patch >> fedora-Add-test-cert-generation-to-make-certs.sh.patch >> fedora-Add-the-client_name-kdcpreauth-callback.patch >> fedora-Build-with-Werror-implicit-int-where-supported.patch >> fedora-Correct-error-handling-bug-in-prior-commit.patch >> fedora-Deindent-crypto_retrieve_X509_sans.patch >> fedora-Fix-leaks-in-gss_inquire_cred_by_oid.patch >> fedora-Improve-PKINIT-UPN-SAN-matching.patch >> fedora-Use-expected_msg-in-test-scripts.patch >> fedora-Use-expected_trace-in-test-scripts.patch >> fedora-Use-fallback-realm-for-GSSAPI-ccache-selection.patch >> fedora-Use-GSSAPI-fallback-skiptest.patch >> fedora-Use-the-canonical-client-principal-name-for-OTP.patch >> >> В общем, match_client() возволяет искать юзеров по псевдонимам, а >> client_name возвращает псевдонимы. Этот функционал расширяет ABI >> плагина kdcpreauth до версии 4, которая планируется в krb5-1.16, и уже >> добавлен в репозиторий апстрима. Я не знаю насколько это актуально, но >> думаю, что это, как раз, для интеграционных задач (Samba4/FreeIPA) >> имеет значение. > Весь этот код был добавлен для нужд FreeIPA, Samba AD и python-gssapi. > Он востребован, соответственно, в FreeIPA 4.5.x и Samba 4.7 (RC1). -- Sin (Sinelnikov Evgeny) ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-08-20 3:20 ` Evgeny Sinelnikov @ 2017-08-20 5:08 ` Alexander Bokovoy 2017-08-20 10:16 ` Evgeny Sinelnikov 0 siblings, 1 reply; 18+ messages in thread From: Alexander Bokovoy @ 2017-08-20 5:08 UTC (permalink / raw) To: ALT Linux Team development discussions 2017-08-20 6:20 GMT+03:00 Evgeny Sinelnikov <sin@altlinux.org>: > Здравствуйте, > > в связи с тем, что патчи от 1.16.x всё-таки имеют смысл обновление > затянулось. В итоге было решено две проблемы: > > Первая потребовала вот такого патча: > > diff --git a/krb5/src/tests/gssapi/t_ccselect.py > b/krb5/src/tests/gssapi/t_ccselect.py > index 6be6b4e..47d9ce6 100755 > --- a/krb5/src/tests/gssapi/t_ccselect.py > +++ b/krb5/src/tests/gssapi/t_ccselect.py > @@ -53,7 +53,7 @@ if 'No Kerberos credentials available' not in output: > ccdir = os.path.join(r1.testdir, 'cc') > ccname = 'DIR:' + ccdir > r1.env['KRB5CCNAME'] = ccname > -r2.env['KRB5CCNAME'] = ccname > +r2.env['KRB5CCNAME'] = ccname + '2' > . > # Use .k5identity from testdir and not from the tester's homedir. > r1.env['HOME'] = r1.testdir > > Может быть кто-нибудь подскажет как оно работает в Fedora? ccname DIR:... -- это коллекция ccaches, а не один. Может хранить билеты из разных доменов. Смысл теста как раз в том, чтобы проверить, выбирает ли ccselect правильный билет из коллекции по имени принципала из соответствующего домена. > Смысл в том, что на один и тот же кеш ключей задётся два разных kinit. Это не один и тот же ccache. Внутри коллекции отдельные ccache хранятся отдельными файлами (в DIR:, в других типах коллекций они хранятся иными способами). Каждый отдельный ccache в коллекции соответствует своему домену. Поэтому kinit foo@BAR.Z и kinit foo@Z.BAR могут сохранить соответствующие билеты в одной коллекции. Не надо ломать то, что вы не понимаете. > Вторая потребовала вытащить бинарные куски из патча > fedora-Add-test-cert-generation-to-make-certs.sh.patch, который > отваливается с ошибкой "git binary diffs are not supported." > Может быть это нужно как-то по-другому решается? Это я не понимаю, как-то же он прикладывается в федоре. -- / Alexander Bokovoy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-08-20 5:08 ` Alexander Bokovoy @ 2017-08-20 10:16 ` Evgeny Sinelnikov 2017-08-20 10:24 ` Evgeny Sinelnikov 2017-08-20 15:19 ` Alexander Bokovoy 0 siblings, 2 replies; 18+ messages in thread From: Evgeny Sinelnikov @ 2017-08-20 10:16 UTC (permalink / raw) To: ALT Linux Team development discussions 20 августа 2017 г., 9:08 пользователь Alexander Bokovoy <ab@altlinux.org> написал: > 2017-08-20 6:20 GMT+03:00 Evgeny Sinelnikov <sin@altlinux.org>: >> Здравствуйте, >> >> в связи с тем, что патчи от 1.16.x всё-таки имеют смысл обновление >> затянулось. В итоге было решено две проблемы: >> >> Первая потребовала вот такого патча: >> >> diff --git a/krb5/src/tests/gssapi/t_ccselect.py >> b/krb5/src/tests/gssapi/t_ccselect.py >> index 6be6b4e..47d9ce6 100755 >> --- a/krb5/src/tests/gssapi/t_ccselect.py >> +++ b/krb5/src/tests/gssapi/t_ccselect.py >> @@ -53,7 +53,7 @@ if 'No Kerberos credentials available' not in output: >> ccdir = os.path.join(r1.testdir, 'cc') >> ccname = 'DIR:' + ccdir >> r1.env['KRB5CCNAME'] = ccname >> -r2.env['KRB5CCNAME'] = ccname >> +r2.env['KRB5CCNAME'] = ccname + '2' >> . >> # Use .k5identity from testdir and not from the tester's homedir. >> r1.env['HOME'] = r1.testdir >> >> Может быть кто-нибудь подскажет как оно работает в Fedora? > ccname DIR:... -- это коллекция ccaches, а не один. Может хранить > билеты из разных доменов. Смысл теста как раз в том, чтобы проверить, > выбирает ли ccselect правильный билет из коллекции по имени принципала > из соответствующего домена. > > >> Смысл в том, что на один и тот же кеш ключей задётся два разных kinit. > Это не один и тот же ccache. Внутри коллекции отдельные ccache > хранятся отдельными файлами (в DIR:, в других типах коллекций они > хранятся иными способами). Каждый отдельный ccache в коллекции > соответствует своему домену. Поэтому kinit foo@BAR.Z и kinit foo@Z.BAR > могут сохранить соответствующие билеты в одной коллекции. > > Не надо ломать то, что вы не понимаете. Спасибо, я очень надеялся, что вы поясните. Давайте, разбирёмся в деталях. А каков тогда критерий выбора из коллекции? По имени host@localhost' можно выбрать как host/localhost.localdomain@KRBTEST2.COM, так и host/localhost.localdomain@KRBTEST.COM. Разве не так? Или смысл fallback в том, чтобы проигнорировать @KRBTEST2.COM для host/localhost.localdomain и найти его для alice? Или в том, что host@localhost - это не host/localhost.localdomain и его, вообще нет в CC, и поэтому нужно взять @KRBTEST.COM? _____________________ ./t_ccselect.py: [...] gsslocal = 'h:host@localhost' [...] # Show current ccache r1.run(['../../clients/klist/klist', '-A']) # Check ccache selection using a fallback realm (default realm). output = r1.run(['./t_ccselect', gsslocal]) if output != (alice + '\n'): fail('alice not chosen via default realm fallback') output = r2.run(['./t_ccselect', gsslocal]) if output != (zaphod + '\n'): fail('zaphod not chosen via default realm fallback') [...] *** [33] Executing: ../../clients/klist/klist -A Ticket cache: DIR::/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc/tktDK3fgK Default principal: zaphod@KRBTEST2.COM Valid starting Expires Service principal 08/20/17 10:03:33 08/21/17 10:03:33 krbtgt/KRBTEST2.COM@KRBTEST2.COM 08/20/17 10:03:33 08/21/17 10:03:33 host/localhost.localdomain@KRBTEST2.COM 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest2.com@ 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest2.com@KRBTEST2.COM Ticket cache: DIR::/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc/tkt Default principal: alice@KRBTEST.COM Valid starting Expires Service principal 08/20/17 10:03:33 08/21/17 10:03:33 krbtgt/KRBTEST.COM@KRBTEST.COM 08/20/17 10:03:33 08/21/17 10:03:33 host/localhost.localdomain@KRBTEST.COM 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest.com@ 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest.com@KRBTEST.COM *** [33] Completed with return code 0 *** [34] Executing: ./t_ccselect h:host@localhost gss_accept_sec_context: Unspecified GSS failure. Minor code may provide more information gss_accept_sec_context: Request ticket server host/localhost.localdomain@KRBTEST2.COM not found in keytab (ticket kvno 1) *** [34] Completed with return code 1 *** Failure: ./t_ccselect failed with code 1. *** Last command (#34): ./t_ccselect h:host@localhost *** Output of last command: gss_accept_sec_context: Unspecified GSS failure. Minor code may provide more information gss_accept_sec_context: Request ticket server host/localhost.localdomain@KRBTEST2.COM not found in keytab (ticket kvno 1) Use --debug=NUM to run a command under a debugger. Use --stop-after=NUM to stop after a daemon is started in order to attach to it with a debugger. Use --help to see other options. [builder@localhost gssapi]$ KRB5CCNAME=DIR:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc ../../clients/klist/klist -A Ticket cache: DIR::/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc/tktDK3fgK Default principal: zaphod@KRBTEST2.COM Valid starting Expires Service principal 08/20/17 10:03:33 08/21/17 10:03:33 krbtgt/KRBTEST2.COM@KRBTEST2.COM 08/20/17 10:03:33 08/21/17 10:03:33 host/localhost.localdomain@KRBTEST2.COM 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest2.com@ 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest2.com@KRBTEST2.COM Ticket cache: DIR::/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc/tkt Default principal: alice@KRBTEST.COM Valid starting Expires Service principal 08/20/17 10:03:33 08/21/17 10:03:33 krbtgt/KRBTEST.COM@KRBTEST.COM 08/20/17 10:03:33 08/21/17 10:03:33 host/localhost.localdomain@KRBTEST.COM 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest.com@ 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest.com@KRBTEST.COM -- Sin (Sinelnikov Evgeny) ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-08-20 10:16 ` Evgeny Sinelnikov @ 2017-08-20 10:24 ` Evgeny Sinelnikov 2017-08-20 11:46 ` Dmitry V. Levin 2017-08-20 15:19 ` Alexander Bokovoy 1 sibling, 1 reply; 18+ messages in thread From: Evgeny Sinelnikov @ 2017-08-20 10:24 UTC (permalink / raw) To: ALT Linux Team development discussions 20 августа 2017 г., 14:16 пользователь Evgeny Sinelnikov <sin@altlinux.org> написал: > 20 августа 2017 г., 9:08 пользователь Alexander Bokovoy > <ab@altlinux.org> написал: >> 2017-08-20 6:20 GMT+03:00 Evgeny Sinelnikov <sin@altlinux.org>: >>> Здравствуйте, >>> >>> в связи с тем, что патчи от 1.16.x всё-таки имеют смысл обновление >>> затянулось. В итоге было решено две проблемы: >>> >>> Первая потребовала вот такого патча: >>> >>> diff --git a/krb5/src/tests/gssapi/t_ccselect.py >>> b/krb5/src/tests/gssapi/t_ccselect.py >>> index 6be6b4e..47d9ce6 100755 >>> --- a/krb5/src/tests/gssapi/t_ccselect.py >>> +++ b/krb5/src/tests/gssapi/t_ccselect.py >>> @@ -53,7 +53,7 @@ if 'No Kerberos credentials available' not in output: >>> ccdir = os.path.join(r1.testdir, 'cc') >>> ccname = 'DIR:' + ccdir >>> r1.env['KRB5CCNAME'] = ccname >>> -r2.env['KRB5CCNAME'] = ccname >>> +r2.env['KRB5CCNAME'] = ccname + '2' >>> . >>> # Use .k5identity from testdir and not from the tester's homedir. >>> r1.env['HOME'] = r1.testdir >>> >>> Может быть кто-нибудь подскажет как оно работает в Fedora? >> ccname DIR:... -- это коллекция ccaches, а не один. Может хранить >> билеты из разных доменов. Смысл теста как раз в том, чтобы проверить, >> выбирает ли ccselect правильный билет из коллекции по имени принципала >> из соответствующего домена. >> >> >>> Смысл в том, что на один и тот же кеш ключей задётся два разных kinit. >> Это не один и тот же ccache. Внутри коллекции отдельные ccache >> хранятся отдельными файлами (в DIR:, в других типах коллекций они >> хранятся иными способами). Каждый отдельный ccache в коллекции >> соответствует своему домену. Поэтому kinit foo@BAR.Z и kinit foo@Z.BAR >> могут сохранить соответствующие билеты в одной коллекции. >> >> Не надо ломать то, что вы не понимаете. > > Спасибо, я очень надеялся, что вы поясните. Давайте, разбирёмся в деталях. > > А каков тогда критерий выбора из коллекции? По имени host@localhost' > можно выбрать как host/localhost.localdomain@KRBTEST2.COM, так и > host/localhost.localdomain@KRBTEST.COM. Разве не так? > > Или смысл fallback в том, чтобы проигнорировать @KRBTEST2.COM для > host/localhost.localdomain и найти его для alice? > Или в том, что host@localhost - это не host/localhost.localdomain и > его, вообще нет в CC, и поэтому нужно взять @KRBTEST.COM? > > > _____________________ > > ./t_ccselect.py: > > [...] > gsslocal = 'h:host@localhost' > [...] > # Show current ccache > r1.run(['../../clients/klist/klist', '-A']) > > # Check ccache selection using a fallback realm (default realm). > output = r1.run(['./t_ccselect', gsslocal]) > if output != (alice + '\n'): > fail('alice not chosen via default realm fallback') > output = r2.run(['./t_ccselect', gsslocal]) > if output != (zaphod + '\n'): > fail('zaphod not chosen via default realm fallback') > [...] > > *** [33] Executing: ../../clients/klist/klist -A > Ticket cache: DIR::/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc/tktDK3fgK > Default principal: zaphod@KRBTEST2.COM > > Valid starting Expires Service principal > 08/20/17 10:03:33 08/21/17 10:03:33 krbtgt/KRBTEST2.COM@KRBTEST2.COM > 08/20/17 10:03:33 08/21/17 10:03:33 host/localhost.localdomain@KRBTEST2.COM > 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest2.com@ > 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest2.com@KRBTEST2.COM > > Ticket cache: DIR::/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc/tkt > Default principal: alice@KRBTEST.COM > > Valid starting Expires Service principal > 08/20/17 10:03:33 08/21/17 10:03:33 krbtgt/KRBTEST.COM@KRBTEST.COM > 08/20/17 10:03:33 08/21/17 10:03:33 host/localhost.localdomain@KRBTEST.COM > 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest.com@ > 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest.com@KRBTEST.COM > *** [33] Completed with return code 0 > *** [34] Executing: ./t_ccselect h:host@localhost > gss_accept_sec_context: Unspecified GSS failure. Minor code may > provide more information > gss_accept_sec_context: Request ticket server > host/localhost.localdomain@KRBTEST2.COM not found in keytab (ticket > kvno 1) > *** [34] Completed with return code 1 > *** Failure: ./t_ccselect failed with code 1. > *** Last command (#34): ./t_ccselect h:host@localhost > *** Output of last command: > gss_accept_sec_context: Unspecified GSS failure. Minor code may > provide more information > gss_accept_sec_context: Request ticket server > host/localhost.localdomain@KRBTEST2.COM not found in keytab (ticket > kvno 1) > > Use --debug=NUM to run a command under a debugger. Use > --stop-after=NUM to stop after a daemon is started in order to > attach to it with a debugger. Use --help to see other options. > > > [builder@localhost gssapi]$ > KRB5CCNAME=DIR:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc > ../../clients/klist/klist -A > Ticket cache: DIR::/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc/tktDK3fgK > Default principal: zaphod@KRBTEST2.COM > > Valid starting Expires Service principal > 08/20/17 10:03:33 08/21/17 10:03:33 krbtgt/KRBTEST2.COM@KRBTEST2.COM > 08/20/17 10:03:33 08/21/17 10:03:33 host/localhost.localdomain@KRBTEST2.COM > 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest2.com@ > 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest2.com@KRBTEST2.COM > > Ticket cache: DIR::/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc/tkt > Default principal: alice@KRBTEST.COM > > Valid starting Expires Service principal > 08/20/17 10:03:33 08/21/17 10:03:33 krbtgt/KRBTEST.COM@KRBTEST.COM > 08/20/17 10:03:33 08/21/17 10:03:33 host/localhost.localdomain@KRBTEST.COM > 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest.com@ > 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest.com@KRBTEST.COM > О! Ну, я разобрался. У нас в хешер, копируется /etc/hosts. При этом у меня запись для localhost выглядит так: $ cat /etc/hosts 127.0.0.1 localhost.localdomain localhost Когда я, через hsh-shell --rooter, оставил только такую, тест успешно прошёл: $ cat /etc/hosts 127.0.0.1 localhost.localdomain *** [33] Executing: ../../clients/klist/klist -A Ticket cache: DIR::/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc/tktAQO0Q4 Default principal: zaphod@KRBTEST2.COM Valid starting Expires Service principal 08/20/17 10:18:14 08/21/17 10:18:14 krbtgt/KRBTEST2.COM@KRBTEST2.COM 08/20/17 10:18:14 08/21/17 10:18:14 host/localhost.localdomain@KRBTEST2.COM 08/20/17 10:18:14 08/21/17 10:18:14 host/foo.krbtest2.com@ 08/20/17 10:18:14 08/21/17 10:18:14 host/foo.krbtest2.com@KRBTEST2.COM Ticket cache: DIR::/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc/tkt Default principal: alice@KRBTEST.COM Valid starting Expires Service principal 08/20/17 10:18:14 08/21/17 10:18:14 krbtgt/KRBTEST.COM@KRBTEST.COM 08/20/17 10:18:14 08/21/17 10:18:14 host/localhost.localdomain@KRBTEST.COM 08/20/17 10:18:14 08/21/17 10:18:14 host/foo.krbtest.com@ 08/20/17 10:18:14 08/21/17 10:18:14 host/foo.krbtest.com@KRBTEST.COM *** [33] Completed with return code 0 *** [34] Executing: ./t_ccselect h:host@localhost alice@KRBTEST.COM *** [34] Completed with return code 0 *** [35] Executing: ./t_ccselect h:host@localhost zaphod@KRBTEST2.COM *** [35] Completed with return code 0 *** [36] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/clients/kinit/kinit bob@KRBTEST.COM Password for bob@KRBTEST.COM: *** [36] Completed with return code 0 *** [37] Executing: ./t_ccselect p:host/localhost.localdomain@KRBTEST.COM alice@KRBTEST.COM *** [37] Completed with return code 0 *** [38] Executing: ./t_ccselect h:host@localhost zaphod@KRBTEST2.COM *** [38] Completed with return code 0 *** [39] Executing: ./t_ccselect p:host/localhost.localdomain@ bob@KRBTEST.COM *** [39] Completed with return code 0 *** [40] Executing: ./t_ccselect h:bogus@foo.krbtest2.com gss_init_sec_context: Unspecified GSS failure. Minor code may provide more information gss_init_sec_context: Can't find client principal noprinc@KRBTEST.COM in cache collection *** [40] Completed with return code 1 *** Success: GSSAPI credential selection tests Вот только что с этим делать? -- Sin (Sinelnikov Evgeny) ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-08-20 10:24 ` Evgeny Sinelnikov @ 2017-08-20 11:46 ` Dmitry V. Levin 0 siblings, 0 replies; 18+ messages in thread From: Dmitry V. Levin @ 2017-08-20 11:46 UTC (permalink / raw) To: ALT Devel discussion list [-- Attachment #1: Type: text/plain, Size: 578 bytes --] On Sun, Aug 20, 2017 at 02:24:29PM +0400, Evgeny Sinelnikov wrote: [...] > О! Ну, я разобрался. > > У нас в хешер, копируется /etc/hosts. При этом у меня запись для > localhost выглядит так: > $ cat /etc/hosts > 127.0.0.1 localhost.localdomain localhost > > Когда я, через hsh-shell --rooter, оставил только такую, тест успешно прошёл: > $ cat /etc/hosts > 127.0.0.1 localhost.localdomain [...] > Вот только что с этим делать? Очевидно, исправить тест, который не должен полагаться на то, что в /etc/hosts нет записи про localhost. -- ldv [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 801 bytes --] ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-08-20 10:16 ` Evgeny Sinelnikov 2017-08-20 10:24 ` Evgeny Sinelnikov @ 2017-08-20 15:19 ` Alexander Bokovoy 2017-08-20 21:27 ` Evgeny Sinelnikov 1 sibling, 1 reply; 18+ messages in thread From: Alexander Bokovoy @ 2017-08-20 15:19 UTC (permalink / raw) To: ALT Linux Team development discussions 2017-08-20 13:16 GMT+03:00 Evgeny Sinelnikov <sin@altlinux.org>: > 20 августа 2017 г., 9:08 пользователь Alexander Bokovoy > <ab@altlinux.org> написал: >> 2017-08-20 6:20 GMT+03:00 Evgeny Sinelnikov <sin@altlinux.org>: >>> Здравствуйте, >>> >>> в связи с тем, что патчи от 1.16.x всё-таки имеют смысл обновление >>> затянулось. В итоге было решено две проблемы: >>> >>> Первая потребовала вот такого патча: >>> >>> diff --git a/krb5/src/tests/gssapi/t_ccselect.py >>> b/krb5/src/tests/gssapi/t_ccselect.py >>> index 6be6b4e..47d9ce6 100755 >>> --- a/krb5/src/tests/gssapi/t_ccselect.py >>> +++ b/krb5/src/tests/gssapi/t_ccselect.py >>> @@ -53,7 +53,7 @@ if 'No Kerberos credentials available' not in output: >>> ccdir = os.path.join(r1.testdir, 'cc') >>> ccname = 'DIR:' + ccdir >>> r1.env['KRB5CCNAME'] = ccname >>> -r2.env['KRB5CCNAME'] = ccname >>> +r2.env['KRB5CCNAME'] = ccname + '2' >>> . >>> # Use .k5identity from testdir and not from the tester's homedir. >>> r1.env['HOME'] = r1.testdir >>> >>> Может быть кто-нибудь подскажет как оно работает в Fedora? >> ccname DIR:... -- это коллекция ccaches, а не один. Может хранить >> билеты из разных доменов. Смысл теста как раз в том, чтобы проверить, >> выбирает ли ccselect правильный билет из коллекции по имени принципала >> из соответствующего домена. >> >> >>> Смысл в том, что на один и тот же кеш ключей задётся два разных kinit. >> Это не один и тот же ccache. Внутри коллекции отдельные ccache >> хранятся отдельными файлами (в DIR:, в других типах коллекций они >> хранятся иными способами). Каждый отдельный ccache в коллекции >> соответствует своему домену. Поэтому kinit foo@BAR.Z и kinit foo@Z.BAR >> могут сохранить соответствующие билеты в одной коллекции. >> >> Не надо ломать то, что вы не понимаете. > > Спасибо, я очень надеялся, что вы поясните. Давайте, разбирёмся в деталях. > > А каков тогда критерий выбора из коллекции? По имени host@localhost' > можно выбрать как host/localhost.localdomain@KRBTEST2.COM, так и > host/localhost.localdomain@KRBTEST.COM. Разве не так? > > Или смысл fallback в том, чтобы проигнорировать @KRBTEST2.COM для > host/localhost.localdomain и найти его для alice? > Или в том, что host@localhost - это не host/localhost.localdomain и > его, вообще нет в CC, и поэтому нужно взять @KRBTEST.COM? При работе с ccache collection код использует тот реалм, который указан в имени принципала. Если он там отсутствует, то применяется тот, который указан в качестве умолчания в krb5.conf. Далее, если в krb5.conf есть dns_canonicalize_hostname=true, то localhost будет разрешен через getaddrinfo() и превратится в localhost.localdomain. Поскольку реалм не указан и прямого соответствия в domain_realm секции krb5.conf нет, то используется реалм по умолчанию. > _____________________ > > ./t_ccselect.py: > > [...] > gsslocal = 'h:host@localhost' > [...] > # Show current ccache > r1.run(['../../clients/klist/klist', '-A']) > > # Check ccache selection using a fallback realm (default realm). > output = r1.run(['./t_ccselect', gsslocal]) > if output != (alice + '\n'): > fail('alice not chosen via default realm fallback') > output = r2.run(['./t_ccselect', gsslocal]) > if output != (zaphod + '\n'): > fail('zaphod not chosen via default realm fallback') > [...] > > *** [33] Executing: ../../clients/klist/klist -A > Ticket cache: DIR::/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc/tktDK3fgK > Default principal: zaphod@KRBTEST2.COM > > Valid starting Expires Service principal > 08/20/17 10:03:33 08/21/17 10:03:33 krbtgt/KRBTEST2.COM@KRBTEST2.COM > 08/20/17 10:03:33 08/21/17 10:03:33 host/localhost.localdomain@KRBTEST2.COM > 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest2.com@ > 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest2.com@KRBTEST2.COM > > Ticket cache: DIR::/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc/tkt > Default principal: alice@KRBTEST.COM > > Valid starting Expires Service principal > 08/20/17 10:03:33 08/21/17 10:03:33 krbtgt/KRBTEST.COM@KRBTEST.COM > 08/20/17 10:03:33 08/21/17 10:03:33 host/localhost.localdomain@KRBTEST.COM > 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest.com@ > 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest.com@KRBTEST.COM > *** [33] Completed with return code 0 > *** [34] Executing: ./t_ccselect h:host@localhost > gss_accept_sec_context: Unspecified GSS failure. Minor code may > provide more information > gss_accept_sec_context: Request ticket server > host/localhost.localdomain@KRBTEST2.COM not found in keytab (ticket > kvno 1) > *** [34] Completed with return code 1 > *** Failure: ./t_ccselect failed with code 1. > *** Last command (#34): ./t_ccselect h:host@localhost > *** Output of last command: > gss_accept_sec_context: Unspecified GSS failure. Minor code may > provide more information > gss_accept_sec_context: Request ticket server > host/localhost.localdomain@KRBTEST2.COM not found in keytab (ticket > kvno 1) Можешь добавить дамп окружений до исполнения этого теста? -- / Alexander Bokovoy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-08-20 15:19 ` Alexander Bokovoy @ 2017-08-20 21:27 ` Evgeny Sinelnikov 2017-08-21 4:53 ` Alexander Bokovoy 0 siblings, 1 reply; 18+ messages in thread From: Evgeny Sinelnikov @ 2017-08-20 21:27 UTC (permalink / raw) To: ALT Linux Team development discussions 20 августа 2017 г., 19:19 пользователь Alexander Bokovoy <ab@altlinux.org> написал: > 2017-08-20 13:16 GMT+03:00 Evgeny Sinelnikov <sin@altlinux.org>: >> 20 августа 2017 г., 9:08 пользователь Alexander Bokovoy >> <ab@altlinux.org> написал: >>> 2017-08-20 6:20 GMT+03:00 Evgeny Sinelnikov <sin@altlinux.org>: >>>> Здравствуйте, >>>> >>>> в связи с тем, что патчи от 1.16.x всё-таки имеют смысл обновление >>>> затянулось. В итоге было решено две проблемы: >>>> >>>> Первая потребовала вот такого патча: >>>> >>>> diff --git a/krb5/src/tests/gssapi/t_ccselect.py >>>> b/krb5/src/tests/gssapi/t_ccselect.py >>>> index 6be6b4e..47d9ce6 100755 >>>> --- a/krb5/src/tests/gssapi/t_ccselect.py >>>> +++ b/krb5/src/tests/gssapi/t_ccselect.py >>>> @@ -53,7 +53,7 @@ if 'No Kerberos credentials available' not in output: >>>> ccdir = os.path.join(r1.testdir, 'cc') >>>> ccname = 'DIR:' + ccdir >>>> r1.env['KRB5CCNAME'] = ccname >>>> -r2.env['KRB5CCNAME'] = ccname >>>> +r2.env['KRB5CCNAME'] = ccname + '2' >>>> . >>>> # Use .k5identity from testdir and not from the tester's homedir. >>>> r1.env['HOME'] = r1.testdir >>>> >>>> Может быть кто-нибудь подскажет как оно работает в Fedora? >>> ccname DIR:... -- это коллекция ccaches, а не один. Может хранить >>> билеты из разных доменов. Смысл теста как раз в том, чтобы проверить, >>> выбирает ли ccselect правильный билет из коллекции по имени принципала >>> из соответствующего домена. >>> >>> >>>> Смысл в том, что на один и тот же кеш ключей задётся два разных kinit. >>> Это не один и тот же ccache. Внутри коллекции отдельные ccache >>> хранятся отдельными файлами (в DIR:, в других типах коллекций они >>> хранятся иными способами). Каждый отдельный ccache в коллекции >>> соответствует своему домену. Поэтому kinit foo@BAR.Z и kinit foo@Z.BAR >>> могут сохранить соответствующие билеты в одной коллекции. >>> >>> Не надо ломать то, что вы не понимаете. >> >> Спасибо, я очень надеялся, что вы поясните. Давайте, разбирёмся в деталях. >> >> А каков тогда критерий выбора из коллекции? По имени host@localhost' >> можно выбрать как host/localhost.localdomain@KRBTEST2.COM, так и >> host/localhost.localdomain@KRBTEST.COM. Разве не так? >> >> Или смысл fallback в том, чтобы проигнорировать @KRBTEST2.COM для >> host/localhost.localdomain и найти его для alice? >> Или в том, что host@localhost - это не host/localhost.localdomain и >> его, вообще нет в CC, и поэтому нужно взять @KRBTEST.COM? > При работе с ccache collection код использует тот реалм, который > указан в имени принципала. Если он там отсутствует, то применяется > тот, который указан в качестве умолчания в krb5.conf. > > Далее, если в krb5.conf есть dns_canonicalize_hostname=true, то > localhost будет разрешен через getaddrinfo() и превратится в > localhost.localdomain. > Поскольку реалм не указан и прямого соответствия в domain_realm секции > krb5.conf нет, то используется реалм по умолчанию. > >> _____________________ >> >> ./t_ccselect.py: >> >> [...] >> gsslocal = 'h:host@localhost' >> [...] >> # Show current ccache >> r1.run(['../../clients/klist/klist', '-A']) >> >> # Check ccache selection using a fallback realm (default realm). >> output = r1.run(['./t_ccselect', gsslocal]) >> if output != (alice + '\n'): >> fail('alice not chosen via default realm fallback') >> output = r2.run(['./t_ccselect', gsslocal]) >> if output != (zaphod + '\n'): >> fail('zaphod not chosen via default realm fallback') >> [...] >> >> *** [33] Executing: ../../clients/klist/klist -A >> Ticket cache: DIR::/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc/tktDK3fgK >> Default principal: zaphod@KRBTEST2.COM >> >> Valid starting Expires Service principal >> 08/20/17 10:03:33 08/21/17 10:03:33 krbtgt/KRBTEST2.COM@KRBTEST2.COM >> 08/20/17 10:03:33 08/21/17 10:03:33 host/localhost.localdomain@KRBTEST2.COM >> 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest2.com@ >> 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest2.com@KRBTEST2.COM >> >> Ticket cache: DIR::/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc/tkt >> Default principal: alice@KRBTEST.COM >> >> Valid starting Expires Service principal >> 08/20/17 10:03:33 08/21/17 10:03:33 krbtgt/KRBTEST.COM@KRBTEST.COM >> 08/20/17 10:03:33 08/21/17 10:03:33 host/localhost.localdomain@KRBTEST.COM >> 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest.com@ >> 08/20/17 10:03:33 08/21/17 10:03:33 host/foo.krbtest.com@KRBTEST.COM >> *** [33] Completed with return code 0 >> *** [34] Executing: ./t_ccselect h:host@localhost >> gss_accept_sec_context: Unspecified GSS failure. Minor code may >> provide more information >> gss_accept_sec_context: Request ticket server >> host/localhost.localdomain@KRBTEST2.COM not found in keytab (ticket >> kvno 1) >> *** [34] Completed with return code 1 >> *** Failure: ./t_ccselect failed with code 1. >> *** Last command (#34): ./t_ccselect h:host@localhost >> *** Output of last command: >> gss_accept_sec_context: Unspecified GSS failure. Minor code may >> provide more information >> gss_accept_sec_context: Request ticket server >> host/localhost.localdomain@KRBTEST2.COM not found in keytab (ticket >> kvno 1) > Можешь добавить дамп окружений до исполнения этого теста? Мне доступен chroot в hasher'е. Могу. Но что есть "дамп окружений" и как его получить ? -- Sin (Sinelnikov Evgeny) ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-08-20 21:27 ` Evgeny Sinelnikov @ 2017-08-21 4:53 ` Alexander Bokovoy 2017-08-22 6:18 ` Evgeny Sinelnikov 0 siblings, 1 reply; 18+ messages in thread From: Alexander Bokovoy @ 2017-08-21 4:53 UTC (permalink / raw) To: ALT Linux Team development discussions 2017-08-21 0:27 GMT+03:00 Evgeny Sinelnikov <sin@altlinux.org>: >> Можешь добавить дамп окружений до исполнения этого теста? > > Мне доступен chroot в hasher'е. Могу. Но что есть "дамп окружений" и > как его получить ? r1.env и r2.env в t_ccselect.py, это обычные хэши. import pprint pprint.pprint(r1.env) -- / Alexander Bokovoy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-08-21 4:53 ` Alexander Bokovoy @ 2017-08-22 6:18 ` Evgeny Sinelnikov 2017-08-22 6:59 ` Alexander Bokovoy 0 siblings, 1 reply; 18+ messages in thread From: Evgeny Sinelnikov @ 2017-08-22 6:18 UTC (permalink / raw) To: ALT Linux Team development discussions 21 августа 2017 г., 8:53 пользователь Alexander Bokovoy <ab@altlinux.org> написал: > 2017-08-21 0:27 GMT+03:00 Evgeny Sinelnikov <sin@altlinux.org>: > >>> Можешь добавить дамп окружений до исполнения этого теста? >> >> Мне доступен chroot в hasher'е. Могу. Но что есть "дамп окружений" и >> как его получить ? > r1.env и r2.env в t_ccselect.py, это обычные хэши. > import pprint > pprint.pprint(r1.env) > Внёс такую правку: [builder@localhost gssapi]$ diff -u t_ccselect.py.orig t_ccselect.py --- t_ccselect.py.orig 2017-08-22 06:05:19.511969086 +0000 +++ t_ccselect.py 2017-08-22 06:06:31.236771746 +0000 @@ -23,6 +23,7 @@ # or implied warranty. from k5test import * +import pprint # Create two independent realms (no cross-realm TGTs). r1 = K5Realm(create_user=False) @@ -49,6 +50,9 @@ # .k5identity rules since it has unknown type. refserver = 'p:host/' + hostname + '@' +pprint.pprint(r1.env) +pprint.pprint(r2.env) + # Verify that we can't get initiator creds with no credentials in the # collection. r1.run(['./t_ccselect', host1, '-'], expected_code=1, @@ -86,6 +90,9 @@ r1.kinit(alice, password('alice')) r2.kinit(zaphod, password('zaphod')) +pprint.pprint(r1.env) +pprint.pprint(r2.env) + # Check that we can find a cache for a specified client principal. output = r1.run(['./t_ccselect', host1, 'p:' + alice]) if output != (alice + '\n'): Два раза вывожу env'ы: - до начала теста (1 - для r1, 2 - для r2) - сразу после kinit (3 - для r1, 4 - для r2) [builder@localhost gssapi]$ diff -u 1 2 --- 1 2017-08-22 06:07:23.807627066 +0000 +++ 2 2017-08-22 06:12:42.311749847 +0000 @@ -5,14 +5,14 @@ 'HISTSIZE': '999', 'HOME': '/usr/src', 'HOSTNAME': 'localhost.localdomain', - 'KPROPD_PORT': '61003', - 'KPROP_PORT': '61003', - 'KRB5CCNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/ccache', - 'KRB5RCACHEDIR': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir', - 'KRB5_CLIENT_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/client_keytab', - 'KRB5_CONFIG': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/krb5.conf', - 'KRB5_KDC_PROFILE': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/kdc.conf', - 'KRB5_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/keytab', + 'KPROPD_PORT': '62003', + 'KPROP_PORT': '62003', + 'KRB5CCNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/ccache', + 'KRB5RCACHEDIR': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2', + 'KRB5_CLIENT_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/client_keytab', + 'KRB5_CONFIG': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/krb5.conf', + 'KRB5_KDC_PROFILE': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/kdc.conf', + 'KRB5_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/keytab', 'LC_ALL': 'C', 'LD_LIBRARY_PATH': '/usr/src/RPM/BUILD/krb5-1.15.1/src/./lib', 'LESS': '-MM', [builder@localhost gssapi]$ diff -u 3 4 --- 3 2017-08-22 06:14:12.595500988 +0000 +++ 4 2017-08-22 06:14:30.855450647 +0000 @@ -5,14 +5,14 @@ 'HISTSIZE': '999', 'HOME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir', 'HOSTNAME': 'localhost.localdomain', - 'KPROPD_PORT': '61003', - 'KPROP_PORT': '61003', + 'KPROPD_PORT': '62003', + 'KPROP_PORT': '62003', 'KRB5CCNAME': 'DIR:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc', - 'KRB5RCACHEDIR': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir', - 'KRB5_CLIENT_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/client_keytab', - 'KRB5_CONFIG': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/krb5.conf', - 'KRB5_KDC_PROFILE': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/kdc.conf', - 'KRB5_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/keytab', + 'KRB5RCACHEDIR': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2', + 'KRB5_CLIENT_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/client_keytab', + 'KRB5_CONFIG': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/krb5.conf', + 'KRB5_KDC_PROFILE': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/kdc.conf', + 'KRB5_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/keytab', 'LC_ALL': 'C', 'LD_LIBRARY_PATH': '/usr/src/RPM/BUILD/krb5-1.15.1/src/./lib', 'LESS': '-MM', [builder@localhost gssapi]$ diff -u 12 34 --- 12 2017-08-22 06:08:51.778384891 +0000 +++ 34 2017-08-22 06:09:20.668305341 +0000 @@ -3,11 +3,11 @@ 'G_FILENAME_ENCODING': 'iso8859-1', 'HISTFILESIZE': '9999', 'HISTSIZE': '999', - 'HOME': '/usr/src', + 'HOME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir', 'HOSTNAME': 'localhost.localdomain', 'KPROPD_PORT': '61003', 'KPROP_PORT': '61003', - 'KRB5CCNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/ccache', + 'KRB5CCNAME': 'DIR:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc', 'KRB5RCACHEDIR': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir', 'KRB5_CLIENT_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/client_keytab', 'KRB5_CONFIG': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/krb5.conf', @@ -36,11 +36,11 @@ 'G_FILENAME_ENCODING': 'iso8859-1', 'HISTFILESIZE': '9999', 'HISTSIZE': '999', - 'HOME': '/usr/src', + 'HOME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir', 'HOSTNAME': 'localhost.localdomain', 'KPROPD_PORT': '62003', 'KPROP_PORT': '62003', - 'KRB5CCNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/ccache', + 'KRB5CCNAME': 'DIR:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc', 'KRB5RCACHEDIR': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2', 'KRB5_CLIENT_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/client_keytab', 'KRB5_CONFIG': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/krb5.conf', Полный вывод: [builder@localhost gssapi]$ PYTHONPATH=../../util VALGRIND="" python ./t_ccselect.py -v *** [1] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/dbutil/kdb5_util create -W -s -P master Loading random data Initializing database '/var/lib/kerberos/krb5kdc/principal' for realm 'KRBTEST.COM', master key name 'K/M@KRBTEST.COM' *** [1] Completed with return code 0 *** [2] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/cli/kadmin.local addprinc -randkey host/localhost.localdomain@KRBTEST.COM *** [2] Completed with return code 0 *** [3] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/cli/kadmin.local ktadd -k /usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/keytab -norandkey host/localhost.localdomain@KRBTEST.COM Entry for principal host/localhost.localdomain@KRBTEST.COM with kvno 1, encryption type aes256-cts-hmac-sha1-96 added to keytab WRFILE:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/keytab. Entry for principal host/localhost.localdomain@KRBTEST.COM with kvno 1, encryption type aes128-cts-hmac-sha1-96 added to keytab WRFILE:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/keytab. *** [3] Completed with return code 0 *** [4] Starting: /usr/src/RPM/BUILD/krb5-1.15.1/src/kdc/krb5kdc -n krb5kdc: starting... *** [4] Started with pid 31664 *** [5] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/dbutil/kdb5_util create -W -s -P master Loading random data Initializing database '/var/lib/kerberos/krb5kdc/principal' for realm 'KRBTEST2.COM', master key name 'K/M@KRBTEST2.COM' *** [5] Completed with return code 0 *** [6] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/cli/kadmin.local addprinc -randkey host/localhost.localdomain@KRBTEST2.COM *** [6] Completed with return code 0 *** [7] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/cli/kadmin.local ktadd -k /usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/keytab -norandkey host/localhost.localdomain@KRBTEST2.COM Entry for principal host/localhost.localdomain@KRBTEST2.COM with kvno 1, encryption type aes256-cts-hmac-sha1-96 added to keytab WRFILE:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/keytab. Entry for principal host/localhost.localdomain@KRBTEST2.COM with kvno 1, encryption type aes128-cts-hmac-sha1-96 added to keytab WRFILE:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/keytab. *** [7] Completed with return code 0 *** [8] Starting: /usr/src/RPM/BUILD/krb5-1.15.1/src/kdc/krb5kdc -n krb5kdc: starting... *** [8] Started with pid 31668 {'BASH_ENV': '/usr/src/.bashrc', 'G_BROKEN_FILENAMES': '1', 'G_FILENAME_ENCODING': 'iso8859-1', 'HISTFILESIZE': '9999', 'HISTSIZE': '999', 'HOME': '/usr/src', 'HOSTNAME': 'localhost.localdomain', 'KPROPD_PORT': '61003', 'KPROP_PORT': '61003', 'KRB5CCNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/ccache', 'KRB5RCACHEDIR': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir', 'KRB5_CLIENT_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/client_keytab', 'KRB5_CONFIG': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/krb5.conf', 'KRB5_KDC_PROFILE': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/kdc.conf', 'KRB5_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/keytab', 'LC_ALL': 'C', 'LD_LIBRARY_PATH': '/usr/src/RPM/BUILD/krb5-1.15.1/src/./lib', 'LESS': '-MM', 'LESSKEY': '/etc/.less', 'LESSOPEN': '|/usr/share/less/lesspipe.sh %s', 'LOGNAME': 'builder', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.sh=01;32:*.csh=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'MAIL': '/var/mail/builder', 'OLDPWD': '/usr/src/RPM/BUILD/krb5-1.15.1', 'PATH': '/usr/src/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games', 'PWD': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi', 'PYTHONPATH': '../../util', 'SHLVL': '1', 'TERM': 'xterm-256color', 'TMPDIR': '/usr/src/tmp', 'USER': 'builder', 'VALGRIND': '', '_': '/usr/bin/python'} {'BASH_ENV': '/usr/src/.bashrc', 'G_BROKEN_FILENAMES': '1', 'G_FILENAME_ENCODING': 'iso8859-1', 'HISTFILESIZE': '9999', 'HISTSIZE': '999', 'HOME': '/usr/src', 'HOSTNAME': 'localhost.localdomain', 'KPROPD_PORT': '62003', 'KPROP_PORT': '62003', 'KRB5CCNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/ccache', 'KRB5RCACHEDIR': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2', 'KRB5_CLIENT_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/client_keytab', 'KRB5_CONFIG': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/krb5.conf', 'KRB5_KDC_PROFILE': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/kdc.conf', 'KRB5_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/keytab', 'LC_ALL': 'C', 'LD_LIBRARY_PATH': '/usr/src/RPM/BUILD/krb5-1.15.1/src/./lib', 'LESS': '-MM', 'LESSKEY': '/etc/.less', 'LESSOPEN': '|/usr/share/less/lesspipe.sh %s', 'LOGNAME': 'builder', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.sh=01;32:*.csh=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'MAIL': '/var/mail/builder', 'OLDPWD': '/usr/src/RPM/BUILD/krb5-1.15.1', 'PATH': '/usr/src/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games', 'PWD': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi', 'PYTHONPATH': '../../util', 'SHLVL': '1', 'TERM': 'xterm-256color', 'TMPDIR': '/usr/src/tmp', 'USER': 'builder', 'VALGRIND': '', '_': '/usr/bin/python'} *** [9] Executing: ./t_ccselect p:host/localhost.localdomain@KRBTEST.COM - gss_acquire_cred: Unspecified GSS failure. Minor code may provide more information gss_acquire_cred: No Kerberos credentials available (default cache: /usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/ccache) *** [9] Completed with return code 1 *** [10] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/cli/kadmin.local addprinc -pw alice31660 alice@KRBTEST.COM *** [10] Completed with return code 0 *** [11] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/cli/kadmin.local addprinc -pw bob31660 bob@KRBTEST.COM *** [11] Completed with return code 0 *** [12] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/cli/kadmin.local addprinc -pw zaphod31660 zaphod@KRBTEST2.COM *** [12] Completed with return code 0 *** [13] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/cli/kadmin.local addprinc -randkey host/localhost *** [13] Completed with return code 0 *** [14] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/cli/kadmin.local addprinc -randkey host/localhost *** [14] Completed with return code 0 *** [15] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/cli/kadmin.local addprinc -randkey host/foo.krbtest.com *** [15] Completed with return code 0 *** [16] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/cli/kadmin.local addprinc -randkey host/foo.krbtest2.com *** [16] Completed with return code 0 *** [17] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/cli/kadmin.local ktadd -k /usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/keytab -norandkey host/localhost Entry for principal host/localhost with kvno 1, encryption type aes256-cts-hmac-sha1-96 added to keytab WRFILE:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/keytab. Entry for principal host/localhost with kvno 1, encryption type aes128-cts-hmac-sha1-96 added to keytab WRFILE:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/keytab. *** [17] Completed with return code 0 *** [18] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/cli/kadmin.local ktadd -k /usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/keytab -norandkey host/localhost Entry for principal host/localhost with kvno 1, encryption type aes256-cts-hmac-sha1-96 added to keytab WRFILE:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/keytab. Entry for principal host/localhost with kvno 1, encryption type aes128-cts-hmac-sha1-96 added to keytab WRFILE:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/keytab. *** [18] Completed with return code 0 *** [19] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/cli/kadmin.local ktadd -k /usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/keytab -norandkey host/foo.krbtest.com Entry for principal host/foo.krbtest.com with kvno 1, encryption type aes256-cts-hmac-sha1-96 added to keytab WRFILE:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/keytab. Entry for principal host/foo.krbtest.com with kvno 1, encryption type aes128-cts-hmac-sha1-96 added to keytab WRFILE:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/keytab. *** [19] Completed with return code 0 *** [20] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/kadmin/cli/kadmin.local ktadd -k /usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/keytab -norandkey host/foo.krbtest2.com Entry for principal host/foo.krbtest2.com with kvno 1, encryption type aes256-cts-hmac-sha1-96 added to keytab WRFILE:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/keytab. Entry for principal host/foo.krbtest2.com with kvno 1, encryption type aes128-cts-hmac-sha1-96 added to keytab WRFILE:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/keytab. *** [20] Completed with return code 0 *** [21] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/clients/kinit/kinit alice@KRBTEST.COM Password for alice@KRBTEST.COM: *** [21] Completed with return code 0 *** [22] Executing: /usr/src/RPM/BUILD/krb5-1.15.1/src/clients/kinit/kinit zaphod@KRBTEST2.COM Password for zaphod@KRBTEST2.COM: *** [22] Completed with return code 0 {'BASH_ENV': '/usr/src/.bashrc', 'G_BROKEN_FILENAMES': '1', 'G_FILENAME_ENCODING': 'iso8859-1', 'HISTFILESIZE': '9999', 'HISTSIZE': '999', 'HOME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir', 'HOSTNAME': 'localhost.localdomain', 'KPROPD_PORT': '61003', 'KPROP_PORT': '61003', 'KRB5CCNAME': 'DIR:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc', 'KRB5RCACHEDIR': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir', 'KRB5_CLIENT_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/client_keytab', 'KRB5_CONFIG': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/krb5.conf', 'KRB5_KDC_PROFILE': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/kdc.conf', 'KRB5_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/keytab', 'LC_ALL': 'C', 'LD_LIBRARY_PATH': '/usr/src/RPM/BUILD/krb5-1.15.1/src/./lib', 'LESS': '-MM', 'LESSKEY': '/etc/.less', 'LESSOPEN': '|/usr/share/less/lesspipe.sh %s', 'LOGNAME': 'builder', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.sh=01;32:*.csh=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'MAIL': '/var/mail/builder', 'OLDPWD': '/usr/src/RPM/BUILD/krb5-1.15.1', 'PATH': '/usr/src/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games', 'PWD': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi', 'PYTHONPATH': '../../util', 'SHLVL': '1', 'TERM': 'xterm-256color', 'TMPDIR': '/usr/src/tmp', 'USER': 'builder', 'VALGRIND': '', '_': '/usr/bin/python'} {'BASH_ENV': '/usr/src/.bashrc', 'G_BROKEN_FILENAMES': '1', 'G_FILENAME_ENCODING': 'iso8859-1', 'HISTFILESIZE': '9999', 'HISTSIZE': '999', 'HOME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir', 'HOSTNAME': 'localhost.localdomain', 'KPROPD_PORT': '62003', 'KPROP_PORT': '62003', 'KRB5CCNAME': 'DIR:/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/cc', 'KRB5RCACHEDIR': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2', 'KRB5_CLIENT_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/client_keytab', 'KRB5_CONFIG': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/krb5.conf', 'KRB5_KDC_PROFILE': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/kdc.conf', 'KRB5_KTNAME': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi/testdir/r2/keytab', 'LC_ALL': 'C', 'LD_LIBRARY_PATH': '/usr/src/RPM/BUILD/krb5-1.15.1/src/./lib', 'LESS': '-MM', 'LESSKEY': '/etc/.less', 'LESSOPEN': '|/usr/share/less/lesspipe.sh %s', 'LOGNAME': 'builder', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.sh=01;32:*.csh=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'MAIL': '/var/mail/builder', 'OLDPWD': '/usr/src/RPM/BUILD/krb5-1.15.1', 'PATH': '/usr/src/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games', 'PWD': '/usr/src/RPM/BUILD/krb5-1.15.1/src/tests/gssapi', 'PYTHONPATH': '../../util', 'SHLVL': '1', 'TERM': 'xterm-256color', 'TMPDIR': '/usr/src/tmp', 'USER': 'builder', 'VALGRIND': '', '_': '/usr/bin/python'} *** [23] Executing: ./t_ccselect p:host/localhost.localdomain@KRBTEST.COM p:alice@KRBTEST.COM alice@KRBTEST.COM *** [23] Completed with return code 0 *** [24] Executing: ./t_ccselect p:host/localhost.localdomain@KRBTEST2.COM p:zaphod@KRBTEST2.COM zaphod@KRBTEST2.COM *** [24] Completed with return code 0 *** [25] Executing: ./t_ccselect p:host/localhost.localdomain@KRBTEST.COM alice@KRBTEST.COM *** [25] Completed with return code 0 *** [26] Executing: ./t_ccselect p:host/localhost.localdomain@KRBTEST.COM - alice@KRBTEST.COM *** [26] Completed with return code 0 *** [27] Executing: ./t_ccselect p:host/localhost.localdomain@KRBTEST2.COM zaphod@KRBTEST2.COM *** [27] Completed with return code 0 *** [28] Executing: ./t_ccselect p:host/localhost.localdomain@KRBTEST2.COM - zaphod@KRBTEST2.COM *** [28] Completed with return code 0 *** [29] Executing: ./t_ccselect p:host/localhost.localdomain@ zaphod@KRBTEST2.COM *** [29] Completed with return code 0 *** [30] Executing: ./t_ccselect h:host@foo.krbtest2.com gss_init_sec_context: Unspecified GSS failure. Minor code may provide more information gss_init_sec_context: Cannot find KDC for realm "KRBTEST2.COM" *** [30] Completed with return code 1 *** [31] Executing: ./t_ccselect h:host@foo.krbtest.com alice@KRBTEST.COM *** [31] Completed with return code 0 *** [32] Executing: ./t_ccselect h:host@foo.krbtest2.com zaphod@KRBTEST2.COM *** [32] Completed with return code 0 *** [33] Executing: ./t_ccselect h:host@localhost gss_accept_sec_context: Unspecified GSS failure. Minor code may provide more information gss_accept_sec_context: Request ticket server host/localhost.localdomain@KRBTEST2.COM not found in keytab (ticket kvno 1) *** [33] Completed with return code 1 *** Failure: ./t_ccselect failed with code 1. *** Last command (#33): ./t_ccselect h:host@localhost *** Output of last command: gss_accept_sec_context: Unspecified GSS failure. Minor code may provide more information gss_accept_sec_context: Request ticket server host/localhost.localdomain@KRBTEST2.COM not found in keytab (ticket kvno 1) Use --debug=NUM to run a command under a debugger. Use --stop-after=NUM to stop after a daemon is started in order to attach to it with a debugger. Use --help to see other options. -- Sin (Sinelnikov Evgeny) ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-08-22 6:18 ` Evgeny Sinelnikov @ 2017-08-22 6:59 ` Alexander Bokovoy 2017-09-12 13:39 ` Evgeny Sinelnikov 0 siblings, 1 reply; 18+ messages in thread From: Alexander Bokovoy @ 2017-08-22 6:59 UTC (permalink / raw) To: ALT Linux Team development discussions On Tue, Aug 22, 2017 at 9:18 AM, Evgeny Sinelnikov <sin@altlinux.org> wrote: > 21 августа 2017 г., 8:53 пользователь Alexander Bokovoy > <ab@altlinux.org> написал: >> 2017-08-21 0:27 GMT+03:00 Evgeny Sinelnikov <sin@altlinux.org>: >> >>>> Можешь добавить дамп окружений до исполнения этого теста? >>> >>> Мне доступен chroot в hasher'е. Могу. Но что есть "дамп окружений" и >>> как его получить ? >> r1.env и r2.env в t_ccselect.py, это обычные хэши. >> import pprint >> pprint.pprint(r1.env) >> > > Внёс такую правку: > > [builder@localhost gssapi]$ diff -u t_ccselect.py.orig t_ccselect.py > --- t_ccselect.py.orig 2017-08-22 06:05:19.511969086 +0000 > +++ t_ccselect.py 2017-08-22 06:06:31.236771746 +0000 > @@ -23,6 +23,7 @@ > # or implied warranty. > > from k5test import * > +import pprint > > # Create two independent realms (no cross-realm TGTs). > r1 = K5Realm(create_user=False) > @@ -49,6 +50,9 @@ > # .k5identity rules since it has unknown type. > refserver = 'p:host/' + hostname + '@' > > +pprint.pprint(r1.env) > +pprint.pprint(r2.env) > + > # Verify that we can't get initiator creds with no credentials in the > # collection. > r1.run(['./t_ccselect', host1, '-'], expected_code=1, > @@ -86,6 +90,9 @@ > r1.kinit(alice, password('alice')) > r2.kinit(zaphod, password('zaphod')) > > +pprint.pprint(r1.env) > +pprint.pprint(r2.env) > + > # Check that we can find a cache for a specified client principal. > output = r1.run(['./t_ccselect', host1, 'p:' + alice]) > if output != (alice + '\n'): > > > Два раза вывожу env'ы: > - до начала теста (1 - для r1, 2 - для r2) > - сразу после kinit (3 - для r1, 4 - для r2) Спасибо. Я поговорю сегодня с Робби (мейнтейнер krb5 в Федоре). -- / Alexander Bokovoy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-08-22 6:59 ` Alexander Bokovoy @ 2017-09-12 13:39 ` Evgeny Sinelnikov 2017-09-12 21:09 ` Alexander Bokovoy 0 siblings, 1 reply; 18+ messages in thread From: Evgeny Sinelnikov @ 2017-09-12 13:39 UTC (permalink / raw) To: ALT Linux Team development discussions Здравствуйте, я заметил целый ряд новых патчей и пока не понял какие из них нам нужны. fedora-Add-KDC-policy-pluggable-interface/fedora-Add-KDC-policy-pluggable-interface.patch fedora-Add-KDC-policy-pluggable-interface/fedora-Add-timestamp-helper-functions.patch fedora-Add-KDC-policy-pluggable-interface/fedora-Add-timestamp-tests.patch fedora-Add-KDC-policy-pluggable-interface/fedora-Add-y2038-documentation.patch fedora-Add-KDC-policy-pluggable-interface/fedora-Allow-clock-skew-in-krb5-gss_context_time.patch fedora-Add-KDC-policy-pluggable-interface/fedora-Fix-bugs-in-kdcpolicy-commit.patch fedora-Add-KDC-policy-pluggable-interface/fedora-Fix-in_clock_skew-and-use-it-in-AS-client-code.patch fedora-Add-KDC-policy-pluggable-interface/fedora-Make-timestamp-manipulations-y2038-safe.patch fedora-Add-KDC-policy-pluggable-interface/fedora-Use-krb5_timestamp-where-appropriate.patch Make-certauth-eku-module-restrictive-only/fedora-Add-hostname-based-ccselect-module.patch Make-certauth-eku-module-restrictive-only/fedora-Add-PKINIT-test-case-for-generic-client-cert.patch Make-certauth-eku-module-restrictive-only/fedora-Add-test-cert-with-no-extensions.patch Make-certauth-eku-module-restrictive-only/fedora-Convert-some-pkiDebug-messages-to-TRACE-macros.patch Make-certauth-eku-module-restrictive-only/fedora-Fix-certauth-built-in-module-returns.patch fedora-Add-support-to-query-the-SSF-of-a-GSS-context.patch fedora-Preserve-GSS-context-on-init-accept-failure.patch fedora-Prevent-KDC-unset-status-assertion-failures.patch fedora-Remove-incomplete-PKINIT-OCSP-support.patch В них имеется исправление CVE-2017-11368, которое судя по всем нас не затрагивает (в этом я пока не разобрался) и KDC policy pluggable interface, который непонятно нужен ли нам. Его и дальше придётся тянуть из апстримного гита и патчей федоры. 2017-08-22 10:59 GMT+04:00 Alexander Bokovoy <ab@altlinux.org>: > On Tue, Aug 22, 2017 at 9:18 AM, Evgeny Sinelnikov <sin@altlinux.org> wrote: >> 21 августа 2017 г., 8:53 пользователь Alexander Bokovoy >> <ab@altlinux.org> написал: >>> 2017-08-21 0:27 GMT+03:00 Evgeny Sinelnikov <sin@altlinux.org>: >>> >>>>> Можешь добавить дамп окружений до исполнения этого теста? >>>> >>>> Мне доступен chroot в hasher'е. Могу. Но что есть "дамп окружений" и >>>> как его получить ? >>> r1.env и r2.env в t_ccselect.py, это обычные хэши. >>> import pprint >>> pprint.pprint(r1.env) >>> >> >> Внёс такую правку: >> >> [builder@localhost gssapi]$ diff -u t_ccselect.py.orig t_ccselect.py >> --- t_ccselect.py.orig 2017-08-22 06:05:19.511969086 +0000 >> +++ t_ccselect.py 2017-08-22 06:06:31.236771746 +0000 >> @@ -23,6 +23,7 @@ >> # or implied warranty. >> >> from k5test import * >> +import pprint >> >> # Create two independent realms (no cross-realm TGTs). >> r1 = K5Realm(create_user=False) >> @@ -49,6 +50,9 @@ >> # .k5identity rules since it has unknown type. >> refserver = 'p:host/' + hostname + '@' >> >> +pprint.pprint(r1.env) >> +pprint.pprint(r2.env) >> + >> # Verify that we can't get initiator creds with no credentials in the >> # collection. >> r1.run(['./t_ccselect', host1, '-'], expected_code=1, >> @@ -86,6 +90,9 @@ >> r1.kinit(alice, password('alice')) >> r2.kinit(zaphod, password('zaphod')) >> >> +pprint.pprint(r1.env) >> +pprint.pprint(r2.env) >> + >> # Check that we can find a cache for a specified client principal. >> output = r1.run(['./t_ccselect', host1, 'p:' + alice]) >> if output != (alice + '\n'): >> >> >> Два раза вывожу env'ы: >> - до начала теста (1 - для r1, 2 - для r2) >> - сразу после kinit (3 - для r1, 4 - для r2) > Спасибо. Я поговорю сегодня с Робби (мейнтейнер krb5 в Федоре). Я так и не понял чем здесь всё решилось. Вопрос, изначально, ставился так: >> При работе с ccache collection код использует тот реалм, который >> указан в имени принципала. Если он там отсутствует, то применяется >> тот, который указан в качестве умолчания в krb5.conf. >> >> Далее, если в krb5.conf есть dns_canonicalize_hostname=true, то >> localhost будет разрешен через getaddrinfo() и превратится в >> localhost.localdomain. >> Поскольку реалм не указан и прямого соответствия в domain_realm секции >> krb5.conf нет, то используется реалм по умолчанию. Хотя в коде указано так: retval = get_boolean(ctx, KRB5_CONF_DNS_CANONICALIZE_HOSTNAME, 1, &tmp); if (retval) goto cleanup; ctx->dns_canonicalize_hostname = tmp; То есть dns_canonicalize_hostname=true, по умолчанию, получается. Я так понял, что в федоре решили вопрос так: commit ccd78d8ee908015ca558e7428c27151cb1af5579 Author: Robbie Harwood <rharwood@redhat.com> Date: Wed Aug 2 17:02:46 2017 +0000 Disable dns_canonicalize_hostname. This may break some setups. diff --git a/krb5.conf b/krb5.conf index cf23f53..a588211 100644 --- a/krb5.conf +++ b/krb5.conf @@ -8,6 +8,7 @@ includedir /etc/krb5.conf.d/ admin_server = FILE:/var/log/kadmind.log [libdefaults] + dns_canonicalize_hostname = false dns_lookup_realm = false ticket_lifetime = 24h renew_lifetime = 7d diff --git a/krb5.spec b/krb5.spec index 1db9bdb..122aacf 100644 --- a/krb5.spec +++ b/krb5.spec @@ -18,7 +18,7 @@ Summary: The Kerberos network authentication system Name: krb5 Version: 1.15.1 # for prerelease, should be e.g., 0.3.beta2%{?dist} -Release: 19%{?dist} +Release: 20%{?dist} # - Maybe we should explode from the now-available-to-everybody tarball instead? # http://web.mit.edu/kerberos/dist/krb5/1.13/krb5-1.13.2-signed.tar # - The sources below are stored in a lookaside cache. Upload with @@ -520,13 +520,12 @@ rm -- "$RPM_BUILD_ROOT/%{_libdir}/krb5/plugins/preauth/test.so" %post libs -p /sbin/ldconfig -%triggerun libs -- krb5-libs < 1.15.1-5 -# Previously, there was logic to make this conditional in order to -# (effectively) allow for multiple triggers. However, RPM doesn't keep the -# database consistent during upgrades. -# -# When a second trigger is needed, this will be made unconditional. +%triggerun libs -- krb5-libs < 1.15.1-20 +if ! grep -q 'dns_canonicalize_hostname' /etc/krb5.conf ; then + sed -i 's/\[libdefaults\]/\[libdefaults\]\n dns_canonicalize_hostname = false/' /etc/krb5.conf +fi +# Correct trigger would be krb5-libs < 1.15.1-5 if ! grep -q 'includedir /etc/krb5.conf.d' /etc/krb5.conf ; then sed -i '1i # To opt out of the system crypto-policies configuration of krb5, remove the\n# symlink at /etc/krb5.conf.d/crypto-policies which will not be recreated.\nincludedir /etc/krb5.conf.d/\n' /etc/krb5.conf fi @@ -737,6 +736,9 @@ exit 0 %{_libdir}/libkadm5srv_mit.so.* %changelog +* Wed Aug 02 2017 Robbie Harwood <rharwood@redhat.com> - 1.15.1-20 +- Disable dns_canonicalize_hostname. This may break some setups. + * Wed Aug 02 2017 Robbie Harwood <rharwood@redhat.com> - 1.15.1-19 - Re-enable test suite on ppc64le (no other changes) -- Sin (Sinelnikov Evgeny) ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-09-12 13:39 ` Evgeny Sinelnikov @ 2017-09-12 21:09 ` Alexander Bokovoy 2017-09-12 21:22 ` Dmitry V. Levin 2017-09-13 0:24 ` Evgeny Sinelnikov 0 siblings, 2 replies; 18+ messages in thread From: Alexander Bokovoy @ 2017-09-12 21:09 UTC (permalink / raw) To: ALT Linux Team development discussions On Tue, Sep 12, 2017 at 4:39 PM, Evgeny Sinelnikov <sin@altlinux.org> wrote: > Здравствуйте, > > я заметил целый ряд новых патчей и пока не понял какие из них нам нужны. > > fedora-Add-KDC-policy-pluggable-interface/fedora-Add-KDC-policy-pluggable-interface.patch > fedora-Add-KDC-policy-pluggable-interface/fedora-Add-timestamp-helper-functions.patch > fedora-Add-KDC-policy-pluggable-interface/fedora-Add-timestamp-tests.patch > fedora-Add-KDC-policy-pluggable-interface/fedora-Add-y2038-documentation.patch > fedora-Add-KDC-policy-pluggable-interface/fedora-Allow-clock-skew-in-krb5-gss_context_time.patch > fedora-Add-KDC-policy-pluggable-interface/fedora-Fix-bugs-in-kdcpolicy-commit.patch > fedora-Add-KDC-policy-pluggable-interface/fedora-Fix-in_clock_skew-and-use-it-in-AS-client-code.patch > fedora-Add-KDC-policy-pluggable-interface/fedora-Make-timestamp-manipulations-y2038-safe.patch > fedora-Add-KDC-policy-pluggable-interface/fedora-Use-krb5_timestamp-where-appropriate.patch > > Make-certauth-eku-module-restrictive-only/fedora-Add-hostname-based-ccselect-module.patch > Make-certauth-eku-module-restrictive-only/fedora-Add-PKINIT-test-case-for-generic-client-cert.patch > Make-certauth-eku-module-restrictive-only/fedora-Add-test-cert-with-no-extensions.patch > Make-certauth-eku-module-restrictive-only/fedora-Convert-some-pkiDebug-messages-to-TRACE-macros.patch > Make-certauth-eku-module-restrictive-only/fedora-Fix-certauth-built-in-module-returns.patch > > fedora-Add-support-to-query-the-SSF-of-a-GSS-context.patch > fedora-Preserve-GSS-context-on-init-accept-failure.patch > fedora-Prevent-KDC-unset-status-assertion-failures.patch > fedora-Remove-incomplete-PKINIT-OCSP-support.patch > > В них имеется исправление CVE-2017-11368, которое судя по всем нас не > затрагивает (в этом я пока не разобрался) и KDC policy pluggable > interface, который непонятно нужен ли нам. Его и дальше придётся > тянуть из апстримного гита и патчей федоры. Я думаю, что мы можем обсудить это в Калуге. >>> - до начала теста (1 - для r1, 2 - для r2) >>> - сразу после kinit (3 - для r1, 4 - для r2) >> Спасибо. Я поговорю сегодня с Робби (мейнтейнер krb5 в Федоре). > > Я так и не понял чем здесь всё решилось. Вопрос, изначально, ставился так: > >>> При работе с ccache collection код использует тот реалм, который >>> указан в имени принципала. Если он там отсутствует, то применяется >>> тот, который указан в качестве умолчания в krb5.conf. >>> >>> Далее, если в krb5.conf есть dns_canonicalize_hostname=true, то >>> localhost будет разрешен через getaddrinfo() и превратится в >>> localhost.localdomain. >>> Поскольку реалм не указан и прямого соответствия в domain_realm секции >>> krb5.conf нет, то используется реалм по умолчанию. > > Хотя в коде указано так: > > retval = get_boolean(ctx, KRB5_CONF_DNS_CANONICALIZE_HOSTNAME, 1, &tmp); > if (retval) > goto cleanup; > ctx->dns_canonicalize_hostname = tmp; > > То есть dns_canonicalize_hostname=true, по умолчанию, получается. Я поговорил с Робби и он сказал, что многие тесты при сборке не запускаются. Это один из них. Связано это с тем, что в сборочной среде они не проходят, требуют больше, чем получается предоставить. У меня, например, при сборке в COPR недоступны хранение сессионных ключей в ядре (keyctl session, etc), поэтому приходится и вовсе отключать make check. > Я так понял, что в федоре решили вопрос так: > > commit ccd78d8ee908015ca558e7428c27151cb1af5579 > Author: Robbie Harwood <rharwood@redhat.com> > Date: Wed Aug 2 17:02:46 2017 +0000 > > Disable dns_canonicalize_hostname. This may break some setups. > Это другое. К сожалению, развязать использование CNAME и каноникализацию в рамках текущего кода в krb5 нельзя. Выключение каноникализации поломало целый ряд конфигураций, где сервисы были выписаны на реальные машины, а пользователи обращались к ресурсам, которые представляют собой CNAME к этим машинам. Например, www.example.com, где www.example.com -- CNAME для A-записи some.host.example.net. То есть, реальное имя сервиса -- HTTP/some.host.example.net. Порешили, что поправим каноникализацию так, чтобы CNAME резолвить можно было, а остальное -- нет. -- / Alexander Bokovoy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-09-12 21:09 ` Alexander Bokovoy @ 2017-09-12 21:22 ` Dmitry V. Levin 2017-09-12 21:45 ` Alexander Bokovoy 2017-09-13 0:24 ` Evgeny Sinelnikov 1 sibling, 1 reply; 18+ messages in thread From: Dmitry V. Levin @ 2017-09-12 21:22 UTC (permalink / raw) To: ALT Devel discussion list [-- Attachment #1: Type: text/plain, Size: 543 bytes --] On Wed, Sep 13, 2017 at 12:09:17AM +0300, Alexander Bokovoy wrote: [...] > Я поговорил с Робби и он сказал, что многие тесты при сборке не > запускаются. Это один из них. Связано это с тем, что в сборочной среде > они не проходят, требуют больше, чем получается предоставить. > У меня, например, при сборке в COPR недоступны хранение сессионных > ключей в ядре (keyctl session, etc), поэтому приходится и вовсе > отключать make check. Недоступно хранение сессионных ключей в ядре? А какая именно операция недоступна? -- ldv [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 801 bytes --] ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-09-12 21:22 ` Dmitry V. Levin @ 2017-09-12 21:45 ` Alexander Bokovoy 0 siblings, 0 replies; 18+ messages in thread From: Alexander Bokovoy @ 2017-09-12 21:45 UTC (permalink / raw) To: ALT Linux Team development discussions 2017-09-13 0:22 GMT+03:00 Dmitry V. Levin <ldv@altlinux.org>: > On Wed, Sep 13, 2017 at 12:09:17AM +0300, Alexander Bokovoy wrote: > [...] >> Я поговорил с Робби и он сказал, что многие тесты при сборке не >> запускаются. Это один из них. Связано это с тем, что в сборочной среде >> они не проходят, требуют больше, чем получается предоставить. >> У меня, например, при сборке в COPR недоступны хранение сессионных >> ключей в ядре (keyctl session, etc), поэтому приходится и вовсе >> отключать make check. > > Недоступно хранение сессионных ключей в ядре? > А какая именно операция недоступна? https://copr-be.cloud.fedoraproject.org/results/@freeipa/freeipa-master/fedora-26-x86_64/00599083-krb5/build.log.gz Это скорее всего настройки seccomp в COPR или что-то похожее. make: Leaving directory '/builddir/build/BUILD/krb5-1.15.1/src' make: Leaving directory '/builddir/build/BUILD/krb5-1.15.1/src' + : make -C src check TMPDIR=/var/tmp + : make -C src check TMPDIR=/var/tmp + keyctl session - make -C src/lib check TMPDIR=/var/tmp OFFLINE=yes + keyctl session - make -C src/lib check TMPDIR=/var/tmp OFFLINE=yes keyctl_join_session_keyring: Operation not permitted keyctl_join_session_keyring: Operation not permitted RPM build errors: RPM build errors: error: Bad exit status from /var/tmp/rpm-tmp.HUdhyr (%check) error: Bad exit status from /var/tmp/rpm-tmp.HUdhyr (%check) Bad exit status from /var/tmp/rpm-tmp.HUdhyr (%check) Bad exit status from /var/tmp/rpm-tmp.HUdhyr (%check) Child return code was: 1 Child return code was: 1 -- / Alexander Bokovoy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-09-12 21:09 ` Alexander Bokovoy 2017-09-12 21:22 ` Dmitry V. Levin @ 2017-09-13 0:24 ` Evgeny Sinelnikov 2017-09-13 5:51 ` Alexander Bokovoy 1 sibling, 1 reply; 18+ messages in thread From: Evgeny Sinelnikov @ 2017-09-13 0:24 UTC (permalink / raw) To: ALT Linux Team development discussions 13 сентября 2017 г., 1:09 пользователь Alexander Bokovoy <ab@altlinux.org> написал: > On Tue, Sep 12, 2017 at 4:39 PM, Evgeny Sinelnikov <sin@altlinux.org> wrote: >> Здравствуйте, >> >> я заметил целый ряд новых патчей и пока не понял какие из них нам нужны. >> >> fedora-Add-KDC-policy-pluggable-interface/fedora-Add-KDC-policy-pluggable-interface.patch >> fedora-Add-KDC-policy-pluggable-interface/fedora-Add-timestamp-helper-functions.patch >> fedora-Add-KDC-policy-pluggable-interface/fedora-Add-timestamp-tests.patch >> fedora-Add-KDC-policy-pluggable-interface/fedora-Add-y2038-documentation.patch >> fedora-Add-KDC-policy-pluggable-interface/fedora-Allow-clock-skew-in-krb5-gss_context_time.patch >> fedora-Add-KDC-policy-pluggable-interface/fedora-Fix-bugs-in-kdcpolicy-commit.patch >> fedora-Add-KDC-policy-pluggable-interface/fedora-Fix-in_clock_skew-and-use-it-in-AS-client-code.patch >> fedora-Add-KDC-policy-pluggable-interface/fedora-Make-timestamp-manipulations-y2038-safe.patch >> fedora-Add-KDC-policy-pluggable-interface/fedora-Use-krb5_timestamp-where-appropriate.patch >> >> Make-certauth-eku-module-restrictive-only/fedora-Add-hostname-based-ccselect-module.patch >> Make-certauth-eku-module-restrictive-only/fedora-Add-PKINIT-test-case-for-generic-client-cert.patch >> Make-certauth-eku-module-restrictive-only/fedora-Add-test-cert-with-no-extensions.patch >> Make-certauth-eku-module-restrictive-only/fedora-Convert-some-pkiDebug-messages-to-TRACE-macros.patch >> Make-certauth-eku-module-restrictive-only/fedora-Fix-certauth-built-in-module-returns.patch >> >> fedora-Add-support-to-query-the-SSF-of-a-GSS-context.patch >> fedora-Preserve-GSS-context-on-init-accept-failure.patch >> fedora-Prevent-KDC-unset-status-assertion-failures.patch >> fedora-Remove-incomplete-PKINIT-OCSP-support.patch >> >> В них имеется исправление CVE-2017-11368, которое судя по всем нас не >> затрагивает (в этом я пока не разобрался) и KDC policy pluggable >> interface, который непонятно нужен ли нам. Его и дальше придётся >> тянуть из апстримного гита и патчей федоры. > Я думаю, что мы можем обсудить это в Калуге. > >>>> - до начала теста (1 - для r1, 2 - для r2) >>>> - сразу после kinit (3 - для r1, 4 - для r2) >>> Спасибо. Я поговорю сегодня с Робби (мейнтейнер krb5 в Федоре). >> >> Я так и не понял чем здесь всё решилось. Вопрос, изначально, ставился так: >> >>>> При работе с ccache collection код использует тот реалм, который >>>> указан в имени принципала. Если он там отсутствует, то применяется >>>> тот, который указан в качестве умолчания в krb5.conf. >>>> >>>> Далее, если в krb5.conf есть dns_canonicalize_hostname=true, то >>>> localhost будет разрешен через getaddrinfo() и превратится в >>>> localhost.localdomain. >>>> Поскольку реалм не указан и прямого соответствия в domain_realm секции >>>> krb5.conf нет, то используется реалм по умолчанию. >> >> Хотя в коде указано так: >> >> retval = get_boolean(ctx, KRB5_CONF_DNS_CANONICALIZE_HOSTNAME, 1, &tmp); >> if (retval) >> goto cleanup; >> ctx->dns_canonicalize_hostname = tmp; >> >> То есть dns_canonicalize_hostname=true, по умолчанию, получается. > Я поговорил с Робби и он сказал, что многие тесты при сборке не > запускаются. Это один из них. Связано это с тем, что в сборочной среде > они не проходят, требуют больше, чем получается предоставить. > У меня, например, при сборке в COPR недоступны хранение сессионных > ключей в ядре (keyctl session, etc), поэтому приходится и вовсе > отключать make check. > >> Я так понял, что в федоре решили вопрос так: >> >> commit ccd78d8ee908015ca558e7428c27151cb1af5579 >> Author: Robbie Harwood <rharwood@redhat.com> >> Date: Wed Aug 2 17:02:46 2017 +0000 >> >> Disable dns_canonicalize_hostname. This may break some setups. >> > Это другое. К сожалению, развязать использование CNAME и > каноникализацию в рамках текущего кода в krb5 нельзя. Выключение > каноникализации поломало целый ряд конфигураций, где сервисы были > выписаны на реальные машины, а пользователи обращались к ресурсам, > которые представляют собой CNAME к этим машинам. Например, > www.example.com, где www.example.com -- CNAME для A-записи > some.host.example.net. То есть, реальное имя сервиса -- > HTTP/some.host.example.net. > > Порешили, что поправим каноникализацию так, чтобы CNAME резолвить > можно было, а остальное -- нет. Что-то мне расхотелость применять у нас dns_canonicalize_hostname = false, как в Fedora, по умолчанию, да ещё и по триггеру в старые установки. У меня тоже CNAME сломаются. Да и есть ли в этом резон? Да, Add-KDC-policy-pluggable-interface патчи для FreeIPA понадобятся? И выпиливания вот эти: - Make-certauth-eku-module-restrictive-only/ - fedora-Remove-incomplete-PKINIT-OCSP-support тоже, не знаю зачем тащить? -- Sin (Sinelnikov Evgeny) ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [devel] Обновление до krb5-1.15.1 2017-09-13 0:24 ` Evgeny Sinelnikov @ 2017-09-13 5:51 ` Alexander Bokovoy 0 siblings, 0 replies; 18+ messages in thread From: Alexander Bokovoy @ 2017-09-13 5:51 UTC (permalink / raw) To: ALT Linux Team development discussions 2017-09-13 3:24 GMT+03:00 Evgeny Sinelnikov <sin@altlinux.org>: >>> Disable dns_canonicalize_hostname. This may break some setups. >>> >> Это другое. К сожалению, развязать использование CNAME и >> каноникализацию в рамках текущего кода в krb5 нельзя. Выключение >> каноникализации поломало целый ряд конфигураций, где сервисы были >> выписаны на реальные машины, а пользователи обращались к ресурсам, >> которые представляют собой CNAME к этим машинам. Например, >> www.example.com, где www.example.com -- CNAME для A-записи >> some.host.example.net. То есть, реальное имя сервиса -- >> HTTP/some.host.example.net. >> >> Порешили, что поправим каноникализацию так, чтобы CNAME резолвить >> можно было, а остальное -- нет. > > Что-то мне расхотелость применять у нас dns_canonicalize_hostname = > false, как в Fedora, по умолчанию, да ещё и по триггеру в старые > установки. У меня тоже CNAME сломаются. Да и есть ли в этом резон? > > Да, Add-KDC-policy-pluggable-interface патчи для FreeIPA понадобятся? > > И выпиливания вот эти: > - Make-certauth-eku-module-restrictive-only/ > - fedora-Remove-incomplete-PKINIT-OCSP-support > тоже, не знаю зачем тащить? Все эти PKINIT-связанные патчи нужны. Каноникализацию лучше не менять пока что, да. -- / Alexander Bokovoy ^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2017-09-13 5:51 UTC | newest] Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2017-07-14 18:47 [devel] Обновление до krb5-1.15.1 Evgeny Sinelnikov 2017-07-17 12:49 ` Alexander Bokovoy 2017-08-20 3:20 ` Evgeny Sinelnikov 2017-08-20 5:08 ` Alexander Bokovoy 2017-08-20 10:16 ` Evgeny Sinelnikov 2017-08-20 10:24 ` Evgeny Sinelnikov 2017-08-20 11:46 ` Dmitry V. Levin 2017-08-20 15:19 ` Alexander Bokovoy 2017-08-20 21:27 ` Evgeny Sinelnikov 2017-08-21 4:53 ` Alexander Bokovoy 2017-08-22 6:18 ` Evgeny Sinelnikov 2017-08-22 6:59 ` Alexander Bokovoy 2017-09-12 13:39 ` Evgeny Sinelnikov 2017-09-12 21:09 ` Alexander Bokovoy 2017-09-12 21:22 ` Dmitry V. Levin 2017-09-12 21:45 ` Alexander Bokovoy 2017-09-13 0:24 ` Evgeny Sinelnikov 2017-09-13 5:51 ` Alexander Bokovoy
ALT Linux Team development discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \ devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru public-inbox-index devel Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.devel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git