회사 개요 #
(AWS) 탄력적 로드 밸런서(ELB) 웹 트래픽을 여러 사이트에 분산합니다. EC2 인스턴스, 탄력적 컨테이너 서비스(ECS) 및 IP 주소. ELB 또한 고가용성을 보장하기 위해 다양한 가용 영역에 걸쳐 트래픽의 균형을 맞추는 기능도 있습니다. 그러나 사용에는 몇 가지 제한 사항이 있습니다. AWS'에스 ELB, 여기에는 다음이 포함됩니다.
- 제한된 로드 밸런싱 방법. 기본적으로, ELB 만 사용합니다 라운드 로빈 알고리즘이며 콘텐츠 전환 기능이 제한되어 있습니다.
- 이후 ELB 인터넷에서 Virtual Private Cloud의 인스턴스로의 트래픽을 관리하도록 설계되었습니다.(VPC), 온프레미스 리소스 간의 로드 밸런싱에는 적합하지 않습니다.
이 기사에서는 로드 밸런싱 서비스를 더 나은 대안으로 교체하는 방법에 대해 설명합니다. RELIANOID ADC. AWS ELB와 AWS ELB를 자세히 비교하려면 RELIANOID, 이 글을 참고하세요 AWS 및 RELIANOID 비교.
사전 조건 #
구성을 전송하기 전에 이러한 요구 사항을 충족하는지 확인하십시오. AWS ELB 에 RELIANOID의 모든 기능을 갖춘 ADC입니다.
- A RELIANOID ADC 노드는 PC, 베어메탈, 가상 환경에 설치되어 있거나 활성 노드가 있어야 합니다. ZVN클라우드 계정입니다. 평가 요청 온프레미스 배포용.
- 웹 그래픽 인터페이스에 액세스할 수 있어야 합니다. 그렇지 않다면 빨리 따라오세요 설치 설명서.
- AWS ELB를 적극적으로 사용하고 아래 섹션에서 논의할 개념을 잘 알고 있어야 합니다.
- 가상 서버를 생성할 수 있어야 합니다. RELIANOID 로드 밸런서. 빠른 가이드는 다음과 같습니다. 레이어 4 및 레이어 7 가상 서버 구성.
주의 사항
RELIANOID 에 템플릿이 있습니다 AWS 마켓 플레이스. 배포 RELIANOID AWS에서는 클릭 몇 번만으로 원활하게 진행됩니다.
기본 개념 #
경청자: 리스너는 레이어 7 인바운드 트래픽을 확인하고 이를 필요한 대상 그룹에 전달합니다. 일반적으로 리스너는 다음을 확인하도록 구성됩니다. HTTP or HTTPS 포트의 트래픽 80 or 443 각기. 에서 사용하는 기본 레이어 7 리스너 RELIANOID ADC는 HTTP HTTPS.
대상 그룹: 대상 그룹은 서비스를 제공하기 위해 함께 작동하는 EC2 인스턴스의 클러스터입니다. 대상 그룹 내의 이러한 모든 인스턴스에는 클라이언트의 요청을 처리하는 동일한 애플리케이션 코드가 있어야 합니다. 대상 그룹은 다음과 같습니다. 예배 사용하는 경우 RELIANOID ADC.
상태 점검: 상태 확인은 각 EC2 인스턴스에서 서비스의 작동과 응답성을 모니터링합니다. 서비스 또는 EC2 인스턴스가 다운되면 상태 확인에서 응답 없음을 확인하고 로드 밸런서는 트래픽을 정상 인스턴스로 리디렉션합니다. RELIANOID 라는 플러그인 세트를 사용합니다. 농장 수호자 백엔드 서버 및 해당 서비스의 상태를 모니터링합니다.
로드 밸런서 유형: AWS ELB는 세 가지 유형의 로드 밸런서를 제공합니다. 여기에는 다음이 포함됩니다 어플리케이션, 네트워크 클래식 로드 밸런서. 클래식 로드 밸런서는 더 이상 사용되지 않으며 네트워크 어플리케이션 로드 밸런서를 사용합니다. RELIANOID ADC 레이어 7 로드 밸런서는 HTTP 네트워크 로드 밸런서에는 프로필이 있습니다. L4xNAT 윤곽.
보안 그룹: 보안 그룹은 인바운드 및 아웃바운드 트래픽을 모니터링하고 제어하는 방화벽 규칙 집합입니다. RELIANOID ADC가 내장되어 있습니다. IPDS 로드 밸런서에 대한 불량 트래픽을 필터링하고 무단 액세스에 대한 모든 시도를 차단하도록 정책이 설정된 모듈입니다. 다음에 액세스하여 방화벽 규칙을 만들 수 있습니다. WAF 내 옵션 IPDS 기준 치수.
ACM : ACM 서비스를 통해 관리자는 AWS의 내부 연결된 리소스 내에서 사용할 SSL/TLS 인증서를 배포하고 관리할 수 있습니다. 내부 SSL 인증서를 관리하려면 RELIANOID 로드 밸런서, 다음을 통해 액세스 LSLB >> SSL 인증서. 또는 다음을 통해 사용자 정의 자체 서명 SSL 인증서를 생성할 수 있습니다. 암호화하자. 에 내장된 프로그램 RELIANOID 로드 밸런서.
EC2 인스턴스 또는 대상: 이는 웹에서 받은 요청을 처리하는 애플리케이션 코드를 호스팅하는 다운스트림 Linux 가상 서버입니다. 이러한 가상 서버를 백엔드 사용하는 경우 RELIANOID ADC.
구성 예: SSL 인증서 #
클라이언트와 로드 밸런서 간에 전송되는 데이터를 암호화하려면 호스트 간의 통신을 안전하게 유지하기 위해 SSL 인증서를 설치해야 합니다. 다음과 같은 민감한 정보 로그인 자격 증명 신용 카드 번호 보안 전송 계층을 통해 전송되어야 합니다.
이 섹션에서는 SSL 인증서 설치에 대해 설명합니다. RELIANOID AWS ACM을 참조한 ADC입니다.
AWS에서 사용할 자체 서명 SSL 인증서 구성 #
ELB에 SSL 인증서를 설치하려면 다음 단계를 따르세요.
- 생성하려면 CSR EC2 인스턴스의 경우 해당 인스턴스의 Linux 콘솔에 액세스해야 합니다.
- EC2 인스턴스에 연결한 후 다음 디렉터리로 이동합니다. /etc/pki/tls/private/
- 다음 명령을 사용하여 새 개인 키인 2048비트 RSA를 생성합니다. sudo openssl genrsa -out custom.key
- 다음 명령을 사용하여 이전 생성 개인 키를 제공하는 인증서를 생성합니다. openssl req -new -x509 -nodes -sha1 -days 365 -extensions v3_ca -custom.key -out custom.crt
- SSL 인증서에 필요한 세부 정보를 입력하세요.
- 국가: ISO 국가 코드 2개를 입력하세요.
- 주 / 지방 : 회사가 위치한 지역을 입력하세요.
- 시티: 현재 위치한 도시 이름을 입력하세요.
- 일반적인 이름 : 정규화된 도메인 이름을 입력하세요. FQDN, 예: www.relianoid.com
- 암호 또는 비밀번호: 이 예에서는 비밀번호 생성을 무시할 수 있습니다. 그동안 생성된 인증서는 *.pem 파일 형식.
- 다음 명령을 사용하여 두 인증서를 모두 PKCS12 번들로 컴파일합니다.openssl pkcs12 -inkey custom.key -in custom.crt -export -out custom.p12
- AWS CLI가 이미 설치되어 있다고 가정하면 일반적으로 다음 명령을 사용하여 생성된 인증서(custom.crt)와 프라이빗 키(custom.key)를 AWS Certificate Manager에 업로드해야 합니다. aws acm import-certificate — 인증서 파일://custom.crt — 개인 키 파일://custom.key — 지역 us-east-2
- 이제 이 인증서는 생성 마법사의 "ACM에서 인증서 선택(권장)" 옵션에서 사용할 수 있습니다.
다음에서 사용할 자체 서명 SSL 인증서 구성 RELIANOID ADC #
- 사용자 정의 SSL 인증서를 생성하려면 RELIANOID ADC 인스턴스에서는 어플라이언스의 명령줄을 사용하여 다음 디렉터리를 찾습니다.
- 다음 명령을 사용하여 암호 없이 개인 키를 생성합니다.
- 인증서 서명 요청 생성(CSR) 다음 명령을 사용하여 개인 키에 대해
- 필요한 세부 정보를 입력하십시오.
- 이름: CSR을 식별하기 위한 설명 이름입니다.
- 국가: 귀하가 위치한 국가의 ISO 코드입니다.
- 일반 이름 : 정규화된 도메인 이름. (FQDN)(예: www.example.com)
- 분할: 귀하의 부서는 건강, IT 또는 보안일 수 있습니다.
- 소재지: 당신이 위치한 도시.
- 상태: 조직이 위치한 주입니다.
- 관리: 조직의 법적 이름(예: RELIANOID SL.
- 이메일: 당신의 이메일 주소를 입력 해주세요. 반드시 도메인 이름에 대한 이름이어야 하는 것은 아닙니다.
- 생성 자체 서명 인증서 개인 키와 CSR 인증서를 모두 사용합니다. 이 예에서 자체 서명된 인증서의 수명은 1년이며 출력 형식은 다음과 같습니다. .PEM. 다음 명령을 사용하십시오.
- 이 인증서는 다음 기간 동안 사용할 수 있습니다. LSLB >> SSL 인증서 안내
CD /usr/local/zevenet/config/인증서
openssl genrsa -out custom.key 2048
openssl req -new -key custom.key -out custom.csr
openssl x509 -in custom.csr -outform PEM -out custom.pem -req -signkey custom.key -days 365
SSL 인증서에 대해 자세히 알아보려면 RELIANOID ADC는 다음 리소스를 참조하세요.
구성 예: 웹 애플리케이션 방화벽 #
보안 기능으로 A WAF 악성 트래픽을 필터링하고 차단하여 웹 애플리케이션을 보호합니다. WAF는 일반적으로 로드 밸런서 앞에 배포되며 다음과 같은 다양한 악성 공격으로부터 웹 애플리케이션을 보호하도록 설계되었습니다. XSS(교차 사이트 스크립팅), SQL 인젝션및 기타 공격을 포함합니다. OWASP 상위 10위.
WAF는 들어오는 HTTP 트래픽을 검사하고 일련의 규칙이나 보안 정책에 대해 분석함으로써 안전하지 않은 것으로 간주되는 모든 트래픽을 차단합니다. RELIANOID ADC는 IP 블랙리스트, RBL 정책, DoS 보호 등과 같은 고급 보안 기능을 제공합니다.
이 섹션에서는 보호 방법에 대해 설명합니다. SQL 인젝션 AWS에서 유사한 구성을 시뮬레이션합니다. RELIANOID ADC.
AWS 구성 #
사용하려면 SQL 인젝션 보호하려면 Elastic Load Balancer 뒤에 최소 2개 또는 2개의 EC2 인스턴스가 있어야 합니다. 이러한 ECXNUMX 인스턴스에는 보호하려는 웹 애플리케이션이 있어야 합니다.
- AWS의 웹 콘솔 내에서 다음을 검색하십시오. WAF 및 쉴드을 클릭하고 표시되는 링크를 클릭하세요.
- 온 클릭 웹 ACL 메뉴 항목을 선택합니다.
- 예를 들어 트래픽이 발생하는 지역을 선택하세요. 유럽(프랑크푸르트).
- 클릭 웹 ACL 생성 버튼을 클릭합니다.
- $XNUMX Million 미만 규칙 및 규칙 그룹 추가은 클릭 규칙 추가 드롭다운 화살표.
- 선택 관리형 규칙 그룹 추가. 다음을 포함하여 더 많은 관리형 규칙 그룹을 찾을 수 있습니다. 봇 제어, Amazon IP 평판 목록, SQL 데이터베이스등
- 선택 SQL 데이터베이스 토글 버튼을 활성화하여 웹 ACL에 추가.
- 아래로 스크롤하여 규칙 추가 버튼을 클릭합니다.
- 내 일치하지 않는 규칙에 대한 기본 작업, 옵션을 다음과 같이 둡니다. 허용.
- 클릭 다음 버튼을 클릭합니다.
- 내 규칙 우선순위 설정 섹션에서 이 섹션을 사용하여 규칙에 우선순위를 추가한 다음 버튼을 클릭합니다. 다음.
- 내 측정항목 구성 섹션에서는 변경할 내용이 없으므로 버튼을 클릭하세요. 다음.
- 내 웹 ACL 검토 및 생성 섹션에서 웹 ACL 생성 버튼을 클릭합니다.
- 웹 ACL을 성공적으로 생성한 후 방금 생성한 ACL을 클릭합니다.
- 탭을 클릭하세요 관련 AWS 리소스.
- 보호하려는 애플리케이션 로드 밸런서를 추가합니다. 리소스를 추가하면 SQL 데이터베이스에 대한 삽입을 차단하도록 규칙이 설정됩니다.
RELIANOID 구성 #
SQL 주입 보호를 활성화하려면 다음을 생성해야 합니다. WAF 규칙 세트 먼저.
- We Buy Orders 신청서를 클릭하세요. IPDS 사이드 메뉴에서 클릭하여 확장하세요.
- 온 클릭 WAF 그것을 확장하는 옵션.
- 온 클릭 규칙 세트 옵션을 선택합니다.
- 온 클릭 WAF 규칙 세트 생성 버튼을 클릭합니다.
- 할당 이름 이 규칙 세트를 쉽게 식별합니다.
- 떠나 규칙 세트 복사 필드 –규칙 없음–.
- 클릭 신청 버튼을 클릭하여 변경 사항을 저장하십시오.
- 내 글로벌 설정, 토글 요청 본문 확인 옵션을 선택합니다.
- 기본 동작을 다음으로 변경합니다. 거부: 요청을 중단하고 남은 규칙을 실행하지 않습니다.
- 클릭 신청 버튼을 클릭하여 변경 사항을 저장하십시오.
규칙 설정 #
- 온 클릭 규칙 탭을 클릭하여 새 규칙을 추가하세요.
- 온 클릭 새 규칙 버튼을 클릭합니다.
- 규칙 유형을 다음과 같이 선택합니다. 동작.
- 선택 상 as 요청 본문이 수신됨.
- 선택 분해능 as 거부: 요청을 중단하고 남은 규칙을 실행하지 않습니다..
- 규칙의 내용을 쉽게 식별할 수 있도록 규칙에 설명을 추가하세요.
- 클릭 신청 버튼을 클릭하여 변경 사항을 저장하십시오.
조건 추가 #
- 조건을 추가하려면 새로 생성된 규칙을 클릭하세요. 다음을 클릭하여 시작하세요. 조건 생성 버튼을 클릭합니다.
- 내 변수 필드, 선택 REQUEST_BODY 를 클릭하고 변수 추가 버튼을 클릭합니다.
- 내 변환 필드에서 옵션을 선택하고 없음.
- 내 운영자 섹션에서 선택 감지SQLi
- 클릭 신청 버튼을 누르면 새 조건이 생성됩니다.
팜에 대한 규칙 활성화 #
- 온 클릭 농장 탭을 클릭하여 로드 밸런서의 대상 가상 서버(팜)에 이 규칙을 추가합니다.
- 내 농장 설정에서 선택한 팜을 끌어다 놓습니다. 이용 가능한 농장 에 활성화된 농장.
- 오른쪽 상단에는 행위. 규칙을 시작하려면 녹색 재생 버튼을 클릭하세요. 현재 WAF 규칙은 주로 검색 또는 로그인 양식을 통해 요청 본문에 포함된 모든 SQL 삽입을 차단합니다.
WAF에 대한 자세한 리소스는 다음 문서를 참조하세요.
추가 자료 #
Let's encrypt 프로그램을 사용하여 SSL 인증서를 자동 생성합니다.
데이터링크/업링크 로드 밸런싱 RELIANOID ADC.
DNS 로드 밸런싱 RELIANOID ADC.
DDoS 공격으로부터 보호합니다.
애플리케이션, 상태 및 네트워크 모니터링 RELIANOID ADC.



