
Ubuntu 16.04 AMI를 사용하여 ec2 인스턴스를 생성했습니다. 다음을 사용하여 이 AMI에 대한 sudo 사용자를 생성했습니다.
sudo adduser myuser
sudo usermod -aG sudo myuser
그런 다음 이미 가지고 있는 rsa 키 쌍을 사용하여 사용자에게 SSH 액세스 권한을 부여하려고 시도했습니다. 새 사용자를 위해 .ssh 디렉터리를 만들었습니다.
mkdir ~/.ssh
chmod 700 ~/.ssh
vim ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
내 공개 키를 'authorized_keys'에 복사하여 붙여넣었습니다. 그런 다음 ec2를 종료하고 다음을 사용하여 연결을 테스트했습니다.
cd ~/.ssh
ssh -i "mypem.pem" [email protected]
'액세스가 거부되었습니다(공개 키)'라는 오류가 발생했습니다.
그래서 해당 사용자를 폐기하고 다른 사용자를 만들었습니다. 이번에는 Vim 대신 nano를 사용하여 'authorized_keys' 파일을 만들었고 작동했습니다.
누구든지 이것을 경험합니까?
답변1
아마 잘못 붙여넣으신 것 같습니다.
ssh-rsa
로 시작합니까 아니면 로 시작합니까ssh-ed25519
?- 앞에 공백이 있나요? (없어야 합니다.)
- 대문자/소문자는 유지되나요?
- 줄 끝의 주석 앞에 공백이 있습니까?
vim에 무엇이든 붙여넣기 전에 를 사용해야 합니다. :set paste
활성화된 자동 완성/자동 들여쓰기/... 매크로를 모두 끄기 때문입니다.
mykey.pem
또 다른 점은 ssh-keys가 아닌 openssl 파일의 일반적인 확장자인 을 작성했다는 것입니다 . 정말로 id_rsa.pub
/를 id_ed25519.pub
ssh-pubkey로 사용하셨나요?
답변2
이런 일이 발생하면 check fileencryption
와 ViM을 fileformat
추천 합니다. bomb
nano로 편집한 파일과 vim으로 편집한 파일을 비교해보세요. vim으로 열고 다음을 확인하세요.
:set bomb?
이것이 바이트 순서 표시입니다. 일반적으로 Windows에서 notepad.exe를 사용하여 UTF-8 파일을 편집할 때 설정됩니다. 나는 종종 그것에 문제가 있었습니다.
:set ff?
파일 형식 dos
또는 unix
. dos는 유닉스와 다른 줄 끝을 가지고 있습니다.
:set fenc?
파일 인코딩: 아마도 한 편집기가 UTF-8 대신 latin1로 변경될 수 있습니다.
답변3
myuser는 .ssh 및 keyfile에 대한 액세스 권한이 있어야 합니다. 누가 소유하고 있는지 확인하세요.