SSH로 EC2 Instance에 접속하기

목차

  1. 귀찮은 방법
  2. username list
  3. Key파일 권한 변경
  4. 편한 방법

귀찮은 방법

ssh -i ~/path/to/ec2-test.pem ec2-user@ec2-13-58-173-249.us-east-2.compute.amazonaws.com
  • ec2-test.pem : EC2 Instance를 만들때 발급받은 key파일
  • ec2-user : Amazon Linux 에 기본으로 설정되어있는 username
  • ec2-13-58-173-249.us-east-2.compute.amazonaws.com : 내 Instance의 Public DNS( IPv4 Public IP를 입력해도 되긴 하지만, Instance를 껏다 켰을때 변경될 수 있으니 Public DNS를 쓰는게 더 낫다 )

key파일과 Public DNS는 본인것에 맞게 입력해 줘야한다. 위는 그냥 예시일 뿐이다.

username list

찾아보니 EC2 Instance에 깔려있는 운영체제마다 기본으로 설정된 username이 다르다고 한다. 아래를 확인해서 본인에게 맞는 username을 입력하면 된다.

출처 : https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html

파일 권한 에러

위의 코드를 실행하면 파일 권한 에러가 난다.

출처 : https://www.udemy.com/aws-ec2-masterclass/

이 키파일을 아무나 접근할 수 있다(644)라는게 문제의 원인인데, 간단히 파일의 권한을 변경해주면 된다.

chmode 400 ec2-test.pem

편한방법

ssh -i ~/path/to/ec2-test.pem ec2-user@ec2-13-58-173-249.us-east-2.compute.amazonaws.com

위처럼 쓰면 내가 계속 저걸 기억하거나 AWS Console에 들어가서 자꾸 확인해야한다. 그래서 내 맥북에 아예 미리 정보들을 저장해 놓고 쉽게 접속하는 방법을 사용하는게 좋다.

먼저 파일을 열고

vi ~/.ssh/config

그 안에 아래와 같이 입력해 주고 저장한다.

Host my-aws-computer
HostName ec2-13-58-173-249.us-east-2.compute.amazonaws.com
User ec2-user
Identityfile ~/path/to/ec2-test.pem

그러면 이제 길~게 Public DNS까지 안쳐도 ssh my-aws-computer 만 치면 내 Instance에 접속이 된다.

참고자료

  1. Udemy 강좌 : https://www.udemy.com/aws-ec2-masterclass
  2. AWS Documentation : https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다

Up Next:

Webpack4 설정

Webpack4 설정