2013-03-21 3 views
5

방금 ​​AWS에서 EC2 인스턴스를 만들었습니다. 그 전에는 개인 키를 다운로드 한 키 쌍을 만들었습니다.AWS EC2 인스턴스를 연결하면 PEM 파일이 제공되지만 암호를 묻습니다.

이제 올바른 호스트 이름을 사용하여 새로 만든 인스턴스에 로그온하려고합니다. 물론 여기를 보안을 위해 바꿨습니다. 내가 키 파일을 제공하지만, 내가 암호를 묻는하고

ssh [email protected] -i ~/EC2key.pem -v 

: 나는 디버그 출력을 얻을 수 -v 스위치를 추가했습니다. 여기에 잘못 무슨 일이 일어나고 있는지 보여줄 수있는 디버그 출력에서 ​​발췌입니다 :

debug1: Host 'myVirtualHost.compute-1.amazonaws.com' is known and matches the ECDSA host key. 
debug1: Found key in /home/myuser/.ssh/known_hosts:15 
debug1: ssh_ecdsa_verify: signature correct 
debug1: SSH2_MSG_NEWKEYS sent 
debug1: expecting SSH2_MSG_NEWKEYS 
debug1: SSH2_MSG_NEWKEYS received 
debug1: Roaming not allowed by server 
debug1: SSH2_MSG_SERVICE_REQUEST sent 
debug1: SSH2_MSG_SERVICE_ACCEPT received 
debug1: Authentications that can continue: publickey,password 
debug1: Next authentication method: publickey 
debug1: Trying private key: /home/myuser/EC2key.pem 
debug1: read PEM private key done: type RSA 
debug1: Authentications that can continue: publickey,password 
debug1: Next authentication method: password 
[email protected]'s password:[asks for password here] 

왜 "PEM 개인 키 다 읽어 타입 RSA"결론은 "계속의 Authentications : 공개 키, 비밀 번호를"입니다?

+0

가능한 복제본 : http://stackoverflow.com/questions/9747763/ssh-ec2-asking-for-password – Rishabh

+2

예, 답이 없습니다. 내 ssh_config에는 PasswordAuthentication이 yes로 설정되어 있지 않습니다. 활성화 된 유일한 설정은 다음과 같습니다. SendEnv LANG LC_ *; HashKnownHosts 예; GSSAPIAuthentication 예; GSSAPIDelegateCredentials no – Passiday

답변

3

내가 존재하지 않는 사용자와 ssh를 시도하고 있다는 문제가 있다는 것을 알려 드리게되어 기쁘게 생각합니다. 내가 따라 왔던 튜토리얼은 각각의 AMI에서 사용자 이름과 일치하지 않는 로그인 이름을 사용하도록 제안했다. 이는 Amazon 지원 부서에서 자습서를 재확인 할 때 제안되었습니다.

EC2 관리 콘솔에서 기본 로그인 이름을 찾는 방법이 있는지 확실하지 않습니다. 속성에서 올바른 사용자 이름을 빠르게 검색해도 일치 항목이 표시되지 않았습니다.

이제 ssh-add 명령으로 키링에 키를 추가 했으므로 -i 옵션을 통해 키 파일을 제공하지 않고도 로그온 할 수 있습니다.

+0

https://alestic.com/2014/01/ec2-ssh-username/ ec2 인스턴스가 사용하는 기본 사용자 이름 목록입니다. – Abhidemon

1

Keyring에 암호를 추가하려고 했습니까?

PasswordAuthentication yes

를 행을 찾아 저장을 PasswordAuthentication no

에 파일을 변경하고 SSHD를 다시 시작이 문서

http://aws.amazon.com/articles/1233

# vi /etc/ssh/sshd_config

를 던져 이동 : # /etc/init.d/sshd restart

+0

예, 여전히 비밀번호를 묻습니다.디버그 출력하지만, 약간 다른 : 'DEBUG1 : 계속할 수의 Authentications : 공개 키 암호 DEBUG1 : 다음 인증 방법 : 공개 키 DEBUG1 : 제공하는 RSA 공개 키 : /home/myuser/EC2key.pem DEBUG1 :의 Authentications 그 계속 진행할 수 있습니다 : publickey, password' – Passiday

+0

엉망으로 죄송합니다, 나는 코멘트 텍스트에 줄 바꿈을 추가 할 수있는 방법이 없다는 것을 몰랐습니다. – Passiday

+0

열쇠 고리가 작동해야합니다. 여기에 도움이되는 문서가 있습니다. http://aws.amazon.com/articles/1233 – Rishabh

0

글쎄, 실패한 이유는 클라이언트 측 또는 서버 측일 수 있습니다.

클라이언트 측 : 당신의 SSH를 디렉토리 권한 0700 있는지 확인하고 EC2key.pem는 0600

서버 측입니다 : 확인 'PubkeyAuthentication은'당신의 sshd_config를 (에 '예'로 설정 될 당신이 전혀 들어올 수 없다면). 디버그 모드 (-d 플래그)를 사용하여 수동으로 SSH 서비스를 실행하여 다른 잠재적 인 이유를 찾을 수도 있습니다 (다시 액세스 할 수있는 경우).

+0

내 ~/.ssh 디렉토리 권한은 drwx ------이며 pem 파일 권한은 - rw -------, 그래서 당신이 언급 0700과 0600 일치 같아요.하지만 난 서버쪽에 들어가는 방법이 없어. 키 파일을 사용하는 방법이 초기 방법이었습니다. – Passiday

+0

누가 인스턴스에 사용중인 AMI를 만들었습니까? 전적으로 구성이 제대로 작동하지 않을 가능성이 있습니다. '공식적인'AMI를 사용하거나 아마존에서 직접 말할 경우에는 정상적으로 작동합니다. –

+0

나는 [여기에서 오는 길] (http://aws.amazon.com/articles/7249489223918169)을 따르고 있었고, 나는 Udacity의 CUDA 코스에 참여하고있다. 따라서 AMI는 공식 템플릿으로 생성되었습니다. – Passiday

관련 문제