서비스 거부(DoS) 공격은 악의적인 서버 사용자가 합법적인 사용자의 서비스 사용을 방해하려고 시도하는 것입니다. 이러한 공격은 다음과 같은 방법으로 시작될 수 있습니다.
특정 웹 자원에 대한 요청을 서버로 계속 보냅니다.
요청 빈도가 매우 높은 경우 Sun Java System Web Server는 자주 액세스되는 URI를 모니터하여 DoS 공격을 감지한 다음 요청을 거부할 수 있습니다.
다음 절에서는 가상 서버 수준에서 DoS 공격을 방지할 수 있는 방법에 대해 설명합니다.
요청 제한을 구성하고 가상 서버당 최대 연결 수를 모니터하여 서버에서 서비스 거부 공격을 방지하도록 조정할 수 있습니다. 이런 값을 몇 개 구성하면 서버 성능에 영향을 줄 수 있습니다.
서버의 요청 제한을 구성하려면 구성 > 가상 서버 > 서버 설정 > 요청 제한을 누릅니다. 다음 표에 나열된 매개 변수를 구성합니다.
표 7–4 요청 제한 구성
매개 변수 |
설명 |
---|---|
요청 제한 |
이 가상 서버에 대해 제한을 활성화/비활성화합니다. 요청 제한 옵션은 기본적으로 비활성화됩니다. |
최대 연결 수 |
이 가상 서버에 허용되는 최대 동시 연결 수입니다. |
최대 RPS |
클라이언트에서 초당 허용되는 최대 요청 수입니다. |
RPS 계산 간격 |
초당 평균 요청(RPS)을 계산하는 시간 간격입니다. 기본값은 30초입니다. |
계속 조건 |
차단된 요청 유형을 다시 처리하기 위해 충족해야 하는 조건을 결정합니다. 무응답 — 서비스를 다시 시작하려면 거부된 요청이 후속 간격에서 0이 되어야 합니다. 임계값 — 서비스를 다시 시작하려면 거부된 요청 비율이 RPG 임계값보다 작아야 합니다. 기본값은 임계값입니다. |
오류 코드 |
차단된 요청에 대해 사용할 HTTP 상태 코드입니다. 기본 코드는 HTTP 503 — 사용할 수 없는 서비스입니다. |
속성 모니터 |
모니터할 선택적 요청 속성 |
CLI 사용
CLI를 통해 서버 요청을 제한하려면 다음 명령을 실행합니다.
wadm> enable-request-limits --user=admin --password-file=admin.pwd --host=serverhost --port=8989 --config=config1 --vs=config1_vs_1 |
CLI 참조 enable-request-limits(1)를 참조하십시오.
최대 동시 연결 수를 제한할 수 있습니다. 최소한의 지정된 요청 수를 처리하는 동안 일치하는 요청이 수신되면 요청이 거부됩니다. 요청 거부는 특정 시간에 한하여 이루어집니다. 동시 요청 수가 이 제한보다 작아지면 바로 새 요청을 처리할 수 있게 됩니다.