goorm 23일차

박경현·2022년 9월 6일
0

오늘은 간단하게 VPC를 만들어보고 private서브넷과 public서브넷을 만들어 연결한 뒤
게이트웨이에 연결 하는것 까지 해보았다

생각보다 간단했지만 AWS에서 네트워크 연결하는 방법을 잊지말자!!

(전체적인 VPC 도안)

보안 - IAM

  • 용어
    AWS 서비스 - aws에서 제공하는 서비스
    AWS 인스턴스 - aws를 이용하여 사용자가 생성한 실제 서비스 객체
    객체
    속성 - 객체 상태정보
    행위 - 객체 상태 정보를 이용하거나 변형하는 동작
    AWS 리소스 - aws서비스가 사용하는 자원
IAM(identity access management)
	AWS 리소스에 대한 액세스를 안전하게 제어하기 위한 역할, 권한 설정 서비스 
	IAM을 사용하여 AWS 리소스를 사용하도록 인증(로그인) 및 권한 부여 대상 제어
	IAM은 글로벌 서비스 -> 

IAM 루트 관리자 계정
	전체 AWS 서비스 및 계정 리소스에 대한 완전한 액세스 권한 부여
	e-mail 주소와 암호로 로그인
	MFA 적용을 통한 이중 인증 가능
	
IAM 사용자 계정
	AWS에서 생성된 엔티티로서 AWS와 상호작용하기 위한 사람 또는 어플리케이션
	최소권한 원칙 적용 - 필요한 AWS리소스에 대해 액세스 권한 부여
	CLI/SDK 사용시 별도의 액세스 키 필요
	
기본적으로 주어진 권한은 없다!
각 IAM 사용자에게 필요한 권한 부여

IAM 사용자 생성 예시)

	IAM 메뉴 -> 사용자
	유저 아이디 test20220906
	비번 rudgus4175@@
	권한은 기존 정책 직접 연결에서 ec2 readonlyaccess를 부여
	태그 Name - test user 20220906
	(태그는 AWS 인스턴스 식별 목적의 값, 항상 부여하는게 차후 AWS 인스턴스 식별시 도움이 됨)

네트워크 서비스 - VPC

네트워크 구성요소
	포트번호 - 네트워크 통신을 수행하는 프로세스에 부여되는 번호, 2바이트 크기를 가짐
    
	IP address - 네트워크에 연결된 compute(host)에 부여된 번호, AWS는 IP v4를 부여
		CIDR 방식으로 host 식별
        
	서브넷
		네트워크에 연결된 호스트를 관리하기 위한 부분 네트워크
        
	게이트웨이 
		외부 네트워크와 통신을 수행하기 위한 연결점
		IPv4에서는 마지막 옥텟의 1번을 게이트웨이로 사용
        
	라우터
		네트워크에 연결된 host의 경로를 탐색하는 역할수행
		라우팅 테이블에 연결된 host경로 정보 관리

Amazon VPC

  • virtual private cloud - 가상 네트워크
    aws전용 가상 네트워크 서비스
    리전 단위 서비스
    하나의 리전을 대상으로 vpc생성 - 디폴트 VPC
    동일 리전에 여러개 vpc 생성 가능!
    여러 리전에 걸쳐 vpc생성은 불가능! - 글로벌 서비스가 아니어서 안됨!

VPC 만들기 - 예시)

	vpc생성 들어기기 -> vpc만을 클릭
		(vpc등을 선택하면 서브넷부터 라우터까지 만들수있음)
	-> 이름 - 해당 인스턴스를 식별하기 위한 역할
	-> IPv4 CIDR를 할당해주어야함 -> 10.0.0.0/16으로 설정함

	VPC생성이후 설정 해야하는 내용 
	 	DNS 호스트 이름 - 활성화 시켜주어야한다
		DNS 확인도 활성화 되어있어야한다!

	VPC를 생성하면 기본 routing table이 자동 생성 된다.
	VPC를 새로 생성한다는 것은 사설 네트워크 구성을 의미한다.

Subnet

  • VPC내에서 구성되는 가상 네트워크 서비스
    가용영역 단위의 서비스
    네트워크를 사용하는 개별적인 서비스 제공

  • AWS 리소스는 항상 subnet에 소속되어있어야한다.
    원하는 IP 범위를 갖는 서브넷 네트워크 구성
    IPv4 CIDR 표기법으로 네트워크 범위 설정, 5개의 IP는 AWS에서 미리 예약

VPC 자체에 대한 비용은 무료

