아마존 AWS 클라우드 프리티어 - 2 EC2(VM/VPS) 생성

Last Updated on 12월 17, 2020 by 태랑(정현호)


[시작전에] AWS 클라우드 프리티어 가입 생성 부터 , Nginx PHP MariaDB 스택구성 , WordPress 구성까지 이어지는 연재글의 중간글 입니다.

다음 글의 링크는 하단에 있습니다.


이전글 - AWS 클라우드 계정 생성과 계정의 2차 인증(2FA) 인 OTP 설정






Elastic Compute Cloud



EC2는 Elastic Compute Cloud (Amazon EC2)의 약자로써 Amazon Web Services (AWS) 클라우드에서 확장 가능한 가상 컴퓨팅를 의미 합니다.


Iaas의 즉 인프라 시스템 서비스 중 하나로 AWS 서비스의 시작 혹은 기본 이면서 가장 중요한 서비스 중 하나 라고 할 수 있습니다.


이런 IaaS의 서버 서비스는 각 클라우드 서비스회사 마다 용어나 타입등은 서로간의 약간씩은 차이가 있는 부분이 있습니다.






EC2 생성



EC2 를 생성하기 전에 우측 상단에서 리전을 선택/변경 해줍니다.
당연히 서울이 latency가 가장 좋기 때문에 저는 서울 리전으로 변경 하도록 하겠습니다.










리전 변경 후 아래와 같이 메인 화면에서 EC2 를 선택 합니다.











좌측 상단에 프리 티어만 에 체크 하게 되면 프리티어로 사용가능한 이미지만 리스트업 됩니다.












아래 커뮤니티 AMI 에 보면 더 많은 종류의 이미지가 있습니다.
저는 아직 많이 사용 되는 LTS 버전인 우분투 18.04 프리티어를 선택하여 생성하였습니다.










[참고]우분투 리눅스는 LTS 라는 Long Term Support 버전이 있습니다

우분투 Ubuntu 는 6개월에 한번씩 릴리즈가 되고 LTS 버전이 아닐 경우 짧으면 9개월정도 까지 서포트가 됩니다.

짝수 년도 4월달에 나오는 릴리즈에 대해서 LTS 버전이 되고 LTS 버전은 통상 5년간 지원(support) 되게 됩니다.


다만 18.04 같은 경우 10년 Support 로 확장 됨을 발표 하였습니다

이는 Extended security maintenance 이라는 이름 기본 5년에서 5년이 추가 된 것 입니다.
가장 최신의 LTS 버전은 20.04 로 올해 출시된 버전 입니다.









스펙은 프리티어가 가능한 General purpose 를 선택하였습니다.
그런다음 하단의 "다음" 인스턴스 세부 정보 구성" 을 클릭 합니다.









스펙의 세부 내역등을 확인 하고 하단의 "다음: 스토리지 추가" 항목으로 이동 합니다.










프리티어에서 사용 할 수 있는 최대의 SSD 스토리지는 30GB 까지 이고 기본적으로 설치시 8GB 로 설치 됩니다. 

그래서 저는 해당 이미지에 30GB를 다 설정하기 위해서 변경하였습니다.










태그 추가에 키와 값을 구분되게 입력 합니다. 입력 완료 후 하단의 "다음: 보안 그룹 구성" 으로 이동 합니다.









보안 그룹 에서는 기본적으로 SSH(TCP:22 번 포트) 가 0.0.0.0/0(모든 대역 수신) 으로 오픈 되어 있습니다.
ssh는 접속을 해야 하니 해당 내역은 그대로 사용 하시면 됩니다.

생성 후 바로 포트를 오픈 하여 사용할 서비스가 있다면 지금 단계에서 규칙을 추가 하여도 됩니다.









최종 검토 단계 이고 확인 후 하단의 "시작하기" 를 클릭 합니다.








SSH 키 설정 단계 입니다. 여기서는 "새 키페어 생성" 을 선택 하고
아래에 "키 페어 이름" 을 입력 한 후  "키 페어 다운로드" 를 클릭 하여 키를 다운로드 받습니다.








private key(개인키)를 다운로드 받았다면 인스턴스 시작을 클릭 합니다.








인스턴스 시작과정에서 아래와 같은 페이지가 보인다면 "결제 알림 생성" 을 클릭 합니다.









알림 관련 설정 사항중에서 비용관련해서는 이메일로 알림을 받는 것으로 설정 하는것이 좋기 때문에 이메일을 입력 및 체크박스 체크 후 하단의 "기본 설정 저장" 을 클릭 합니다.










열려있던 알림설정 페이지를 닫고 원래 페이지로 돌아와서 "인스턴스 보기" 를 클릭 합니다.












어느정도 시간이 지났다면 아래와 같이 인스턴스 상태가 실행중으로 정상적으로 기동된것을 확인 할 수 있습니다.

