Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
zentinel — 무료 웹을 보호하기 위해 구축된 보안 우선 리버스 프록시. | Kitploit
도구/GitHubGitHub/zentinelproxy/zentinel
Authentication & AuthorizationDefensive ToolsContainer SecurityWeb Proxies & InterceptionReverse EngineeringWeb SecurityNetwork SecurityAPI SecurityAI Security
GitHubzentinelproxy/zentinel

zentinel

무료 웹을 보호하기 위해 구축된 보안 우선 리버스 프록시.

11623382일 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기웹사이트

zentinel mascot
Zentinel

자유로운 웹을 지키기 위해 만들어진 보안 우선 리버스 프록시.
엣지에서 편안한 운영.

Rust Pingora License

문서 • 플레이그라운드 • 벤치마크 • 토론 • 기여하기


Zentinel은 Cloudflare Pingora 기반으로 구축된 고성능 리버스 프록시입니다. 운영자가 편안하게 잠들 수 있어야 하는 환경을 위해 명시적인 제한, 예측 가능한 동작, 프로덕션급 기본값을 제공합니다.

성능: Envoy, HAProxy, Nginx, Caddy를 대상으로 한 벤치마크에서 가장 낮은 p99 지연 시간을 기록했습니다. 100만 건 요청 소크 테스트에서 99.95% 성공률과 메모리 누수 제로를 달성했습니다. 순수 Rust WAF 엔진은 정상 트래픽을 912K req/s로 처리합니다 — C++ ModSecurity 레퍼런스보다 30배 빠릅니다.

Zentinel 데모 — 설치, 구성, 실행

상태

프로덕션 준비 완료된 코어(프록시, 라우팅, TLS, 캐싱, 로드 밸런싱). 에이전트는 개별적으로 버전 관리됩니다 — WAF, Auth, AI Gateway는 안정 버전이며, 나머지는 베타 또는 알파입니다. 에이전트별 상태는 zentinelproxy.io/agents를 참조하세요.

요청 흐름

   ┌────────┐                                       ┌──────────┐
   │ Client │                                       │ Upstream │
   └────┬───┘                                       └─────▲────┘
        │                                                 │
        ▼                                                 │
   ╔═══════════ Zentinel (core, single binary) ══════════╤════╗
   ║                                                     │    ║
   ║  Listener ─▶ Routing ─▶ Filter chain ─▶ Forward ────┘    ║
   ║  TLS, H2     priority   rate-limit,     LB,              ║
   ║              + LRU      cache, hooks    retries          ║
   ║                              │                           ║
   ╚══════════════════════════════╪═══════════════════════════╝
                                  │ UDS / gRPC (v2 agent protocol)
                                  ▼
          ╔═══════ External agents (separate processes) ═══════╗
          ║   WAF · Auth · Rate-limit · …                      ║
          ║   crash-isolated, any language                     ║
          ╚════════════════════════════════════════════════════╝

응답은 필터 체인을 역순으로 거쳐 클라이언트로 돌아갑니다. 액세스 로그와 메트릭은 완료 시점에 출력됩니다.

데이터플레인은 단일 바이너리로 실행됩니다. 파싱 부하가 크거나 운영상 위험한 보안 및 정책 로직은 UDS 또는 gRPC 뒤의 외부 에이전트에 위치하므로, 버그가 있는 에이전트가 프록시를 함께 다운시키지 못합니다. 그 근거는 Manifesto를, 단계별 세부 사항은 crates/proxy/docs/architecture.md를 참조하세요.

빠른 시작

# Install (binary only)
curl -fsSL https://get.zentinelproxy.io | sh

# Install and start as a systemd service (Linux, root or sudo)
curl -fsSL https://get.zentinelproxy.io | sh -s -- --enable-service

# Or via Cargo
cargo install zentinel-proxy

# Or via Docker
docker run -v $(pwd)/zentinel.kdl:/etc/zentinel/zentinel.kdl \
  ghcr.io/zentinelproxy/zentinel --config /etc/zentinel/zentinel.kdl

systemd 호스트에서는 설치 스크립트가 /etc/systemd/system/zentinel.service, sysusers 스니펫, 그리고 /etc/zentinel/zentinel.kdl에 시작용 설정 파일도 함께 배치합니다. 서비스 활성화와 시작은 --enable-service를 통한 옵트인 방식입니다. crates/proxy/docs/deployment.md를 참조하세요.

다음을 zentinel.kdl로 저장하세요 — localhost:8080을 포트 8081의 백엔드로 프록시합니다:

system {
    worker-threads 0  // auto-detect CPU cores
}

listeners {
    listener "http" {
        address "0.0.0.0:8080"
        protocol "http"
    }
}

routes {
    route "default" {
        matches {
            path-prefix "/"
        }
        upstream "backend"
    }
}

upstreams {
    upstream "backend" {
        target "127.0.0.1:8081"
    }
}
# Run
zentinel --config zentinel.kdl