서브넷 생성시에 public과 private를 나눌 수는 없다.

public subnet

	인터넷에 연결되어 외부와 직접 통신이 가능한 subnet
	인터넷 게이트웨이를 통하여 인터넷과 연결
	양방향 통신

private subnet

	인터넷에 연결되어있지 않은 서브넷
	VPC 내부 네트워크상에서만 가능
	NAT Gateway를 사용하면 단방향 통신가능

서브넷 생성 - 예시)

	VPC메뉴 -> 서브넷 누르고 생성 누르기
	vpc선택하기 -> 이름 짓고 , 가용역역 설정 및 IPv4 CIDR 설정, Name 태그 부여

라우팅 테이블

서브넷 수에 따라서 필요한 라우팅 테이블 생성!! (private 서브넷 하나, public 서브넷 하나)

	네트워크 환경에서 호스트를 검색하는 경로 정보를 가지고 있는 네트워크 요소
	라우팅 테이블 내용을 이용하여 연결 정보 구성

라우팅 테이블 만들기 - 예시)

	이름설정하고 - VPC 설정 하면 끝

라우팅 테이블에 명시적 서브넷 연결

	VPC 메뉴 -> 라우팅 테이블 
    ->원하는 라우팅테이블 누르고
	-> 작업 
    -> 서브넷 연결 편집 들어가기 
    -> 연결할꺼만 클릭하기!

public subnet을 위한 라우팅 테이블에 인터넷 통신을 위한 라우팅 추가해야한다!!!
인터넷 통신을 위한 인터넷 게이트웨이가 라우터와 연결 되어야 한다!!

인터넷 게이트웨이 생성 - 예시)

	vpc메뉴 -> 인터넷 게이트웨이 -> 인터넷 게이트 웨이 생성 -> VPC연결
		상태가 Attached로 바뀜

	라우팅에 인터넷 게이트웨이 추가하기
		결합 원하는 라우팅에서 라우팅 편집 -> 라우팅 추가 

			대상 : 라우팅 편집의 대상(통신할 대상) 그리고 인터넷 게이트 웨이 누르기
				( -> 0.0.0.0/0 모든 IP를 대상으로 하겠다는 뜻, 호스트와 통신 가능)
			
			

컴퓨팅 서비스 - EC2

  • Elastic Compute Cloud
    가상화 기술을 이용하여 AWS에서 관리하는 물리적인 서버에 생성되는 가상 Compute 서비스(가상머신)
    EC2요금은 사용량에 따라 요금 부과
    여러 형태에 따라 할인 요금 제공
    EC2인스턴스 사용시간 + 보조 기억장치(EBS) 사용량 + 네트워크 송신량
EC2구성
	가상 H/W 구성 
		CPU type
		Memory 크기
		보조 기억장치 종류/ 크기/ I/O 속도
	설치할 O/S 
	EC2가 위치할 네트워크
	보안 그룹
	EC2에 접속할 때 사용할 공개키

EC2 생성 - 예시)

	EC2메뉴에서 인스턴스 클릭 -> 인스턴스 시작
	이름결정(WebServer)->
	애플리케이션 및 OS이미지 설정 ->
		AMI (Amazon machine image)
		즉시 사용가능한 OS와 패키지를 가지고 있는 이미지
		별도 os설치과정 없이 AMI를 이용하여 EC2에 바로 사용할 수 있도록 해주는 이미지->걍 압축파일

	인스턴스 유형
		cpu, memory, 보조 기억장치, 네트워크 대역을 결정
		
	키페어(로그인)
		EC2 인스턴스에 대한 접속(리눅스) - SSH를 이용
		goorm-aicore0918-20220906
	
	네트워크 설정 편집
		vpc선택
		퍼블릭 ip자동할당 
		보안 그룹 - 인스턴스 수준 방화벽 
		inbound 규칙- 모든 포트에 대하여 막혀있는 설정
		outbound 규칙 - 모든 포트에 대하여 열려있는 설정

만약에 putty를 써서 접근하려면 ppk가 아닌 pem으로 키를 생성했다면
puttygen으로가서 ppk로 만들기 -> save privatekey를 누르면 됨!

putty에서 로그인할때 ec2-user를 적으면 끝
-> ec2인스턴스와 private IP가 같으면 끝@!!!

ec2인스턴스 종료가 삭제임!

인스턴스 -> 컴퓨터 세계(메모리)에서의 객체

profile
SW로 문제를 해결하려는 열정만 있는 대학생

0개의 댓글