Arch의 SSH 및 GSSAPITrustDns

Arch의 SSH 및 GSSAPITrustDns

비밀번호 없이 원격 서버에 SSH를 통해 연결하도록 컴퓨터를 설정하려고 합니다. 나는 팔로우하고 있다이 지침, 그러나 문제가 발생했습니다.

나는 성공적으로 달릴 수 있다

kinit -f [email protected]

Kerberos 티켓이 보입니다.

klist -f

유효기간은 1일인데, 있어요(매일 업데이트 해야 하나요? 미래의 나에 대한 질문입니다).

현재 문제는 이 ~/.ssh/config파일에 있습니다:

HOST lxplus*
    GSSAPITrustDns yes
    GSSAPIAuthentication yes
    GSSAPIDelegateCredentials yes

오류가 발생합니다.

/home/me/.ssh/config: line 6: Bad configuration option: gssapitrustdns
/home/me/.ssh/config: terminating, 1 bad configuration options

따라서 분명히 이것은 GSSAPITrustDns사용할 수 없습니다.

나는 실행 중입니다 :

[me@frankenstein ~]$ uname -srm
Linux 5.17.1-arch1-1 x86_64

이 문제를 어떻게 해결할 수 있나요?

답변1

/etc/krb5.conf내 파일에 다음을 추가하여 문제를 해결했습니다.

[libdefaults]
    rdns = false

누군가 이런 일이 발생하는 이유를 설명할 수 있거나 더 나은 해결책이 있다면 좋을 것입니다.

답변2

따라서 분명히 이것은 GSSAPITrustDns사용할 수 없습니다.

실제로 표준 OpenSSH의 일부가 아닌 여러 GSSAPI 옵션이 포함되어 있습니다 GSSAPITrustDns. 이는 다운스트림 패치에 의해 추가되었으므로 Debian/Ubuntu(그리고 아마도 Fedora/RHEL)에서만 사용할 수 있는 반면 Arch는 OpenSSH 패치를 가장 낮은 수준으로 유지합니다.

내가 아는 한, GSSAPITrustDns그것은 다소 동등 [libdefaults] rdns =하며 어떤 경우에도 rDNS 사용은활성화됨현재 MIT Krb5 버전에서는 기본적으로. CERN 문서에서는 SSH에 대해 이 옵션을 활성화하라고만 요구하는 것 같습니다.장애를 입히다 rdns전역 /etc/krb5.conf에 있습니다. (AD Kerberos를 사용하고 있기 때문에 그것이 의미가 있다고 생각합니까?)

첫 번째 예를 참고하세요(SSH 옵션)만들다rDNS 사용법과 나만의 답변장애를 입히다내가 보기엔 좋아하는 것 같아당신이 달성하려는 것과 반대되는 것"이것이 작동한다"라고 말하는 이유가 무엇인지 잘 모르겠습니다.

유효기간은 1일인데, 있어요(매일 업데이트 해야 하나요? 미래의 나에 대한 질문입니다).

이는 Kerberos 티켓의 경우 정상적인 현상입니다. 기본적으로 kinit매일 다시 수행 해야 합니다 .

kinit -r 7d일반적으로 다음 을 사용할 수 있습니다.업데이트됨최대 7일 동안 비밀번호가 필요하지 않습니다(기존 티켓을 새 티켓으로 교체) kinit -R. 영역 관리자가 가능한 갱신 시간을 조정했을 수 있습니다. 더 짧거나 비활성화된 경우 KDC는 자동으로 갱신 시간을 최대값으로 제한합니다. 시간이 있으니 klist나중에 확인해주세요.

krenew도구(AUR에 있음 "시작하다"패키지)는 cronjob을 예약하는 것보다 더 현명한 대안으로 백그라운드에서 티켓을 새로 고치는 데 사용할 수 있습니다 kinit -R.

동일한 패키지에는 k5start매우 유사하게 작동하는 도구가 포함되어 있지만 다음에서 다운로드할 수도 있습니다.키탭– 디스크에 비밀번호를 저장할 수 있는 경우 Kerberos에서는 일반적으로 해시된 비밀번호 형식을 포함하고 kinit(또는 k5start)와 함께 사용할 수 있는 “keytab” 파일을 생성하여 수행됩니다.

사용자 키탭은 를 사용하여 생성할 수 있습니다 ktutil. (서비스 자격 증명 대신 사용자 자격 증명을 보유한다는 점을 제외하면 /etc/krb5.keytab의 keytab과 동일합니다.아니요동일한 도구를 사용하여 얻었습니다. "msktutil" 및 "cern-get-keytab" 도구는 작동하지 않습니다. )

$ktutil
ktutil:plus-password-p[이메일 보호됨]-k 0 -f
ktutil:wkt foo.keytab
$ kinit -k -t foo.keytab

KRB5_CLIENT_KTNAME사용자 키 탭 사용이 허용된 경우 최신 버전의 MIT Krb5에서 바로 사용할 수 있습니다. 환경 변수를 키 탭 경로로 설정하기 만 하면 GSSAPI를 사용하는 프로그램이 자동으로 키 탭 경로를 가져오거나 새로 고칩니다. 필요에 따라 티켓 - 사용할 필요도 없고 사용할 필요도 kinit없습니다 k5start.

관련 정보