SSH 공개 키 로그인: 두 개의 서로 다른 키 및 SSH_AUTH_SOCK 동작

SSH 공개 키 로그인: 두 개의 서로 다른 키 및 SSH_AUTH_SOCK 동작

user1Ubuntu 12.04 데스크톱의 사용자( )에게는 ~/.ssh/id_rsa~/.ssh/id_rsa1(및 .pub파일)이라는 두 개의 SSH RSA 키가 구성되어 있습니다. 두 공개 키는 모두 user1@myserver서버 계정( )의 인증 키 에 구성됩니다 .

데스크톱(클라이언트) 컴퓨터에 로그인하고 Gnome Terminal을 사용하면 두 키 중 하나를 사용하여 서버에 로그인할 수 있습니다.

  • ssh user1@myserver암묵적으로 집어들었다/home/user1/.ssh/id_rsa
  • ssh -f /home/user1/.ssh/id_rsa1 user1@myserver또한 작동합니다.

localhostGnome 데스크탑을 통해 로그인하지 않고 다른 호스트(또는 심지어)에서 SSH를 통해 클라이언트 시스템에 로그인하는 경우에는 더 이상 사용이 작동 su하지 /home/user1/.ssh/id_rsa않습니다.

SSH_AUTH_SOCK이는 (원래 SSH를 사용하여 클라이언트 설정에 연결한 환경에서 누락됨)과 관련된 것 같습니다. 데스크톱 세션에 표시되는 값으로 설정하면 /tmp/keyring-xxxxxxxxxxx/ssh로그인이 id_rsa다시 제대로 작동합니다.

설정을 해제하고 SSH_AUTH_SOCK(로깅이 id_rsa다시 실패하게 만들고) (및 파일) id_rsa1에 복사해도 이제 작동합니다 .id_rsa.pubid_rsa

이 두 키 쌍 간의 동작 차이와 와의 상호 작용 차이를 무엇으로 설명할 수 있습니까 SSH_AUTH_SOCK?

서버 로그에 아무 것도 표시되지 않습니다.

다음은 차이가 발생하기 직전의 SSH 클라이언트 로그 조각입니다.

debug1: ssh_rsa_verify: signature correct
debug2: kex_derive_keys
debug2: set_newkeys: mode 1
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug2: set_newkeys: mode 0
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug2: service_accept: ssh-userauth
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug2: key: /home/user1/.ssh/id_rsa (0x7f6b7059b260)
debug1: Authentications that can continue: publickey,password
debug3: start over, passed a different list publickey,password
debug3: preferred gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive,password
debug3: authmethod_lookup publickey
debug3: remaining preferred: keyboard-interactive,password
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /home/user1/.ssh/id_rsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply

다음으로 해당 사용자/키에 대해 작동하지 않는 경우:

debug1: Authentications that can continue: publickey,password
debug2: we did not send a packet, disable method

답변1

결국 작동하지 않는 키는 authorized_keys파일에 올바르게 구성되지 않은 것으로 나타났습니다. 미안합니다...

나는 이것이 ssh -i /home/user1/.ssh/id_rsa user1@myserver올바르게 구성되었음을 나타내는 것이라고 잘못 생각했지만 그렇지 않습니다. 다른 키도 사용합니다. ssh -i /home/user1/.ssh/id_rsa -oIdentitiesOnly=yes user1@myserver잘못된 구성으로 인해 적용이 실패할 수도 있습니다.

나는 Gnome으로 로그인할 때 설정된 SSH 에이전트를 사용하면 ~/.ssh/디렉토리의 다른 키도 가져오므로 -i.

답변2

저는 실제로 gnome을 사용하지 않지만 SSH 에이전트와 통신을 시도할 가능성이 높습니다(또는 편의를 위해 시작하기도 합니다).

키에 비밀번호가 없는지 언급하지 않았습니다.

복제본에서 문제가 될 수 있는 또 다른 사항은 a) user2의 /home, b) 해당 .ssh 또는 c)authorized_keys 파일에 대한 권한입니다.

관련 정보