Kerberos를 사용한 SSH 비밀번호 없는 로그인

Kerberos를 사용한 SSH 비밀번호 없는 로그인

Kerberos 인증을 사용한 로그인만 지원하는 서버에 로그인하려고 합니다. 이것이 내가 시도한 것입니다:

kinit [email protected]
aklog -c foo.org
ssh server

그런데 내 비밀번호를 물어보더군요.

내 항목은 다음과 같습니다 ~/.ssh/config( server내 항목 /etc/ssh/ssh_config은 비어 있음).

Host server
    HostName someserver.foo.org
    User user
    ForwardX11 yes
    ForwardX11Trusted yes
    GSSAPIAuthentication yes
    GSSAPIDelegateCredentials yes

동료들에 따르면 이(또는 유사한 것)가 그들에게 효과적이라고 합니다. Kerberos 토큰을 사용하여 다른 컴퓨터에 로그인할 수 있습니다. 내 생각엔 이것이 나와 관련이 있는 것 /etc/krb5.conf같은데 무엇을 찾아야 할지 모르겠습니다. /etc/krb5.conf서버에서 내 워크스테이션으로 복사하려고 시도했지만 성공하지 못했습니다.

이것은 실행할 때 출력의 일부입니다 ssh -vvv server.

debug1: Next authentication method: gssapi-with-mic
debug1: Unspecified GSS failure.  Minor code may provide more information
Server not found in Kerberos database

debug1: Unspecified GSS failure.  Minor code may provide more information
Server not found in Kerberos database

debug1: Unspecified GSS failure.  Minor code may provide more information


debug2: we sent a gssapi-with-mic packet, wait for reply

로컬 Kerberos 토큰을 사용하여 로그인하는 방법은 무엇입니까? 내가 뭘 잘못했나요?

답변1

시스템 자체에 대한 주체를 생성하여 kerberos 데이터베이스(KDC라고도 함)에 서버를 추가해야 할 수도 있습니다.

KDC를 사용하여 Windows Active Directory를 실행하는 경우 ktpass.exe를 사용하여 KDC에 호스트를 추가할 수 있습니다.

Windows 또는 Linux Kerberos KDC를 실행 중인 경우 Linux 셸에서 ktutil 명령을 사용하여 Kerberos 데이터베이스의 주체에 액세스할 수 있습니다.

답변2

NTPD 서비스가 다운되었을 수 있습니다. 적어도 제 경우에는 상태를 확인할 때 서비스가 실패했고 로그에 PANIC_STOP이 있었습니다. 다음 단계를 시도해 보세요.

  1. systemctl stop ntpd
  2. systemctl status ntpd
  3. 서버 중 하나에 유의하세요./etc/ntpd.conf
  4. ntpdate <ABOVE SERVER>
  5. systemctl start ntpd

관련 정보