ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Evgeny Sinelnikov <sin@altlinux.org>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: Re: [devel] Обновление до krb5-1.15.1
Date: Sun, 20 Aug 2017 14:24:29 +0400
Message-ID: <CAK42-GpOrBrOTL13ph-MqwOC6L11aYkkhpMBte9mfoz0H5criQ@mail.gmail.com> (raw)
In-Reply-To: <CAK42-Gqga4s783=3mqOQDMoMdbLCtRpWsoAa1bRPQgJesKmNWw@mail.gmail.com>

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)

  reply	other threads:[~2017-08-20 10:24 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 [this message]
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

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=CAK42-GpOrBrOTL13ph-MqwOC6L11aYkkhpMBte9mfoz0H5criQ@mail.gmail.com \
    --to=sin@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