SSH 사용자가 Kerberos를 통해 인증되지 않음

SSH 사용자가 Kerberos를 통해 인증되지 않음

내 우분투 컴퓨터에 Kerberos를 설정했고 kinit다른 Fedora Linux 클라이언트 컴퓨터에서 사용자를 위한 티켓을 얻을 수 있습니다.

그러나 sshd 디버그 로그에 오류가 발생하면 그것이 무엇을 의미하는지 전혀 모릅니다.

debug1: userauth-request for user user1 service ssh-connection method gssapi-with-mic [preauth]
debug1: attempt 1 failures 0 [preauth]
Postponed gssapi-with-mic for user1 from 10.87.198.85 port 55360 ssh2 [preauth]
debug1: Unspecified GSS failure.  Minor code may provide more information
Request ticket server host/[email protected] found in keytab but does not match server principal host/sat.com@

debug1: Got no client credentials
debug1: userauth-request for user user1 service ssh-connection method gssapi-with-mic [preauth]
debug1: attempt 2 failures 1 [preauth]

내 sshd와 KDC는 아래 구성으로 동일한 시스템에서 실행되고 있습니다.

krb5.conf의 주요 구성 요소:

[libdefaults]
        default_realm = SAT.COM

[realms]
        SAT.COM = {
                kdc = kdc.sat.com
                admin_server = kdc.sat.com
        }

내 /etc/hosts 파일:

127.0.0.1       localhost
10.125.222.30   kdc.sat.com


# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

내 KDC의 교장은 다음과 같습니다.

kadmin:  listprincs 
K/[email protected]
host/[email protected]
host/[email protected]
kadmin/[email protected]
kadmin/[email protected]
kadmin/[email protected]
kiprop/[email protected]
krbtgt/[email protected]
satyam/[email protected]
[email protected]

Fedora 클라이언트에서 초기 kinit를 수행하면 아래와 같은 티켓이 하나만 생성됩니다.

[user1@satyam ~]$ kinit 
Password for [email protected]: 
[user1@satyam ~]$ klist 
Ticket cache: KCM:1001
Default principal: [email protected]

Valid starting       Expires              Service principal
09/24/2019 19:32:46  09/25/2019 05:32:46  krbtgt/[email protected]
    renew until 10/01/2019 19:32:41

그러나 KDC 서버와 동일한 sshd 서버에 ssh를 수행하자마자 내 klist에 더 많은 항목이 있습니다.

[user1@satyam ~]$ ssh kdc.sat.com
Ubuntu 16.04.1 LTS Satyam
[email protected]'s password: 

    [satyam@satyam ~]$ klist 
Ticket cache: KCM:1000
Default principal: [email protected]

Valid starting       Expires              Service principal
09/24/2019 19:44:59  09/25/2019 05:41:14  host/kdc.sat.com@
    renew until 10/01/2019 19:41:10
09/24/2019 19:41:14  09/25/2019 05:41:14  krbtgt/[email protected]
    renew until 10/01/2019 19:41:10
09/24/2019 19:44:59  09/25/2019 05:41:14  host/[email protected]
    renew until 10/01/2019 19:41:10

또한 주요 호스트/[이메일 보호됨]이전에 추가되지 않았지만 sshd에서 아래 오류가 발생하여 추가하려고 시도했지만 여전히 운이 없습니다.

No key table entry found matching host/sat.com@

이에 관한 도움이 매우 도움이 될 것입니다.

답변1

나는 온라인 인터넷 검색을 많이하고 있었고 어떻게 든 문제를 해결 한 구성 매개 변수 아래를 찾았습니다.

내가 사용한 매개변수:

[libdefaults]
    ignore_acceptor_hostname = true

https://stackoverflow.com/questions/14687245/apache-sends-wrong-server-principal-name-to-kerberos

위의 SO 스레드에는 설명이 있지만 여전히 작동 방식과 문제가 무엇인지 잘 이해하지 못했습니다.

이 구성 매개변수가 내 문제를 어떻게 해결했는지 설명할 수 있는 사람이 있다면 알려주시기 바랍니다.

관련 정보