티스토리 뷰
EC2(Elastic Compute Cloud)를 생성하기 위해 알아야 할 개념이 세 가지 있습니다.
- AMI(Amazon Machine Image) : EC2 인스턴스의 기반이 되는 이미지입니다.
- 보안 그룹(Security Group) : 보안을 위해 IP와 포트 번호를 이용해 정의해두는 서버 접속 규칙입니다.
- 키 페어(Key Pair) : 서버에 접속하기 위한 열쇠라고 생각하면 됩니다.
EC2 인스턴스 생성
1. AWS 로그인 및 AWS 콘솔에 접속
서울 리전을 선택한다.
2. EC2를 검색
3. 왼쪽 인스턴스 선택 → 오른쪽 인스턴스 시작 클릭
4. AMI 선택
다음은 제가 선택한 AMI 스펙입니다.
Amazon Linux AMI 2018.03.0 (HVM), SSD Volume Type - ami-0493ab99920f410fc
Amazon Linux AMI는 EBS 기반의 AWS 지원 이미지입니다.
기본 이미지에는 AWS 명령줄 도구, Python, Ruby, Perl 및 Java가 있습니다. 리포지토리에는 Docker, PHP, MySQL, PostgreSQL 및 기타 패키지가 포함됩니다.
5. EC2 인스턴스의 유형 선택
t2.micro가 프리 티어 사용 가능합니다.
6. EC2 인스턴스 세부 정보 구성
일단 기본값 사용 ⇒ 다음 : 스토리지 추가 버튼 클릭합니다.
7. EC2에서 사용할 저장 장치 선택
일단 기본값 사용 ⇒ 다음 : 태그 추가 버튼 클릭합니다.
8. EC2에 태그를 지정
태그는 운영 환경에서 수백 개의 인스턴스가 실행될 수 있으므로 성격에 맞게 분류할 때 유용하게 사용됩니다.
- Key : Name
- Value : exercise-instacne
를 넣어주고 다음 : 보안 그룹 구성 버튼 클릭합니다.
9. 인스턴스에 대한 접근 제어
보통 본인 IP 주소만 지정하는 것이 좋고 정말 필요한 IP 주소와 포트 번호에 대해서만 접속을 허용하는 것이 중요합니다.
다음과 같이 적고 검토 및 시작 버튼을 클릭합니다.
💡 0.0.0.0/0 은 모두에게 허용하는 것을 의미합니다.
10. 키 페어 생성
새 키 페어 생성을 선택하고 생성할 키 페어의 이름을 넣습니다.
키 페어 다운로드 버튼을 선택하여 키 페어를 저장해둡니다.
저장 받은 키 페어는 절대로 잃어버리거나 유출되면 안됩니다.
PuTTY로 접속하기 (Windows)
서버 인스턴스에 접속하는 데 SSH 통신을 사용합니다.
EC2 인스턴스 키 페어와 SSH 클라이언트인 PuTTY를 이용해 SSH 접속을 해봅시다.
1. 키 변환 과정
PuTTY에서는 AWS에서 내려받은 키 페어 파일을 바로 사용할 수 없습니다.
별도의 키 변환 과정이 필요하기 때문에 PuTTy Key Generator를 사용합니다.
PuTTY가 설치된 경로에서 puttygen.exe 파일을 실행합니다.
Load를 누른 뒤 파일 종류를 [All Files]로 바꿔준 뒤 pem 파일을 선택합니다.
마지막으로 Save Private key를 선택합니다.
2. PuTTY 실행
왼쪽의 Category 중 Session을 클릭합니다.
Host Name에는 ec2-user@<EC2 인스턴스 퍼플릭 도메인 or 퍼플릭 IP 주소>를 입력합니다.
위에 정보는 AWS EC2 인스턴스에서 찾을 수 있습니다.
Connection type은 SSH를 선택하고 Port는 SSH 포트인 22를 입력합니다.
3. Private Key 지정
왼쪽의 Category 중 Connection ⇒ SSH ⇒ Auth를 클릭합니다.
Private key file for authentication 항목에 PuTTy Key Generator에서 만든 ppk 파일을 지정합니다.
4. Start
3번까지 수행한 다음 Open을 누르면 다음과 같은 창이 뜹니다.
5. Finish
💥 PuTTY Fatal Error
추가 이전 키는 삭제해야 합니다.
레지스트리 편집기에서 HKEY_CURRENT_USER⇒Software⇒SimonTatham⇒PuTTY⇒SshHostKeys
기본값을 제외한 내용을 삭제합니다.
Terminal로 접속하기 (Mac Os)
1. pem키가 있는 경로로 이동
$ cd desktop
2. SSH로 서버 접속하기 위해 명령어를 입력
$ ssh -i 인증서.pem ec2-user@<서버 IP 또는 도메인 주소>
또는 shell script를 통해서 관리하는 방법도 꽤나 용이합니다.
다음 script와 같이 pem 파일은 key 디렉터리에서 관리하고 다음과 같은 shell script로 관리합니다.
vi shell-scripts.sh
#!/bin/sh
ssh -i ./key/kakao-style-task.pem ubuntu@3.37.132.82
아래 명령어로 실행하면 더욱 편하게 ec2 환경을 들어갈 수 있습니다.
./shell-scripts.sh
HTTP, HTTPS로 접근
현재는 SSH 포트만 허용해 놓았기 때문에 HTTP, HTTPS의 기본 포트인 80, 443 포트로 접속을 시도하면 동작하지 않습니다.
보안 그룹에서 HTTPS와 HTTP를 추가해줍니다.
인스턴스에서 보안⇒보안 그룹 변경 에 들어가줍니다.
위에서 만든 web을 추가해주고 저장해줍니다.
'Infra > AWS' 카테고리의 다른 글
로드 밸런서에 도메인 등록 실습 + HTTPS (0) | 2022.03.25 |
---|---|
AWS Route 53을 이용한 도메인 등록 (0) | 2022.03.25 |
AWS Elastic Load Balancing(ELB, 로드 밸런서) (0) | 2022.03.13 |
다중 서버(auto scaling) (0) | 2022.03.13 |
운영 서버의 특징 (0) | 2022.02.06 |
- Total
- Today
- Yesterday
- 알고리즘
- AWS
- 클린 아키텍처
- BOJ
- 정규표현식
- 디자인 패턴
- Olympiad
- Spring
- Algorithm
- 이팩티브 자바
- kotest
- 객체지향
- 이펙티브 자바
- 프로그래머스
- 백준
- MSA
- C++
- JPA
- Kotlin
- 코테
- 클린 코드
- BAEKJOON
- Java
- programmers
- Effective Java
- Spring Boot
- kkoon9
- 테라폼
- node.js
- 디자인패턴
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |