[AWS] AWS EC2 인스턴스 생성 및 웹 서버 연결 (보안 그룹 설정 & HTTP 접근 설정)

2025. 3. 4. 11:45·Security/Cloud

목표 아키텍처

이번 웹서버 인스턴스 생성 및 연결을 위한 목표 아키텍처는 위와 같다. 이전에 구성했던 myvpc의 퍼블릭 서브넷에 웹서버 인스턴스를 생성하고 연결하는 것을 진행할 것이다.


1. myvpc 리소스 맵

현재 VPC 네트워크는 이전에 설정한 네트워크 구성과 동일하며, 다음과 같이 퍼블릭 서브넷과 프라이빗 서브넷으로 구성되어 있다.

myvpc(퍼블릭 서브넷) 웹서버 인스턴스가 배포될 서브넷
myvpc(프라이빗 서브넷) 데이터베이스 등의 내부 리소스 배치를 위한 서브넷


2. 웹서버 인스턴스 생성

2.1. 인스턴스 설정

인스턴스 이름은 MyWebServer로 설정

AMI는 amazon linux 2023 AMI, 인스턴스 유형은 t2.micro


2.2. 네트워크 설정

네트워크 설정

    • VPC: myvpc
    • 서브넷: 퍼블릭 서브넷1
    • 퍼블릭 IP 자동 할당: 활성화

2.3. 보안그룹 설정

보안 그룹 규칙 추가 클릭

HTTP (TCP 80번 포트): 소스 유형을 위치 무관 (0.0.0.0/0)으로 설정

추가한 보안 그룹이 인바운드 규칙에 포함되었는지 확인


2.4. 사용자 데이터 입력

고급 세부 정보 > 사용자 데이터에 다음 스크립트를 입력하여 웹서버 자동 설정:

#!/bin/sh

dnf upgrade –y
dnf install -y httpd wget php-mysqli php
echo "My home page Emma" >> /var/www/html/index.html
systemctl start httpd
systemctl enable httpd

설정을 완료한 후 인스턴스 시작을 클릭하여 웹서버를 실행한다.


3. 웹서버 접속 확인

퍼블릭 IPv4 주소 확인

웹 브라우저에서 http://<퍼블릭 IPv4> 입력 후 접속

My home page Emma 페이지가 표시되면 정상적으로 동작하는 것 확인


4. 보안그룹 변경 테스트 

4.1. 특정 IP만 접근 허용

네트워크 및 보안>보안그룹으로 접속 or 인스턴스>보안 탭에서 클릭해서 이동해도 된다.

보안 그룹 > 인바운드 규칙 변경

HTTP(80) 소스를 내 IP로 변경하고 규칙을 저장하게 되면 내 IP를 제외한 다른 네트워크에서는 접속이 제한된다.


4.2. HTTP 규칙 삭제

만약 인바운드 규칙에서 HTTP(80) 삭제하게 되면 내IP도 웹페이지 접근이 차단되는 것을 확인할 수 있다. 현재는 ssh 접속만 가능하게 된 상황이다.

 

이처럼 보안 그룹을 활용하여 특정 IP만 접근을 허용하거나 차단할 수 있으며, 이는 가상 방화벽을 설정하는 개념과 유사하다.


5. 웹서버 AMI 생성 및 인스턴스 삭제

5.1. AMI 생성

EC2 인스턴스 선택 > 작업 > 이미지 및 템플릿 > 이미지 생성 클릭

이미지 이름: MyAMI01 입력 후 생성

생성된 이미지는 이미지 > AMI에서 확인 가능


5.2. 인스턴스 삭제

AMI를 생성한 후 EC2 인스턴스 종료 및 삭제

VPC는 재사용할 예정이므로 삭제하지 않는다.

 

**AMI 생성 이유

웹서버 인스턴스를 계속 실행하면 비용이 발생하므로, AMI를 생성하여 필요할 때 인스턴스를 다시 생성할 수 있도록 설정한다. AMI는 별도의 비용이 발생하지만, 실행 중인 EC2 인스턴스보다 비용이 절감되므로 활용할 수 있다.

 

이상으로 웹서버 인스턴스 생성 및 연결 실습을 마친다. 이후 필요할 때 AMI를 활용하여 웹서버를 신속하게 배포할 수 있다.

'Security > Cloud' 카테고리의 다른 글

[AWS] AWS VPC 엔드포인트 설정 및 프라이빗 인스턴스에서 S3 접근  (0) 2025.03.05
[AWS] AWS ELB & Auto Scaling을 활용한 고가용성 웹서버 구축  (0) 2025.03.04
[AWS] AWS Well-Architected Framework란?  (0) 2025.03.03
[AWS] AWS 네트워크 구성  (0) 2025.02.28
[AWS] S3를 이용한 정적 웹사이트 호스팅 및 버전 관리  (0) 2025.02.28
'Security/Cloud' 카테고리의 다른 글
  • [AWS] AWS VPC 엔드포인트 설정 및 프라이빗 인스턴스에서 S3 접근
  • [AWS] AWS ELB & Auto Scaling을 활용한 고가용성 웹서버 구축
  • [AWS] AWS Well-Architected Framework란?
  • [AWS] AWS 네트워크 구성
min8282
min8282
  • min8282
    min8282
    min8282
  • 전체
    오늘
    어제
    • 분류 전체보기 (110)
      • Security (33)
        • System & Network (2)
        • Application (5)
        • Cloud (20)
      • Dev (18)
        • Node.js (12)
        • Hadoop (3)
        • BOJ (2)
      • Web3 & Blockchain (2)
        • Web3 (2)
      • K-Shield.Jr (15)
      • Web Security Academy (3)
      • Wargame (13)
        • Dreamhack (3)
        • Bandit (10)
      • NS (16)
        • CTF (6)
  • 블로그 메뉴

    • 홈
  • 링크

    • github
  • 공지사항

  • 인기 글

  • 태그

    티스토리챌린지
    탈중앙화
    오블완
    ESC1
    metacode
    정처기필기
    amazon s3 트리거
    보안 그룹
    스마트 컨트랙트
    ELB
    정보처리기사
    정처기
    web3 보안
    metacodem
    aws lambda
    Session Manager
    AWS SSM
    File Upload
    스마트컨트랙트
    메타코드M
    web security academy
    web3
    splunk db connect
    메타코드
    systems manager
    prepared statement
    aws 트리거
    Path Traversal
    AWS CLI
    정처기 필기
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
min8282
[AWS] AWS EC2 인스턴스 생성 및 웹 서버 연결 (보안 그룹 설정 & HTTP 접근 설정)
상단으로

티스토리툴바