의 인스턴스 방화벽Amazon Lightsail

최종 업데이트 날짜 2020년 9월 1일

요약

의 방화벽 Amazon Lightsail 프로토콜 및 포트 레벨에서 인스턴스에 연결할 수 있는 트래픽을 제어합니다. 새 인스턴스를 생성하면 인스턴스에 대한 기본 액세스를 허용하는 기본 규칙 집합으로 방화벽이 미리 구성됩니다. 트래픽이 인스턴스에 도달할 수 있도록 방화벽 규칙을 추가 및 삭제하여 언제든지 인스턴스의 방화벽을 편집합니다.

최종 업데이트 날짜 2020년 7월 9일

의 방화벽 Amazon Lightsail 콘솔은 인스턴스에 연결할 수 있는 트래픽을 제어하는 가상 방화벽으로 작동합니다. 각 인스턴스는 Lightsail 은(는) 자체 방화벽입니다. 각 방화벽에는 인스턴스로 들어오는 트래픽을 필터링하는 규칙 집합이 포함되어 있습니다. 트래픽을 허용하거나 제한하는 규칙을 추가 및 삭제하여 언제든지 인스턴스의 방화벽을 편집합니다.

내용

이해 Lightsail 방화벽

모든 인터넷 트래픽 Lightsail 인스턴스는 방화벽을 통과합니다. A Lightsail 방화벽은 인스턴스로 흐르도록 허용된 인터넷 트래픽을 제어합니다. 그러나 방화벽은 유출되는 트래픽을 제어하지 않고 모든 아웃바운드 트래픽을 허용합니다.

방화벽 규칙은 항상 허용적입니다. 따라서 액세스를 거부하는 규칙을 생성할 수 없습니다. 방화벽에 규칙을 추가하여 트래픽이 인스턴스에 도달하도록 허용합니다. 방화벽에 규칙을 추가할 때 다음 예와 같이 사용할 프로토콜, 열려는 포트 및 인스턴스에 연결할 수 있는 IP 주소를 지정합니다. 인스턴스에서 사용하려는 서비스에 따라 프로토콜 및 포트 범위를 지정하는 사전 설정인 애플리케이션 계층 프로토콜 유형을 지정할 수도 있습니다.

WordPress 관리 대시보드의 플러그인 메뉴

방화벽 규칙 및 구성 가능한 파라미터는 이 안내서의 다음 몇 섹션에서 설명합니다.

방화벽 규칙 생성

클라이언트가 인스턴스 또는 인스턴스에서 실행 중인 애플리케이션과의 연결을 설정할 수 있도록 방화벽 규칙을 생성합니다. 예를 들어 모든 웹 브라우저가 인스턴스의 WordPress 애플리케이션에 연결되도록 하려면 IP 주소에서 포트 80을 통해 TCP(Transmission Contact Protocol)를 활성화하는 방화벽 규칙을 구성합니다. 이 규칙이 인스턴스의 방화벽에 이미 구성되어 있는 경우 이를 삭제하여 웹 브라우저가 인스턴스의 WordPress 애플리케이션에 연결할 수 없도록 차단할 수 있습니다.

연결을 설정해야 하는 컴퓨터의 IP 주소에서만 포트 22를 통한 TCP를 활성화하는 방화벽 규칙을 구성하여 SSH 클라이언트가 인스턴스에 연결하고 서버에서 관리 작업을 수행하도록 설정할 수도 있습니다. 이 경우 인스턴스에 대한 SSH 연결을 설정하는 IP 주소를 허용하지 않을 것입니다. 그렇게 하면 인스턴스에 보안 위험이 발생할 수 있습니다.

참고

이 섹션에서 설명하는 방화벽 규칙 예제는 기본적으로 인스턴스의 방화벽에 존재할 수 있습니다. 자세한 내용은 기본 방화벽 규칙 이 안내서의 후반부에 나와 있습니다.

특정 포트에 대한 규칙이 여러 개 있는 경우 최대 허용 규칙을 적용합니다. 예를 들어 IP 주소 192.0.2.1에서 TCP 포트 22(SSH)에 대한 액세스를 허용하는 규칙을 추가하는 경우. 그러면 모든 사람으로부터 TCP 포트 22에 대한 액세스를 허용하는 다른 규칙을 추가합니다. 결과적으로 모든 사람이 TCP 포트 22에 액세스할 수 있습니다.

프로토콜 지정

프로토콜은 두 컴퓨터 간에 데이터가 전송되는 형식입니다. Lightsail을 사용하면 방화벽 규칙에서 다음 프로토콜을 지정할 수 있습니다.

  • TCP(Transmission Contact Protocol) 은(는) 주로 클라이언트와 인스턴스에서 실행되는 애플리케이션 간의 연결을 설정하고 유지하는 데 사용되며, 이 경우 데이터 교환이 완료될 때까지 사용됩니다. 이 프로토콜은 널리 사용되는 프로토콜이며 방화벽 규칙에서 자주 지정할 수 있습니다. TCP는 전송된 데이터가 누락되지 않고 전송된 모든 데이터가 의도한 수신자에게 전송되도록 보장합니다. 높은 안정성이 요구되는 네트워크 애플리케이션과 웹 브라우징, 금융 거래 및 문자 메시징과 같이 전송 시간이 상대적으로 덜 중요한 네트워크 애플리케이션에 적합합니다. 데이터의 일부가 손실되면 이러한 사용 사례가 상당한 가치를 잃게 됩니다.

  • UDP(User Datagram Protocol) 은(는) 주로 클라이언트 간에 실행되는 짧은 대기 시간과 손실 방지 연결을 설정하는 데 사용됩니다. 게임, 음성 및 비디오 통신과 같이 인식되는 지연 시간이 중요한 네트워크 애플리케이션에 적합합니다. 이러한 사용 사례는 인식된 품질에 악영향을 주지 않고 일부 데이터 손실을 경험할 수 있습니다.

  • ICMP(Internet Control Message Protocol) 는 주로 데이터가 의도한 목적지에 도달하는지 여부를 결정하는 것과 같은 네트워크 통신 문제를 진단하는 데 사용됩니다. 로컬 컴퓨터와 인스턴스 간의 연결 속도를 테스트하는 데 사용할 수 있는 Ping 유틸리티에 적합합니다. 데이터가 인스턴스에 도달한 후 로컬 컴퓨터로 돌아오는 데 걸리는 시간을 보고합니다.

  • 모두 은(는) 모든 프로토콜 트래픽을 인스턴스로 흐르게 하는 데 사용됩니다. 지정할 프로토콜을 잘 모르는 경우 이 프로토콜을 지정합니다. 여기에는 위에 지정된 프로토콜뿐만 아니라 모든 인터넷 프로토콜이 포함됩니다. 자세한 내용은 임상시험 계획서 번호 on the 인터넷 지정 번호 당국 웹사이트.

포트 지정

컴퓨터가 키보드 및 마우스 같은 주변 장치와 통신할 수 있는 컴퓨터의 물리적 포트와 마찬가지로, 네트워크 포트는 인스턴스의 인터넷 통신 엔드포인트 역할을 합니다. 컴퓨터가 인스턴스에 연결하려고 할 때 통신을 설정하기 위해 포트를 노출합니다.

방화벽 규칙에서 지정할 수 있는 포트의 범위는 0에서 65535 사이입니다. 클라이언트가 인스턴스와의 연결을 설정할 수 있도록 방화벽 규칙을 생성할 때 사용할 프로토콜(이 안내서의 앞부분에서 설명)과 연결을 설정할 수 있는 포트 번호를 지정합니다. 프로토콜 및 포트를 사용하여 설정할 수 있는 IP 주소를 지정할 수도 있습니다. 이에 대해서는 이 안내서의 다음 섹션에서 설명합니다.

다음은 일반적으로 사용되는 포트 중 일부와 함께 해당 포트를 사용하는 서비스입니다.

  • FTP(File Transfer Protocol)를 통한 데이터 전송은 포트 20을 사용합니다.

  • FTP를 통한 명령 제어는 포트 21을 사용합니다.

  • SSH(Secure Shell)는 포트 22를 사용합니다.

  • Telnet 원격 로그인 서비스 및 암호화되지 않은 텍스트 메시지는 포트 23을 사용합니다.

  • SMTP(Simple Mail Transfer Protocol) 이메일 라우팅은 포트 25를 사용합니다.

  • DNS(Domain Name System) 서비스는 포트 53을 사용합니다.

  • 웹 브라우저에서 웹 사이트에 연결하는 데 사용하는 HTTP(Hypertext Transfer Protocol)는 포트 80을 사용합니다.

  • 이메일 클라이언트가 서버에서 이메일을 검색하는 데 사용하는 POP3(Post Office Protocol)는 포트 110을 사용합니다.

  • NNTP(Network News Transfer Protocol)는 포트 119를 사용합니다.

  • NTP(Network Time Protocol)는 포트 123을 사용합니다.

  • 디지털 메일을 관리하는 데 사용되는 IMAP(Internet Message Access Protocol)는 포트 143을 사용합니다.

  • SNMP(Simple Network Management Protocol)는 포트 161을 사용합니다.

  • 웹 브라우저에서 웹 사이트에 대해 암호화된 연결을 설정하기 위해 사용하는 TLS/SSL을 통한 HTTPS(HTTP Secure) HTTP는 포트 443을 사용합니다.

