Skip to content

SSH를 사용하여 AWS 서버에 접속하기

YoungHo Choi edited this page Jun 8, 2021 · 1 revision

공통 방법

  1. 서버에 접근하기 위해서는 개인키가 있어야하며, 해당 키는 PEM포맷으로 되어있으며 아래와 같은 형식을 띄고 있다.
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAm+YP8Q5nJ2pQ3FubASiIENlnB
...
...
-----END RSA PRIVATE KEY-----
  1. 해당 키를 복사하여 파일을 만들어 준다.
$ vim ~/.ssh/pems/swlabs-cadet.pem
  1. 이제 개인키의 권한을 수정해야한다.
$ chmod 400 ~/.ssh/pems/swlabs-cadet.pem
  • 인증키는 절대 노출되서는 안된다. 때문에 개인키 권한은 루트만 접근할 수 있도록 강제하고 있다. 만약 서버에서 퍼미션 관련한 오류를 내보낸다면 키의 권한을 확인해볼 필요가 있다.
  • 이제 접속할 수 있는 두가지 방식이 있다. 개인적으로 방법 2를 추천한다

방법 1

-i 옵션을 통해 pem파일에 직접 접근하여 SSH 연결하기

$ ssh -i ~/.ssh/pems/swlabs-cadet.pem [email protected]

방법 2

config 파일을 수정하여 SSH 연결하기

  1. config 파일을 연다. 만약 없을경우 생성해준다.
$ vim ~/.ssh/config
  1. 아래와 같이 수정 후 저장을 해준다. host에 적은 내용에 따라 별칭이 달라지기 때문에 기억하기 쉬운 이름으로 설정한다.
# AWS helper
host helper
hostname 52.78.38.171
user ec2-user
identityfile ~/.ssh/pems/swlabs-cadet.pem
  1. 서버에 접속한다.
ssh helper

참고

  • 접속 유저를 ec2-user로 하는 이유는 Amazon Linux 2 이미지에서 그렇게 설정이 되어있기 때문이다. (Centos AMI: centos, Debian AMI: admin, Fedora AMI: ec2-user 등등)

참고: AWS UserGuide