인스턴스 ID를 클릭 합니다.











인스턴스 ID를 클릭하면 아래와 같이 상세정보를 확인 할 수 있습니다.

이중에서 먼저 public IPv4 주소(IP)를 복사를 하고 putty 에서 설정을 계속 하도록 하겠습니다.











SSH Key 등록 설정



# Window 환경 기준 SSH 설정

먼저 윈도우 환경에서 다운로드 받은 개인키로  ssh의 접속 설정에 대해서 기술하도록 하겠습니다.
Mac 환경은 아래쪽에 기재되어 있으므로 바로 아래단계에서 내용을 확인 하시면 됩니다.


EC2 생성 중에 다운로드 받은 파일 입니다. 해당 파일을 사용 하도록 하겠습니다.




putty 사용
먼저 아래 링크를 클릭하여 putty를 다운 받아서 설치를 합니다.



MSI - Windows Installer  방식으로 다운 받아서 설치하시면 되며 32비트나 64비트 둘중 하나를 설치 하시면 됩니다.

저는 32비트를 설치 하였습니다.







설치가 완료 되었다면 시작 -> putty-> PuTTYgen 을 실행 합니다.







아래와 같이 Load 를 클릭 합니다.








키 선택 창에서 먼저 파일 종류를 All Files 로 선택 합니다

그런 다음 위에서 AWS 에서 다운 받은 개인키를 선택해 열기를 클릭 합니다.










아래와 같이 Openssh 를 통해 생성된 키라고 안내가 됩니다.
확인을 누릅니다.









아래와 같이 "Save private key" 를 선택 합니다.











원하는 이름을 입력 한 후 저장을 클릭 합니다.











이제 putty 를 실행 합니다










실행 후 먼저 Connection -> SSH -> Auth 순으로 이동 합니다.
위에서 생성한 개인키를 아래와 같이 이미지 와 같이 선택합니다.

여기서 선택하는 파일은 위에서 puttygen 을 통해 생성한 파일 입니다.












그 다음은 Connection -> Data 로 이동하여 아래와 같이 계정명을 입력 해줍니다.

클라우드 서비스 및 OS 마다 계정명은 다 다릅니다.

아래는 AWS EC2의 Ubuntu 기준 계정명(ubuntu) 입니다.










Session 항목으로 이동하여 IPSave Sessions 에 저장할 세션명을 입력 후 Save 를 클릭 합니다.

아래의 IP 는 예시입니다(실제 IP 아님)











그 다음 저장한 세션을 선택 후 Open 을 클릭 합니다.










처음 접속 시 아래와 같은 창이 팝업 되고 예(Y) 를 선택 합니다.










그럼 아래와 같이 정상적으로 접속이 이루어지게 됩니다.









[참고] 맥이나 윈도우에서 SSH Key 설정 및 접속에 대해서는 아래 포스팅을 참조하시면 더 많은 내용이 있습니다.








# Mac 환경에서 SSH Key 사용 설정

이번에는 Mac 환경에서 다운로드 받은 개인키로 ssh를 접속 하도록 설정 하는 내용 입니다.


키는 아래와 같이 EC2 생성시 다운로드 받은 개인키를 이용 할 것입니다.









mac 터미널 을 이용

터미널을 실행 후 파일을 복사 및 권한을 변경 합니다.

cd Downloads/
cp AWS-xxxxx.pem.txt  ~/.ssh
chmod 600 ~/.ssh/AWS-xxxxx.pem.txt


* key 파일의 권한 600이나 400 이어야 합니다.


만약 .ssh 디렉토리가 없다면 생성하고 진행 합니다.
mkdir ~/.ssh



복사가 완료 되었다면 .ssh 디렉토리로 이동 후 config 파일을 아래와 같이 생성 합니다.
cd ~/.ssh
vi config




### 파일 내용 ###

Host aws-cloud
HostName 123.123.123.123
User ubuntu
IdentityFile ~/.ssh/AWS-xxxxxxxxxxx.pem.txt


Host 에는 접속 할 때 사용할 이름입니다.  사용하고자 하는 이름을 기재 하면 됩니다.
HostName 에는 IP 를 입력 합니다(위의 아이피는 예시 입니다)
User 에는 유저명을 기재 합니다.
IdentifyFile 에는 .ssh 로 복사(이동)한 AWS에서 다운받은 키 이름을 위와 같은 형식으로 기재합니다.





파일이 생성되었다면 아래와 같이 접속 하시면 됩니다.
$ ssh aws-cloud







이어지는 다음 글
리눅스 VM 컴퓨터 생성 이후 보안적으로 먼저 해야 할 Fail2ban 설치 및 설정

AWS 고정 IP인 서비스 - 탄력적 IP 생성 및 할당

EC2 에 생성한 우분투 18.04 서버 초기 설정 내역