자세한 내용은 서비스 이름 및 전송 프로토콜 포트 번호 레지스트리 on the 인터넷 지정 번호 당국 웹사이트.

애플리케이션 계층 프로토콜 유형 지정

방화벽 규칙을 생성할 때 인스턴스에서 활성화하려는 서비스에 따라 규칙의 프로토콜 및 포트 범위를 지정하는 사전 설정인 애플리케이션 계층 프로토콜 유형을 지정할 수 있습니다. 이렇게 하면 SSH, RDP, HTTP 등의 서비스에 사용할 공통 프로토콜과 포트를 검색할 필요가 없습니다. 이러한 애플리케이션 계층 프로토콜 유형을 선택하기만 하면 프로토콜과 포트가 자동으로 지정됩니다. 자신의 프로토콜 및 포트를 지정하려는 경우, 사용자 지정 규칙 애플리케이션 계층 프로토콜 유형을 사용하여 이러한 매개 변수를 제어할 수 있습니다.

참고

애플리케이션 계층 프로토콜 유형은 Lightsail 콘솔을 통해서만 지정할 수 있습니다. 다음을 사용하여 애플리케이션 계층 프로토콜 유형을 지정할 수 없습니다. Lightsail API, AWS Command Line Interface (AWS CLI) 또는 sdks.

다음 응용 프로그램 계층 프로토콜 유형을 사용할 수 있습니다. Lightsail 콘솔:

  • 사용자 지정 – 이 옵션을 선택하여 자신의 프로토콜 및 포트를 지정합니다.

  • 모든 프로토콜 – 모든 프로토콜을 지정하고 자신의 포트를 지정하려면 이 옵션을 선택합니다.

  • 모든 TCP – TCP 프로토콜을 사용하려면 이 옵션을 선택하고 어떤 포트를 열어야 할지 잘 모르겠습니다. 이렇게 하면 모든 포트(0-65535)에서 TCP가 활성화됩니다.

  • 모든 UDP – UDP 프로토콜을 사용하려면 이 옵션을 선택합니다. 하지만 어떤 포트를 열어야 할지 잘 모르겠습니다. 이렇게 하면 모든 포트(0-65535)에서 UDP가 활성화됩니다.

  • 사용자 지정 ICMP – ICMP 프로토콜을 사용하고 ICMP 유형 및 코드를 정의하려면 이 옵션을 선택합니다. ICMP 유형 및 코드에 대한 자세한 내용은 다음을 참조하십시오. 제어 메시지 켜짐 위키피디아.

  • DNS – 인스턴스에서 DNS를 활성화하려는 경우 이 옵션을 선택합니다. 이렇게 하면 포트 53를 통해 TCP 및 UDP를 활성화할 수 있습니다.

  • HTTP – 웹 브라우저를 사용해 인스턴스에 호스팅된 웹 사이트에 접속하도록 설정할 때 이 옵션을 선택합니다. 이렇게 하면 포트 80을 통해 TCP가 활성화됩니다.

  • HTTPS – 웹 브라우저를 활성화하여 인스턴스에 호스팅된 웹 사이트에 암호화된 연결을 설정할 때 이 옵션을 선택합니다. 이렇게 하면 포트 443을 통해 TCP가 활성화됩니다.

  • mysql/오로라 – 클라이언트가 인스턴스에 호스팅된 mysql 또는 Aurora 데이터베이스에 연결할 수 있도록 이 옵션을 선택합니다. 이렇게 하면 포트 3306을 통해 TCP가 활성화됩니다.

  • Oracle-RDS – 고객이 인스턴스에 호스팅된 Oracle 또는 RDS 데이터베이스에 연결할 수 있도록 이 옵션을 선택합니다. 이렇게 하면 포트 1521을 통해 TCP가 활성화됩니다.

  • Ping(ICMP) – 이 옵션을 선택하면 Ping 유틸리티를 사용하여 요청에 응답할 수 있습니다. 이렇게 하면 ICMP 유형 8(에코) 및 코드-1(모든 코드)이 활성화됩니다.

  • RDP – RDP 클라이언트가 인스턴스에 연결되도록 하려면 이 옵션을 선택합니다. 이렇게 하면 포트 3389를 통해 TCP가 활성화됩니다.

  • SSH – SSH 클라이언트가 인스턴스에 연결할 수 있도록 하려면 이 옵션을 선택합니다. 이렇게 하면 포트 22를 통해 TCP가 활성화됩니다.