# Validate config without starting
zentinel test --config zentinel.kdl

HTTPS 백엔드로 프록시하시나요? 업스트림에 tls 블록을 추가하세요:

upstreams {
    upstream "backend" {
        target "api.example.com:443"
        tls {
            sni "api.example.com"
        }
    }
}

tls 블록이 없으면 Zentinel은 포트와 무관하게 평문 HTTP로 연결합니다.

더 많은 예제: config/examples/는 API 게이트웨이, 로드 밸런싱, WebSocket, 캐싱, 추론 라우팅 등을 다룹니다. 또는 설정 빌더를 사용해 대화식으로 설정을 생성할 수 있습니다.

기능

기능설명
서비스 유형Web, API, Static, Builtin, Inference (LLM/AI)
로드 밸런싱14가지 알고리즘: round-robin, weighted, least connections, Maglev, Peak EWMA 등
보안TLS/mTLS, 속도 제한, GeoIP 필터링, WAF, zip bomb 보호
에이전트 프로토콜네이티브 MCP 및 A2A 인식 — 미러링된 헤더를 신뢰하는 대신 JSON-RPC 본문에서 해석한 메서드별 및 도구별 허용/차단
에이전트 프로토콜WAF, 인증, 사용자 정의 로직을 위한 외부 에이전트 — 크래시 격리, 모든 언어 지원
HTTP 캐싱스탬피드 방지와 LRU 제거를 갖춘 Pingora 기반 응답 캐싱 (메모리, 디스크 또는 하이브리드 백엔드)
WebSocket 프록싱프레임별 에이전트 검사와 세션 어피니티를 지원하는 RFC 6455 준수
관측성Prometheus 메트릭, 구조화된 로깅, OpenTelemetry 트레이싱
핫 리로드검증과 원자적 교체를 통한 SIGHUP 기반 무중단 설정 업데이트 (라우트, 업스트림, 에이전트; 리스너 변경은 재시작 필요)

전체 기능 목록은 zentinelproxy.io/features에서 확인하세요.

사용 사례

  • 리버스 프록시 — 웹 애플리케이션을 위한 TLS 종료, 정적 파일 제공, 압축, 보안 헤더
  • API 게이트웨이 — 버전별 라우팅, JWT/API 키 인증, 클라이언트별 속도 제한, JSON 오류 응답
  • 로드 밸런서 — 가중 트래픽 분산, 헬스 체크, 서킷 브레이커, 블루-그린/카나리 배포
  • 추론 게이트웨이 — 토큰 기반 속도 제한, 글롭 패턴(gpt-4*, claude-*)을 사용한 모델 라우팅, 프롬프트 인젝션 탐지, OpenAI, Anthropic 및 일반 LLM 제공자를 위한 PII 필터링
  • 에이전트 게이트웨이 (MCP / A2A) — Model Context Protocol 및 Agent2Agent 트래픽에 대한 메서드별 및 도구별 허용 목록으로, JSON-RPC 본문에 대해 적용되므로 미러링된 Mcp-Name 헤더가 한 도구를 지칭하면서 본문이 다른 도구를 호출할 수 없습니다
  • WebSocket 게이트웨이 — 프레임 검사, 메시지 속도 제한, 세션 어피니티를 갖춘 지속 연결 프록싱
  • 보안 게이트웨이 — WAF, GeoIP 필터링, mTLS, 사용자 정의 보안 로직을 위한 조합 가능한 에이전트 파이프라인

각 사용 사례의 예제 설정: config/examples/

Zentinel을 선택하는 이유

현대의 프록시는 숨겨진 동작, 무한한 복잡성, 스트레스 상황에서 드러나는 운영 위험을 축적합니다. Zentinel은 다른 접근 방식을 취합니다:

  • 한정된 리소스 — 메모리 제한, 큐 깊이, 결정적 타임아웃. 예상치 못한 동작 없음.
  • 명시적 실패 모드 — 라우트별 fail-open 또는 fail-closed, 결코 모호하지 않음.
  • 외부 확장성 — 보안 로직은 코어가 아닌 에이전트에 위치. 작고 안정적인 데이터플레인.
  • 기본 관측 가능성 — 모든 결정이 로깅되고 측정됨. 기능은 한정되고, 관측되고, 테스트된 경우에만 출시됨.

목표는 올바르고, 차분하며, 신뢰할 수 있는 인프라입니다. 전체 철학은 MANIFESTO.md를 참조하세요.

에이전트 프로토콜

Zentinel은 MCP(Model Context Protocol)와 A2A(Agent2Agent)를 네이티브로 이해합니다. 라우트가 허용되는 메서드와 도구를 선언하면, 프록시는 JSON-RPC 봉투를 읽어 이를 적용합니다:

route "mcp" {
    matches { path-prefix "/mcp" }
    upstream "mcp-server"

    mcp {
        tools {
            allow "get_weather" "search_docs"
            deny "execute_sql"
        }
    }
}
도구 다운로드