From: Alexander Bokovoy <ab@altlinux.org> To: ALT Linux Team development discussions <devel@lists.altlinux.org> Subject: Re: [devel] Обновление до krb5-1.15.1 Date: Sun, 20 Aug 2017 18:19:51 +0300 Message-ID: <CAG0OwAHtUn8Yd_e0CcNesBKM5=CAxKK-V2CZJgLCUUzFAB3fkA@mail.gmail.com> (raw) In-Reply-To: <CAK42-Gqga4s783=3mqOQDMoMdbLCtRpWsoAa1bRPQgJesKmNWw@mail.gmail.com> 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
next prev parent reply other threads:[~2017-08-20 15:19 UTC|newest] Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-07-14 18:47 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 [this message] 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
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to='CAG0OwAHtUn8Yd_e0CcNesBKM5=CAxKK-V2CZJgLCUUzFAB3fkA@mail.gmail.com' \ --to=ab@altlinux.org \ --cc=devel@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
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