소스 IP 주소 지정

기본적으로 방화벽 규칙은 모든 IP 주소가 지정된 프로토콜과 포트를 통해 인스턴스에 연결되도록 허용합니다. 이는 HTTP 및 HTTPS를 통한 웹 브라우저와 같은 트래픽에 이상적입니다. 그러나 모든 IP 주소가 해당 애플리케이션을 사용하여 인스턴스에 연결하는 것을 허용하지 않기 때문에 SSH 및 RDP 같은 트래픽에 대한 보안 위험이 있습니다. 이러한 이유로 방화벽 규칙을 IP 주소 또는 IP 주소 범위로 제한하도록 선택할 수 있습니다. 단일 IPv4 주소(예: 203.0.113.1) 또는 IPv4 주소 범위를 지정할 수 있습니다. 에서 Lightsail 콘솔은 대시(예: 192.0.2.0-192.0.2.255) 또는 CIDR 블록 표기법(예: 192.0.2.0/24)을 사용하여 지정할 수 있습니다. CIDR 블록 표기에 대한 자세한 내용은 다음을 참조하십시오. Classless Inter-Domain 라우팅 켜짐 위키피디아.

기본 Lightsail 방화벽 규칙

새 인스턴스를 생성하면 인스턴스에 대한 기본 액세스를 허용하는 다음 기본 규칙 집합으로 방화벽이 미리 구성됩니다. 기본 규칙은 생성하는 인스턴스 유형에 따라 다릅니다. 이러한 규칙은 애플리케이션, 프로토콜, 포트 및 소스 IP 주소(예: 애플리케이션 - 프로토콜 - 포트 - 소스 IP 주소)로 나열됩니다.

Amazon Linux, Amazon Linux 2, centos, Debian, freebsd, opensuse 및 Ubuntu(기본 운영 체제)

  • SSH - TCP - 22 - 모든 IP 주소

    HTTP - TCP - 80 - 모든 IP 주소

  • WordPress, Ghost, Joomla! 및 Drupal(CMS 애플리케이션)

  • SSH - TCP - 22 - 모든 IP 주소

    HTTP - TCP - 80 - 모든 IP 주소

    HTTPS - TCP - 443 - 모든 IP 주소

  • cpanel 및 WHM(CMS 애플리케이션)

  • SSH - TCP - 22

    DNS(UDP) - UDP - 53

    DNS(TCP) - TCP - 53

    HTTP - TCP - 80

    HTTPS - TCP - 443

    사용자 지정 - TCP - 2078

    사용자 지정 - TCP - 2083

    사용자 지정 - TCP - 2087

    사용자 지정 - TCP - 2089

  • LAMP, Django, Node.js, MEAN, GitLab 및 LEMP/Nginx(개발 스택)

  • SSH - TCP - 22 - 모든 IP 주소

    HTTP - TCP - 80 - 모든 IP 주소

    HTTPS - TCP - 443 - 모든 IP 주소

  • Magento(전자 상거래 애플리케이션)

  • SSH - TCP - 22 - 모든 IP 주소

    HTTP - TCP - 80 - 모든 IP 주소

    HTTPS - TCP - 443 - 모든 IP 주소

  • Redmine(프로젝트 관리 애플리케이션)

  • SSH - TCP - 22 - 모든 IP 주소

    HTTP - TCP - 80 - 모든 IP 주소

    HTTPS - TCP - 443 - 모든 IP 주소

  • Plesk(호스팅 스택)

  • SSH - TCP - 22 - 모든 IP 주소

    HTTP - TCP - 80 - 모든 IP 주소

    HTTPS - TCP - 443 - 모든 IP 주소

    사용자 지정 - TCP - 53 - 모든 IP 주소

    사용자 지정 - UDP - 53 - 모든 IP 주소

    사용자 지정 - TCP - 8443 - 모든 IP 주소

    사용자 지정 - TCP - 8447 - 모든 IP 주소

  • Windows Server 2019, Windows Server 2016 및 Windows Server 2012 R2

  • SSH - TCP - 22 - 모든 IP 주소

    HTTP - TCP - 80 - 모든 IP 주소

    RDP - TCP - 3389 - 모든 IP 주소

  • SQL Server Express 2016

  • SSH - TCP - 22 - 모든 IP 주소

    HTTP - TCP - 80 - 모든 IP 주소

    RDP - TCP - 3389 - 모든 IP 주소

  • 방화벽에 대한 자세한 정보

    다음은 에서 방화벽을 관리하는 데 도움이 되는 몇 가지 문서입니다.Lightsail.