내 EC2 머신(ubuntu)에서 새 사용자(newuser)를 생성한 후 Authorized_key를 추가하고 여기에 SSH를 시도했지만 작동하지 않았습니다. 이제 실패하면 괜찮지만 명령을 사용하거나 설정하더라도 -l
실제로는 이전 사용자로 로그인에 성공합니다.user@
sshd가 사용자를 무시하고 이전 로그인으로 돌아가는 것이 어떻게 가능합니까? 아무리 노력해도 다른 사용자의 키를 삭제하고 SSH 서버를 다시 시작하는 것 외에는 새 사용자로 로그인할 수 없습니다.
➜ ~ ssh -l 새 사용자 호스트 마지막 로그인: 2017년 11월 2일 목요일 10:09:08 5.xxx에서 ubuntu@ip-172-xxx:~$ whoami 우분투 ➜ ~ SSH newuser@thehost 마지막 로그인: 2017년 11월 2일 목요일 10:11:17 5.xxx에서 ubuntu@ip-172-xxx:~$ whoami 우분투
SSH 에이전트나 키 사용과 관련이 있을 것으로 추측하고 있지만 이해하기가 매우 어렵고 지난 2주 전에는 이 문제가 발생한 적이 없으므로 이것이 새로운 기능인지 무엇인지 모르겠습니다. .
편집하다:사용자 이름을 완전히 무시하므로 PAM 인증 및 일부 키 캐싱과 관련이 있는 것으로 보입니다. 잘못된 사용자 등을 입력해도 여전히 성공적으로 로그인됩니다.
답변1
~/.ssh/authorized_keys
SSH는 일치하는 키를 찾거나 인증이 실패할 때까지 파일의 모든 키를 시도합니다 . 공개 키 인증이 실패하면 사용 가능한 경우 다음 인증 방법을 시도합니다.
따라서 원격 호스트 파일에 이전 공개 키를 먼저 넣으면 ~/.ssh/authorized_keys
이전 키가 가장 먼저 발견됩니다.
localhost 측에서는 SSH 에이전트가 작동합니다. 개인 키는 캐시된 SSH 에이전트에 추가되고 원격 호스트의 공개 키와 일치할 때까지 키가 시도됩니다.