본문 바로가기

Minding's Programming/AWS

[AWS/EC2] EC2로 서버 생성 및 연결하는 방법

728x90
반응형

키 페어

키 페어는 AWS 인스턴스(서버)에 로그인할 때 사용하는 정보로, AWS에 저장되는 Public Key와 사용자가 개인 보관하는 Private Key의 쌍으로 이뤄진다.

 

경로: EC2 > 키 페어 > 키 페어 생성

프라이빗 키 파일 형식은 두 가지인데, 각자 사용하는 OS 환경에 따라 다르게 선택한다.

  • .pem: Mac, Linux (필자 선택)
  • .ppk: Windows

이후 '키 페어 생성'을 클릭하면, 선택한 프라이빗 키 형식의 파일을 다운로드 받을 수 있다.

이 키는 개인이 관리하는 key이므로, 절대 잃어버리지 않도록 유의한다.

 

인스턴스 생성

본격적으로 가상 서버(인스턴스)를 생성해보자.

경로: EC2 > 인스턴스 생성

서버 이름 및 OS, AMI등을 선택할 수 있다. AMI는 운영체제 및 애플리케이션 등이 포함된 일종의 템플릿으로, Amazon에서는 다양한 AMI를 제공하고 있다. ('더 많은 AMI 찾아보기'에서 확인 가능)

 

또한 인스턴스 유형을 선택할 수 있다. 다양한 코어의 cpu와 메모리를 가진 서버를 선택할 수 있다. 데모 버전의 서비스의 경우 t2.micro를 선택해 프리 티어를 사용해도 되지만, 실제 서비스를 할 경우 더 큰 규모의 서버가 필요할 것이다.

 

또한 어떤 키 페어를 사용할지 선택할 수 있다. 이전에 만들어놓은 키 페어를 사용하거나 새로운 키 페어를 생성할 수도 있다.

 

다음으로 네트워크 설정을 통해 보안 그룹을 생성하거나 지정할 수 있다.해당 서버에 접속할 수 있는 프로토콜, 포트 등을 지정하는 방화벽의 기능을 한다. 이후에도 재설정 가능하니 기본값으로 설정해도 무관하다.

 

스토리지의 용량을 설정할 수도 있다.

 

 

이후 '인스턴스 시작'을 눌러 서버를 생성한다.

성공적으로 서버가 생성됐고, 실행되는 것을 확인할 수 있다.

 

터미널을 통해 인스턴스 콘솔에 접속하는 법

본인은 Windows 사용자이지만 WSL 설치를 통해 Linux로 진행하므로, 아래 방법은 WSL2 설치를 한 뒤 ubuntu 콘솔로 진행한다는 점을 참고하길 바란다. (Windows 환경에서 Linux 사용을 위한 WSL2 설치)

 

우선 미리 다운로드 받아놓은 키 페어 파일은 .pem 파일을 특정 폴더에 넣어 놓는 것이 좋다. 필자의 경우 .ssh라는 폴더를 생성해 그 안에 넣었다.

 

그런 뒤 wsl 콘솔을 통해 해당 폴더에 진입한 뒤, 권한 설정을 먼저 해준다.

(base)  minding  ~/aws/.ssh
❯ sudo chmod 400 minding.pem

chmod 400 명령어를 통해 해당 파일을 '나만 읽을 수 있게' 설정한다. 보안에 민감한 개인 key이기 때문이다.

 

이후 AWS 인스턴스 화면에 돌아가 연결한 인스턴스를 클릭한 뒤, 상단의 '연결' 버튼을 클릭한다.

그러면 위와 같은 화면이 노출되는데, 'SSH 클라이언트' 항목으로 진입해 아래 명령어를 복사해 콘솔 창에 붙여넣는다.

 

위와 같이 서버(인스턴스)에 접속된 것을 확인할 수 있다.

 

탄력적 IP 설정 (Elastic IP)

고정된 공용 IPv4 주소로, AWS 계정에 할당되어 사용자가 직접 관리할 수 있는 IP 주소다. 좌측 메뉴 바에서 '탄력적 IP' 메뉴에서 탄력적 IP를 할당받을 수 있다.

 

해당 IP를 선택한 뒤 상단의 작업 버튼을 클릭하면 해당 IP 주소와 서버를 연결할 수 있다.

해당 인스턴스에 탄력적 IP 주소가 생성된 것을 알 수 있다. 특정 방화벽을 열거나 특정 IP를 사용해야만 하는 경우 이 방법을 이용할 수 있다. 해당 IP는 연결된 서버와 해제도 가능하며, 다른 서버와도 연결할 수 있다.

 

 

728x90

'Minding's Programming > AWS' 카테고리의 다른 글

[AWS] CloudFront  (1) 2024.10.24
[AWS] Certification Manager  (1) 2024.10.24
[AWS] Route53  (1) 2024.10.24
[AWS] RDS, DocumentDB, DynamoDB  (0) 2024.10.24
[AWS/Elastic Beanstalk] Elastic Beanstalk  (0) 2024.10.23