OpenSSH 호스트 기반 인증 - mm_answer_keyallowed: 키 0x58c400이 허용되지 않습니다.

OpenSSH 호스트 기반 인증 - mm_answer_keyallowed: 키 0x58c400이 허용되지 않습니다.

소규모 호스트 하위 집합에 대해 호스트 기반 인증을 설정하려고 합니다. 내 생각에 나는 모든 오리를 연속으로 가지고 있다고 생각합니다.

  • 공개 키를 파일에 복사했습니다 /etc/ssh/ssh_known_hosts.
  • 모든 호스트를/etc/shosts.equiv
  • HostbasedAuthentication다음 에서 활성화됨 /etc/ssh/sshd_config:/etc/ssh/ssh_config
  • 바이너리 를 Setuid /usr/lib64/ssh/ssh-keysign하고 클라이언트의 파일 EnableSSHKeysign yes에 설정합니다./etc/ssh/ssh_config

그러나 여전히 작동하지 않습니다. 디버그 모드에서 서버를 실행하면 다음과 같은 출력이 표시됩니다.

debug1: attempt 0 failures 0
debug3: mm_getpwnamallow entering
debug3: mm_request_send entering: type 6
debug3: monitor_read: checking request 6
debug3: mm_answer_pwnamallow
debug3: Trying to reverse map address 10.3.128.10.
debug3: mm_getpwnamallow: waiting for MONITOR_ANS_PWNAM
debug3: mm_request_receive_expect entering: type 7
debug3: mm_request_receive entering
debug2: parse_server_config: config reprocess config len 137
debug3: mm_answer_pwnamallow: sending MONITOR_ANS_PWNAM: 1
debug3: mm_request_send entering: type 7
debug2: monitor_read: 6 used once, disabling now
debug3: mm_request_receive entering
debug2: input_userauth_request: setting up authctxt for kamil
debug3: mm_start_pam entering
debug3: mm_request_send entering: type 45
debug3: mm_inform_authserv entering
debug3: mm_request_send entering: type 3
debug2: input_userauth_request: try method none
debug3: monitor_read: checking request 45
debug1: PAM: initializing for "kamil"
debug1: PAM: setting PAM_RHOST to "foo.bar.com"
debug1: PAM: setting PAM_TTY to "ssh"
debug2: monitor_read: 45 used once, disabling now
debug3: mm_request_receive entering
debug3: monitor_read: checking request 3
debug3: mm_answer_authserv: service=ssh-connection, style=
debug2: monitor_read: 3 used once, disabling now
debug3: mm_request_receive entering
debug1: userauth-request for user kamil service ssh-connection method hostbased
debug1: attempt 1 failures 1
debug2: input_userauth_request: try method hostbased
debug1: userauth_hostbased: cuser kamil chost foo.bar.com. pkalg ssh-dss slen 55
debug3: mm_key_allowed entering
debug3: mm_request_send entering: type 20
debug3: monitor_read: checking request 20
debug3: mm_answer_keyallowed entering
debug3: mm_answer_keyallowed: key_from_blob: 0x58c400
debug2: userauth_hostbased: chost foo.bar.com. resolvedname foo.bar.com ipaddr 10.3.128.10
debug2: stripping trailing dot from chost foo.bar.com.
debug2: auth_rhosts2: clientuser kamil hostname foo.bar.com ipaddr 10.3.128.10
debug1: temporarily_use_uid: 1031/1028 (e=0/0)
debug3: mm_key_allowed: waiting for MONITOR_ANS_KEYALLOWED
debug3: mm_request_receive_expect entering: type 21
debug3: mm_request_receive entering
debug1: restore_uid: 0/0
debug1: temporarily_use_uid: 1031/1028 (e=0/0)
debug1: restore_uid: 0/0
Failed hostbased for kamil from 10.3.128.10 port 55105 ssh2
debug3: mm_answer_keyallowed: key 0x58c400 is disallowed
debug3: mm_request_send entering: type 21
debug3: mm_request_receive entering
debug2: userauth_hostbased: authenticated 0
debug1: userauth-request for user kamil service ssh-connection method hostbased
debug1: attempt 2 failures 2
debug2: input_userauth_request: try method hostbased
debug1: userauth_hostbased: cuser kamil chost foo.bar.com. pkalg ssh-rsa slen 143
debug3: mm_key_allowed entering
debug3: mm_request_send entering: type 20
debug3: monitor_read: checking request 20
debug3: mm_answer_keyallowed entering
debug3: mm_answer_keyallowed: key_from_blob: 0x58c400
debug2: userauth_hostbased: chost foo.bar.com. resolvedname foo.bar.com ipaddr 10.3.128.10
debug2: stripping trailing dot from chost foo.bar.com.
debug2: auth_rhosts2: clientuser kamil hostname foo.bar.com ipaddr 10.3.128.10
debug1: temporarily_use_uid: 1031/1028 (e=0/0)
debug1: restore_uid: 0/0
debug1: temporarily_use_uid: 1031/1028 (e=0/0)
debug1: restore_uid: 0/0
Failed hostbased for kamil from 10.3.128.10 port 55105 ssh2
debug3: mm_answer_keyallowed: key 0x58c400 is disallowed
debug3: mm_request_send entering: type 21
debug3: mm_request_receive entering
debug3: mm_key_allowed: waiting for MONITOR_ANS_KEYALLOWED
debug3: mm_request_receive_expect entering: type 21
debug3: mm_request_receive entering
debug2: userauth_hostbased: authenticated 0
debug1: userauth-request for user kamil service ssh-connection method keyboard-interactive
debug1: attempt 3 failures 3
debug2: input_userauth_request: try method keyboard-interactive

문제의 핵심은 다음과 같습니다.

debug3: mm_answer_keyallowed: key 0x58c400 is disallowed

아이디어?

답변1

EnableSSHKeysign클라이언트에서 활성화 했습니까 ? 그것은 호스트 기반 인증이 작동하도록 하는 데 필요한 또 다른 부분이었습니다.

답변2

알았어, 내 쪽에서는 큰 실패였어. 나는 /etc/shosts.equiv대신에 만들었습니다 /etc/ssh/shosts.equiv(내 질문의 포인트 2 참조). 내 다른 시스템 중 일부에서 작동했던 이유는 /etc/hosts.equiv동료의 이전 작업에서 남은 파일도 있었기 때문입니다.

올바른 파일이 올바른 위치에 있으면 작업이 훨씬 더 잘 수행됩니다. strace어떤 파일에서 무엇을 읽고 있는지 알아내기 위해 서버를 약간 사용하여 마침내 답을 얻었습니다.

답변3

이전 호스트 키를 사용하여 데비안을 사용하고 있습니까? openssh-blacklist 패키지는 다음의 영향을 받는 키의 사용을 방해할 수 있습니다.악명 높은 SSL 취약점.

이 경우 호스트 키를 다시 생성하십시오.

관련 정보