Ubuntu 10.4를 실행하는 Amazon EC2 인스턴스에 대한 SSH 액세스가 필요합니다. 내가 가진 것은 Amazon 사용자 이름과 암호뿐입니다. 어떤 아이디어?
답변:
기본적으로 SSH를 통해 EC2에 로그인하려면 프라이빗 키 파일이 필요합니다. 다음 단계에 따라 생성하십시오.
ssh -i /path/to/private-key root@<ec2-public-dns-address>
-배포 선택 ec2-user
또는 ubuntu
사용자 이름 에 따라 최신 릴리스에서 루트 사용자 이름이 사용되지 않았습니다 .ubuntu
대신 로그인을 사용해야한다고 말했습니다 root
. 분명히 우분투 서버 12.04 인스턴스가 있습니다.
ec2-user
또는 가능 ubuntu
하지만 그렇지 않습니다 root
.
1 단계) ec2 머신에 할당 된 개인 키를 다운로드합니다 (생성시 한 번만 다운로드하므로 어딘가에 커밋하는 것이 좋습니다).
2 단계) 다음 명령을 실행합니다.
chmod 400 MyKeyPair.pem
ssh -i MyKeyPair.pem ec2-user@ec2-198-51-100-1.compute-1.amazonaws.com
공식 문서 : SSH를 사용하여 Linux / Unix 인스턴스에 연결
MacOS를 사용하는 경우 SSH 구성 파일 (~ / .ssh / config)을 생성 / 편집하고 다음과 같이 입력해야합니다.
Host *.amazonaws.com
User ubuntu
Port 22
StrictHostKeyChecking no
UserKnownHostsFile=/dev/null
IdentityFile ~/PATH/YOUR_DOWNLOADED_KEY.pem
그런 다음 EC2 인스턴스에 연결하려면 :
ssh MYNAME.amazonaws.com
더 이상은 없습니다!
AWS에서 Ubuntu를 설정하려면 다음 단계를 따르십시오.
SSH를 통해 인스턴스에 액세스하려면 다음을 실행하세요.
PEM 파일을 지정하여 Linux 상자에 연결합니다.
ssh -i "file.pem" ubuntu@x.x.x.x
PEM 파일에 600 권한 ( chmod 600 file.pem
) 이 있는지 확인하십시오 .
당신은 VPC 인스턴스를 실행하고 보안 그룹 (오른쪽 규칙) 정확하고 여전히에서하지 작업 않는 경우 VPC의 섹션은 서브넷 확인 당신에 연결해야 VPC (모두 사용 인스턴스에 의해) 및 설정 대상으로 , 인터넷 게이트웨이 를 대상 으로 하는 라우팅 테이블의 새 규칙 .0.0.0.0/0
자세한 내용은 인스턴스 연결 문제 해결을 확인하십시오.
1) 먼저 chmod
다음 .pem file
과 같이 파일 권한을 제한하는 방법
chmod 400 my-key-pair.pem
2) 그런
ssh
다음 .ssh
폴더 에서 직접 다음 명령을 사용하십시오.
ssh -i my-key-pair.pem ec2-user@ec2-198-99-90-3.compute-1.amazonaws.com
참고 : - .ssh
폴더 로 이동 합니다. 먼저 Ctrl + H
모든 숨겨진 파일을 표시하고 마지막으로cd .ssh
OS Distro의 올바른 사용자로 로그인하지 않으면 문제가 될 수 있습니다. 특정 새 AMI의 경우 사용자 이름은 "ubuntu"가 아니라 "ec2-user"일 수 있습니다. 예를 들어 Amazon Linux의 경우 사용자가 "ec2-user"라고 생각합니다. Eric Hammond는 http://alestic.com/2014/01/ec2-ssh-username에서 예를 제공합니다.
내 제안은 다음과 같습니다.
ssh -i /path/to/file.pem ec2-user@ec2...
ssh -i /path/to/file.pem ubuntu@ec2...
ssh -i /path/to/file.pem root@ec2...
잘못된 AMI가있는 경우 클러스터간에 균일 성을 갖도록 머신을 모두 다시 시작하는 것이 좋습니다. 이것이 당신의 문제라면, 당신은 아마도 적어도 당신의 리눅스 박스에 대해 동일한 OS Distro를 원할 것입니다.
이 모든 답변에서 제안 된 것을하는 것만으로는 충분하지 않습니다. 각 인스턴스에 대해 보안 그룹이 표시됩니다. 새 인스턴스를 시작하면이 항목이 기본값으로 설정됩니다. 보안 그룹을 편집하고 ssh 포트를 추가해야합니다. 나중에 웹 사이트를 호스팅하려는 경우에도 8080, 8443, 80, 443 포트를 추가해야합니다.
먼저 pem 파일의 권한 변경
chmod 400 path/to/key_pair.pem
~ / .ssh / config 파일 내에서 파일 상단에 다음 줄을 추가합니다.
Host AWS
Hostname myserver.com
User myuser
IdentityFile path/to/.pem/file
port 22
호스트 이름은 서버의 IP 또는 링크를, 사용자는 서버의 사용자 이름을 취하고 ID 파일은 인스턴스 생성시 AWS에서 다운로드 한 파일입니다. 터미널에서 다음 명령을 실행하십시오.
ssh AWS
그리고 그것을 즐기십시오!
참고 : .ssh
폴더 로 이동 합니다. 먼저 Ctrl + H
홈 폴더를 눌러 모든 숨겨진 파일을 표시하고 마지막으로cd .ssh
이것들을 확인하십시오
개인 키에는 400 권한이 있어야합니다.
액세스하려는 AWS 인스턴스에 대해 포트 22가 열려 있는지 확인합니다.
ssh -i privatekey.pem ubuntu@XXX.XXX.XXX.XXX
// XXX.XXX.XXX.XXX = 인스턴스 공용 IP