내 인스턴스를 호출하는 사용자를 생성 grader
하고 sudo 권한을 부여했으며 비밀번호도 /etc/ssh/sshd_config
끄도록 전환했습니다.
로컬 컴퓨터에서 키 쌍을 생성하고 인스턴스에 공개 키를 추가했습니다. Amazon AWS에서 제공한 DEFAULT 사용자와 생성된 키를 사용하여 인스턴스에 액세스하려고 하면 작동합니다.
ssh -i "udacityLinux" [email protected]
하지만 사용자를 사용하여 동일한 작업을 시도하면 grader
다음 오류가 발생합니다.
ssh -i "udacityLinux" [email protected]
[email protected]: Permission denied (publickey).
내 사용자를 사용하여 로그인할 수 있도록 이 문제를 어떻게 해결합니까 grader
?
답변1
서버에 업로드하는 공개 키에 대해 오해가 있는 것 같습니다.
~/.ssh/authorized_keys
이 키는 이 키로 식별되어야 하는 모든 사용자에 대해 파일에 저장되어야 합니다 .
이 경로는 ~/.ssh/authorized_keys
현재 사용자 디렉터리와 동일합니다. 사용자로 로그인한 경우 grader
해당 경로는 다음을 가리킵니다.
/home/grader/.ssh/authorized_keys
사용자 로 로그인한 경우 ubuntu
해당 경로는 다음을 가리킵니다.
/home/ubuntu/.ssh/authorized_keys
따라서 지금은 다음을 사용하여 키 파일을 복사할 수 있습니다.
sudo cp /home/ubuntu/.ssh/authorized_keys /home/grader/.ssh/
그런 다음 올바른 소유자 및 권한을 설정하십시오.
sudo chown grader:grader /home/grader/.ssh/authorized_keys
sudo chmod 0600 /home/grader/.ssh/authorized_keys
ubuntu
이제 사용자 에 대해 활성화했을 수 있는 모든 키를 수락한다는 점을 명심하세요 grader
.