brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Dec 29. 2018

53. AWS에서 네트워크 구축하기1

네트워크를 빨리 구축해야하는 분에게 도움이 됐으면 해서 작성한다.


AWS에서 개발환경을 구축하기 위해 네트워크와 서버를 구축이 필요하다.



본 구성은 개인적으로  만든 구성이라 내용이 틀릴수도 있다.^^


3가지 개발환경을 구성해 본다.



<1> 구성1


그냥 단순 테스트 개발 환경구축

빠르게 개발해서 테스트만 해보고 싶을때 구성해서 개발하면 된다.

단순 WEB/WAS/DB가 1개의 Public 서브넷 구성

 



<2> 구성2


WEB/WAS  1개  Public과   1개의 Private DB네트워크로 나눠진 일반구성  

ISMS 통과 가능한 수준의 구성.

ISMS심사(정보보호인증체계) 통과 가능한 개발환경.

개발환경을 ISMS심사하는것은 아니고, 서비스망을 하지만  개발망과 서비스망 구성은 유사해야한다.


AWS ISMS 통과  http://delighit.ddaily.co.kr/post/get/8/13872/

MS 에저 ISMS 통과 http://www.ddaily.co.kr/news/article.html?no=175325



<3> 구성3


전자금융거래법에 맞는  개발 환경 구축 

Web/WAS/DB가 나눠져야 하는 전자금융거래법 구성.

전자금융거래법에서 허용하는 클라우드 범위 http://www.ddaily.co.kr/news/article.html?no=175712


외부에서 직접 접속하는 서버는 DB와 직접 연결하면 안된다는 전자금융거래법 규정에 의한 구성임.





구축하기


<1> 구성1


그냥 단순 테스트 개발 환경구축 


단순 WEB/WAS/DB가 1개 Public1개 구성

제일 빠르게 그냥 테스트만 할경우 네트워크, 서버.


 1.우선 어느 지역에 만들지 지역을 선택하자

 2.VPC

 3.EC2

 4.확인

 5. 삭제  



1.우선 어느 지역에 만들지 리전을 선택하자

리전을 서울로 선택하자.



2.VPC

VCP 마법사로   VPC만들어 보자

 VPC with a Single Public Subnet 

VPC name :  GAMEse-web-dev-vpc

GAME서비스 이며 , se  seoul에서 만들것이고, web서비스이며, dev 개발 영역인  vpc 네트워크이다.




3.EC2

Lanunch Instance 해서 원하는 서버를 1개 만들면 된다.

서버 만들면서 수정할 부분이 조금 있어 <Next : Configuration Instance Details> 를 클릭해 만든다.


 Auto-assign Public IP  에서 Public ip(변하는 공인IP)를  Enable 해서 만든다.

Eable 해도 되고, 아니면 disable 후  나중에 EIP (고정 공인IP) 를 할당받아 매칭해도 된더.

외부에서 서버로 접속이 되어야 한다.


보안그룹

Create a new security

GAMEse-web-dev-sg

<Add Rule>

ssh도 MyIP 로 해서  나의 사무실 네트워크에서만 접속가능하도록  변경한다.

HTTP와 HTTPS도  My IP에서만 접속되도록 한다.



Select an existing Key pair

topasvga1




4.확인

만들어진 서버로 접속하자.

putty를 이용하거나 ssh이용해 공인ip로 접속한다.




성공 확인

$ ssh -i "topasvga1.pem" ec2-user@ec2-54-180-150-193.ap-northeast-2.compute.amazonaws.com

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added 'ec2-54-180-150-193.ap-northeast-


       __|  __|_  )

       _|  (     /   Amazon Linux 2 AMI

      ___|\___|___

https://aws.amazon.com/amazon-linux-2/

15 package(s) needed for security, out of 16 available

Run "sudo yum update" to apply all updates.

[ec2-user@ip-10-0-0-251 ~]$



5. 삭제

서버와 네트워크를 모두  삭제해야 비용이 나오지  않는다.

사용하지 않으면 아래 순서로 삭제해야 한다.

1) EC2 에서 서버 종료

2) VPC에서 네트워크 삭제





<2> 구성2


WEB/WAS  1개  Public과   1개의 Private DB네트워크로 나눠진 일반구성  

