연습 - Front Door 및 WAF 정책 테스트
마지막 단계는 Front Door 환경을 테스트하고 회람 규칙이 웹 트래픽을 전달하도록 올바르게 구성되었는지 확인하는 것입니다. 또한 원본 웹 서버의 가용성을 테스트하려고 하며, 서버가 다운될 때 캐시된 콘텐츠에 계속 액세스할 수 있는지도 테스트하려고 합니다.
차량 등록 웹앱에 대한 트래픽 배포 테스트
Cloud Shell에서 다음 명령을 실행하여 Front Door 엔드포인트에 대한 URL을 생성합니다.
echo https://$(az afd endpoint show \ --profile-name vehicleFrontDoor \ --endpoint-name $endpoint \ --resource-group $RG \ --query hostName \ --output tsv)
웹 브라우저를 사용하여 이전 명령에서 반환된 URL의 웹 사이트로 이동합니다. 이 URL은 Front Door 프로필에서 만든 엔드포인트의 주소입니다. 차량 등록 웹앱의 홈 페이지가 표시되는지 확인합니다. 웹 서버의 이름이 페이지에 표시되어 요청을 제공하는 인스턴스를 알 수 있습니다.
키보드에서 F5 키를 몇 번 눌러 브라우저를 새로 고칩니다. webServer1과 webServer2 간에 서버 이름이 앞뒤로 변경됩니다. 두 웹 서버는 모두 동일한 지역에 있으며 대기 시간이 비슷합니다. 따라서 두 서버 모두 사용자의 요청을 처리할 수 있는 기회가 동일합니다.
테스트 라우팅
이제 각 웹 사이트에 대한 경로 구성의 라우팅을 테스트해 보겠습니다. 웹 서버의 프라이빗 엔드포인트로 이동하도록 /VehicleRegistration/
및 /VehicleRegistration/*
과 일치하는 경로를 구성했습니다. /LicenseRenewal/
및 /LicenseRenewal/*
과 일치하는 요청의 경우 App Service로 라우팅했습니다. 이 랩에서는 Private Link 서비스를 사용하여 연결을 설정하므로 Azure Front Door와 원본 리소스 간의 통신은 프라이빗입니다.
차량 등록 웹 사이트의 다른 페이지로 라우팅을 테스트하려면 차량 등록을 선택합니다.
URL이 경로
/VehicleRegistration/Create
를 포함하도록 변경되었습니다./VehicleRegistration/*
의 일치할 패턴이 있으므로 와일드카드는/
이후의 모든 항목과 일치하고 차량 등록 웹 사이트를 호스팅하는 웹 서버로 라우팅됩니다.다음으로, 라이선스 갱신 웹 사이트에 대한 라우팅을 테스트해 보겠습니다. 경로를
/VehicleRegistration/Create
에서/LicenseRenewal/
로 변경합니다. 이 경로는 App Service 원본으로 라우팅됩니다.라이선스 갱신을 선택하여
/LicenseRenewal/Create
로 변경된 경로를 확인합니다. 차량 등록을 위한 경로와 마찬가지로/
이후의 모든 항목과 일치하고 해당 트래픽을 App Service로 보내는 와일드카드가 있는/LicenseRenewal/*
의 일치 패턴이 있습니다.
이 구성을 사용하면 Front Door를 통해 두 웹 사이트로 사용자를 안내할 수 있습니다. 쉽게 기억할 수 있는 사용자 지정 도메인을 설정하고 사용자의 요구에 맞는 올바른 페이지로 사용자를 안내할 수 있습니다. Front Door를 사용하면 여러 웹 사이트를 호스트하도록 확장하고, 캐싱을 사용하도록 설정하여 정적 리소스의 성능을 향상시키고, 스케일링 성능과 가용성이 뛰어난 웹 애플리케이션을 제공할 수 있습니다.
테스트 보안 정책
Windows용 Go를 다운로드하여 설치합니다. 설치하는 동안 모든 기본 설정을 사용합니다. GoTestWAF 애플리케이션을 실행하려면 Go가 필요합니다.
Windows용 Git을 다운로드하여 설치합니다. 설치하는 동안 모든 기본 설정을 사용합니다. gotestwaf 리포지토리를 로컬 컴퓨터에 복제하려면 Git이 필요합니다.
Windows용 Go 및 Git을 모두 설치했으면 Git Bash를 열고
git clone https://github.com/wallarm/gotestwaf.git
을 실행하여 GoTestWAF 파일을 로컬 머신에 다운로드합니다.cd gotestwaf
명령을 사용하여 디렉터리를 gotestwaf 폴더로 변경합니다.이제 다음 명령을 실행하여 보안 정책이 작동하는지 테스트합니다. `<EVALUATE_SECURITY_SOLUTION_URL>을 이 단원의 시작 부분에 있는 엔드포인트 URL로 바꿉니다.
go run ./cmd --url=<EVALUATED_SECURITY_SOLUTION_URL> --verbose
WAF 정책 설정을 올바르게 구성한 경우 출력에
Baseline attack status code: 999
가 표시되어야 합니다. 이 응답 상태 코드는 WAF가 요청을 차단하는 경우 구성한 것과 동일합니다.
이제 WAF(Web Application Firewall) 정책으로 보호되는 완벽하게 작동하는 자동차 웹 애플리케이션이 있습니다.