docs: BunnyCDN Shield Zone API 정리 — 구 Pull Zone 필드 대신 /shield/shield-zone 엔드포인트 사용, shieldZoneId 매핑 추가
This commit is contained in:
@@ -291,17 +291,67 @@ Bunny Shield는 통합 보안 스택. 200+ Tbps 네트워크, 119개 글로벌
|
||||
| Access Lists | VPN, Tor 노드 등 차단 |
|
||||
| Upload Scanning | 파일 바이러스/악성코드/CSAM 스캔 |
|
||||
|
||||
### ⚠️ Shield Zone API (구 Pull Zone 필드와 별개)
|
||||
|
||||
Shield는 Pull Zone의 `ShieldDDosProtectionEnabled` 필드가 아니라 **별도 Shield Zone API**로 관리. Pull Zone 업데이트 API로는 Shield를 켤 수 없음.
|
||||
|
||||
#### Shield Zone 생성 (Pull Zone에 Shield 활성화)
|
||||
```
|
||||
POST https://api.bunny.net/shield/shield-zone
|
||||
Body: {
|
||||
"pullZoneId": 5555227,
|
||||
"wafEnabled": true,
|
||||
"dDoSShieldSensitivity": 2
|
||||
}
|
||||
Response: 200 (생성 성공) / 409 (이미 존재)
|
||||
```
|
||||
|
||||
#### Shield Zone 목록 조회
|
||||
```
|
||||
GET https://api.bunny.net/shield/shield-zones?page=1&perPage=20
|
||||
```
|
||||
|
||||
#### 개별 Shield Zone 조회
|
||||
```
|
||||
GET https://api.bunny.net/shield/shield-zone/{shieldZoneId}
|
||||
```
|
||||
|
||||
#### Shield Zone 업데이트
|
||||
```
|
||||
PUT https://api.bunny.net/shield/shield-zone/{shieldZoneId}
|
||||
```
|
||||
|
||||
#### 현재 Shield Zone 매핑 (2026-04-13 실측)
|
||||
|
||||
| Pull Zone | pullZoneId | shieldZoneId | WAF |
|
||||
|-----------|-----------|-------------|-----|
|
||||
| iron-kr-waf | 5555224 | 101016 | ✅ |
|
||||
| iron-kr | 5555227 | 101015 | ✅ |
|
||||
| iron-jp | 5555247 | 101014 | ✅ |
|
||||
| iron-git | 5584382 | 101013 | ✅ |
|
||||
| i-gate | 5557897 | 101012 | ✅ |
|
||||
|
||||
#### WAF 이벤트 로그
|
||||
```
|
||||
GET https://api.bunny.net/shield/event-logs/{shieldZoneId}
|
||||
```
|
||||
|
||||
#### WAF 규칙 관리
|
||||
```
|
||||
GET https://api.bunny.net/shield/waf/{shieldZoneId} # 규칙 목록
|
||||
POST https://api.bunny.net/shield/waf/{shieldZoneId} # 커스텀 규칙 생성
|
||||
PUT https://api.bunny.net/shield/waf/{shieldZoneId}/{ruleId} # 규칙 수정
|
||||
DELETE https://api.bunny.net/shield/waf/{shieldZoneId}/{ruleId} # 규칙 삭제
|
||||
```
|
||||
|
||||
#### 주의사항
|
||||
- MCP `bunny_shield_status` / `bunny_shield_update` 도구는 구 Pull Zone 필드(`ShieldDDosProtectionEnabled`)를 읽으므로 항상 false 반환 — 사용 금지
|
||||
- Shield 상태 확인은 반드시 `GET /shield/shield-zones` API 사용
|
||||
- `learningMode`가 기본 true (7일) — 생성 직후에는 WAF가 탐지만 하고 차단 안 함
|
||||
|
||||
### DDoS Protection 설정
|
||||
Pull Zone 필드:
|
||||
- `ShieldDDosProtectionEnabled`: boolean
|
||||
- `ShieldDDosProtectionType`: `DetectOnly`, `ActiveStandard`, `ActiveAggressive`
|
||||
|
||||
### DDoS 보호 메커니즘
|
||||
1. **Stateful Request Tracking**: 요청 정당성 검증
|
||||
2. **JavaScript Proof-of-Work Challenge**: 브라우저에 연산 과제 부여, 봇 차별화
|
||||
3. **Behavioral Analysis**: 실시간 트래픽 패턴 분석
|
||||
|
||||
### DDoS Sensitivity 레벨
|
||||
#### DDoS Sensitivity 레벨
|
||||
| 레벨 | 값 | 설명 |
|
||||
|------|-----|------|
|
||||
| Low | 1 | 최소 보호 |
|
||||
@@ -309,6 +359,11 @@ Pull Zone 필드:
|
||||
| High | 3 | 강화 보호 |
|
||||
| Extreme | 4 | 항시 활성화 (Always-On) |
|
||||
|
||||
### DDoS 보호 메커니즘
|
||||
1. **Stateful Request Tracking**: 요청 정당성 검증
|
||||
2. **JavaScript Proof-of-Work Challenge**: 브라우저에 연산 과제 부여, 봇 차별화
|
||||
3. **Behavioral Analysis**: 실시간 트래픽 패턴 분석
|
||||
|
||||
---
|
||||
|
||||
## 6. WAF (Web Application Firewall)
|
||||
|
||||
Reference in New Issue
Block a user