외부에서 DB는  직접 접속 못하게 하는 구성.



public 네트워크1개

private 네트워크 1개

public네트워크에 NAT 구성 - private에서 nat를 통해 외부인터넷을 하기 위함 - EIP가 필요함.


순서

 1.설치 지역을 선택한다.

2.EIP를 할당받는다.

3.네트워크를 구성한다.

4., 서버를 생성해 확인한다.

5. 삭제



1. 설치 지역을 선택한다. - 독일에 만들어보자.

유럽에서 서비스하려면 독일에 POP을 구축해 진행한다.

 http://console.aws.amazon.com 


독일로 변경한다. EU (Frankfurt)



2.EIP를 먼저 할당 받아야 VPC마법사로 구성이 가능하다.

EC2 - Elastic IPs  - Allocate new address




3.VPC

Launch VPC Wizard(VPC마법사) - VPC with Public and Private Subnets 

VPC name : GAMEfr-web-db-dev-vpc


Elastic IP Allocation ID 에 미리 할당받은  EIP를 매칭한다.

< Create VPC > 클릭


NAT Gateway까지 만드는데  3분정도 걸린다.




4.EC2

<Lanunch Instance>

<Next:Configure Instance Details> 클릭해 환경을 설정하며 진행한다.


Private Subnet에  서버 1대를 만들어 NAT로 외부 통신이 되는지 확인해보자.

 Step 3: Configure Instance Details

 Auto-assign Public IP 은 기본 Disable 이다 (공인IP는 할당 된지 않는다.)

 Subnet에서 Private이 아니라면 Private로  변경하여 생성한다.



 Step 6: Configure Security Group (보안그룹)

Create a new security group (보안그룹은 새로 생성한다.)

Security group name:    GAMEfr-web-db-dev-sg 


SSH 는  MyIP 로 해서  집  네트워크에서만 접속가능하도록  변경한다.

개발용이므로 HTTP와 HTTPS도  My IP에서만 접속되도록 한다.  

icmp도 허용한다.  My IP에서만 접속되도록 한다.  


Key Pair는 새로 생성한다. GAMEfr-web-db-dev-key

<Download Key Paor> 클릭 - <Lanunch Instance>

Private에 서버 1대가 생성완료되었다.



이제, Public 서브넷에 서버 1대를 만들자.

Auto-assign Public IP 를 Enable로 변경해 공인IP를 하나 받는다.




Select an existing security group

보안그룹  만들어진거 선택 : GAMEfr-web-db-dev-sg   

Key Pair  만들어진거 선택 :   GAMEfr-web-db-dev-key



보안그룹을 수정한다.

같은 네트워크에서  ssh로 서버 접속이 되도록 수정한다.

보안그룹에 10.0.0.0 /16에서 ssh 허용되도록 한다.

Public서버를 통해 Private서버에 ssh로 접속이 가능하다.


Private에 만들어진 서버는 공인IP가 없으니,  Public에 만들어진 서버를 통해 로그온해야 한다.

Private서버에 접속해 외부로 ping test해본다.

Private에 만들어진 서버는 외부로 인터넷을 사용할때 NAT를 통해 인터넷을 써야 한다.



확인

Public서버로 접속해서, Private서버 접속

 Private서버에서 외부로 ping test


$ ping 168.126.63.1

PING 168.126.63.1 (168.126.63.1) 56(84) bytes of data.

64 bytes from 168.126.63.1: icmp_seq=1 ttl=47 time=316 ms

64 bytes from 168.126.63.1: icmp_seq=2 ttl=47 time=300 ms

64 bytes from 168.126.63.1: icmp_seq=3 ttl=47 time=311 ms

성공



5.삭제

서버와 네트워크를 모두  삭제해야 비용이 나오지  않는다.

1) VPC삭제는 해당 VPC내에 서버가 모두 종료되어야 한다.

STOP된 서버가 있어도 VPC 삭제는 안된다.

2)  VPC에서 NAT gateway 삭제해야 한다.

3) EC2에서 Elastic IPs도 지워야 한다.

4) VPC 삭제 한다.



개발환경 구축 3번째  https://brunch.co.kr/@topasvga/393

감사합니다.


브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari