Zacznij odWAFPass
Zainstaluj stos zgodności z open- source WAF++ i uruchom pierwszą ocenę w pięciu etapach. Brak danych o chmurze, brak czarnej skrzynki - tylko analiza statyczna na twoim kodzie.
Od zera do pierwszego czeku w pięciu etapach.
Podążaj drogą numerowaną poniżej. Każdy krok łączy się z sekcją dopasowania, więc nigdy nie stracić orientacji.
Szybki start: pierwszy WAF++ kontrola
Ten poradnik daje gwarantowany wynik. Zainstalujesz WAFPass CLI, pobierz WAF++ steruje, tworzy minimalny plik Terraform, i zobacz WAFPass flaga prawdziwe znalezienie.
Wybierz ścieżkę
Do tego korepetycji potrzebujesz tylko CLI. Jeśli chcesz już pełną deskę rozdzielczą + serwer, przejdź doDocker Compositepo pierwszym skanowaniu.
Zainstaluj CLI
WAFPass jest publikowany PyPI jakowafpass-core. Python 3.11 + jest zalecane.
Pobierz stery
Pobierz katalog kontrolny WAF++ i wyodrębnij gocontrols/folder obok miejsca, w którym wykonujesz skany.
Utwórz minimalny plik Terraform i skanuj go
Zapisz ten celowo niedoskonały przykład jakmain.tf. WAFPass powinien oznaczyć co najmniej jedno znalezisko bezpieczeństwa.
provider "aws" {
region = "eu-central-1"
}
resource "aws_s3_bucket" "public" {
bucket = "wafpp-first-check-demo"
}
resource "aws_s3_bucket_public_access_block" "public" {
bucket = aws_s3_bucket.public.id
block_public_acls = false
block_public_policy = false
ignore_public_acls = false
restrict_public_buckets = false
}
Patrz wyniki
W terminalu można zobaczyć streszczenie takie jak to - jeden FAIL dla publicznego wiadra S3, zgrupowane według filaru i kontroli.
{
"total_controls": 83,
"passed": 81,
"failed": 2,
"pillars": {
"security": { "passed": 18, "failed": 2 }
}
}
Aby zbadać odkrycia wizualnie, uruchomićStos kompozycji dokerówi popchnąć JSON dohttp://localhost:8000/runs.
Dwa sposoby na prowadzenie WAFPass.
Zacznij od CLI do najszybszego pierwszego skanowania, lub wprowadzić cały stos, jeśli potrzebujesz wytrwałości, historii i wizualnej deski rozdzielczej.
Stos kompozycji dokerów
CLI + Server + Dashboard + PostgreSQL + Keycloak w jednej komendzie. Najlepiej dla zespołów, audytorów i każdego, kto chce mieć trwałą historię zgodności.
Pełna konfiguracja stosu → NajszybszyTylko CLI
Instalacjawafpass-corez PyPI i uruchomić kontrole bezpośrednio w terminalu lub CI rurociągu. Dodaj serwer i deskę rozdzielczą, gdy będziesz ich potrzebował.
Trzy składniki. Jeden strumień pracy w zakresie zgodności.
Zainstaluj tylko CLI dla rurociągów CI / CD, lub dodaj serwer i deskę rozdzielczą do trwałej historii i eksploracji wizualnej.
Silnik oceny rdzenia. Parses Terraform i AWS CDK, działa w każdym rurociągu CI / CD. Nie potrzeba danych o chmurze.
PyPI: wafpass- coreFastaPI REST API z PostgreSQL. Sklepy prowadzą, zwalniają, akceptują ryzyko, odkrywają tajemnice, a także prowadzą pełne audyty.
PyPI: serwer wafpass- serverReakcja na deskę rozdzielczą. 22 + strony badania zgodności, wywóz gotowych dowodów audytorskich oraz zarządzanie rolą RBAC.
React + ViteKompozycja dokująca: pełny zestaw
WAF2p / pass Monorepo statków zjednoczonychdocker-compose.yml. Klon raz, skonfigurować.envi wydobyć cały stos jednym poleceniem.
| Usługa | URL | Opis |
|---|---|---|
| wafpass- dashboard | http://localhost:3000 |
Reakcja deska rozdzielcza |
| wafpass- server | http://localhost:8000 |
FASTAPI REST API |
| Klawiatura (SSO) | http://localhost:8080 |
Dostawca tożsamości (admin / admin) |
| postgres | localhost:5432 |
Baza danych PostgreSQL |
Wciśnij swój pierwszy wynik skanowania:
Widok pełnego docker- comste.yml
services:
# ── PostgreSQL ────────────────────────────────────────────
postgres:
image: postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_USER: ${POSTGRES_USER:-wafpass}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-wafpass}
POSTGRES_DB: ${POSTGRES_DB:-wafpass}
volumes:
- postgres_data:/var/lib/postgresql/data
- ./keycloak/init.sql:/docker-entrypoint-initdb.d/01-keycloak-db.sql:ro
ports:
- "${POSTGRES_PORT:-5432}:5432"
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-wafpass} -d ${POSTGRES_DB:-wafpass}"]
interval: 5s
timeout: 5s
retries: 10
# ── wafpass-server ────────────────────────────────────────
wafpass-server:
build:
context: .
dockerfile: wafpass-server/Dockerfile
restart: unless-stopped
depends_on:
postgres:
condition: service_healthy
environment:
DATABASE_URL: postgresql+asyncpg://${POSTGRES_USER:-wafpass}:${POSTGRES_PASSWORD:-wafpass}@postgres:5432/${POSTGRES_DB:-wafpass}
WAFPASS_ENV: ${WAFPASS_ENV:-local}
CORS_ORIGINS: ${API_URL:-http://localhost:3000},http://wafpass-dashboard,http://cloud.waf2p
WAFPASS_CONTROLS_DIR: ${WAFPASS_CONTROLS_DIR:-/app/controls}
WAFPASS_JWT_SECRET: ${WAFPASS_JWT_SECRET:-change-me-in-production}
WAFPASS_JWT_EXPIRE_MINUTES: ${WAFPASS_JWT_EXPIRE_MINUTES:-60}
WAFPASS_JWT_REFRESH_DAYS: ${WAFPASS_JWT_REFRESH_DAYS:-7}
WAFPASS_ADMIN_USERNAME: ${WAFPASS_ADMIN_USERNAME:-admin}
WAFPASS_ADMIN_PASSWORD: ${WAFPASS_ADMIN_PASSWORD:-admin}
WAFPASS_ADMIN_ROLE: ${WAFPASS_ADMIN_ROLE:-admin}
WAFPASS_API_KEY: ${WAFPASS_API_KEY:-key}
ports:
- "8000:8000"
# ── Keycloak (SSO / IdP — dev mode) ──────────────────────
keycloak:
image: quay.io/keycloak/keycloak:26.1
command: start-dev
restart: unless-stopped
depends_on:
postgres:
condition: service_healthy
environment:
KC_DB: postgres
KC_DB_URL: jdbc:postgresql://postgres:5432/${KEYCLOAK_DB:-keycloak}
KC_DB_USERNAME: ${KEYCLOAK_DB_USER:-keycloak}
KC_DB_PASSWORD: ${KEYCLOAK_DB_PASSWORD:-keycloak}
KEYCLOAK_ADMIN: ${KEYCLOAK_ADMIN_USER:-admin}
KEYCLOAK_ADMIN_PASSWORD: ${KEYCLOAK_ADMIN_PASSWORD:-admin}
KC_HTTP_ENABLED: "true"
KC_HOSTNAME_STRICT: "false"
KC_HEALTH_ENABLED: "true"
ports:
- "${KEYCLOAK_PORT:-8080}:8080"
healthcheck:
test: ["CMD-SHELL", "curl -sf http://localhost:8080/health/ready || exit 1"]
interval: 15s
timeout: 5s
retries: 20
start_period: 60s
# ── wafpass-dashboard ─────────────────────────────────────
wafpass-dashboard:
build:
context: ./wafpass-dashboard
dockerfile: Dockerfile
restart: unless-stopped
depends_on:
- wafpass-server
ports:
- "3000:80"
volumes:
postgres_data:
Instalacja poszczególnych komponentów
Zainstaluj tylko to, czego potrzebujesz. Zacznij od CLI dla natychmiastowej integracji CI / CD, a następnie dodaj serwer i deskę rozdzielczą, gdy będziesz gotowy do stałej historii i wizualnej analizy zgodności.
Silnik oceny rdzenia - parse IaC, ocena kontroli, generowanie raportów
Z PyPI (zalecane)
Od źródła
MacOS (seria M- Apple)
FastaPI persistence warstwa - sklepy biegi, zwolnienia, odkrycia tajemnic i audyt
Z PyPI (zalecane)
Konfiguracja & start
Dokumenty API dostępne pod adresemhttp://localhost:8000/api/docs
React web deska rozdzielcza - 22 + widoki zgodności, eksport dowodów, RBAC
Blokuj niezgodne zobowiązania.
WaFPass statków haczyk pre-commit, który przeprowadza kontrole zgodności przed każdymgit commit. Niezgodne commits są blokowane automatycznie - brak połączenia w chmurze, brak dodatkowego CI czekać.
Działa na MacOS, Linux i Windows (Git Bash / PowerShell).
Ustawienie czasu jednego
Wstawaj i biegnij.
Pobierz kontrolę, uruchom pierwszy skan i otwórz deskę rozdzielczą, aby sprawdzić swoją postawę zgodności.
Kontrole WAF++ są publikowane oddzielnie i pobierane na żądanie.
- Wizytawafe2p.dev / wafepass /
- KliknijKontrola pobierania
- Wyciąg do katalogu kontrolerów
Punkt WAFPass na Terraform lub kod CDK i uzyskać pełny raport zgodności.
Poznaj swoją postawę zgodności, zarządzania zrzeczenia się, i eksportu pakietów dowodów.
- Otwórz
localhost:3000(Docker) lublocalhost:5173dev) - Zaloguj się z referencjami administratora
.env - Badanie wyników, dryfowania i matrycy zgodności
Wspólne problemy i poprawki.
Szybkie odpowiedzi na najczęstsze problemy z ustawieniami.
Nie znaleziono kontroli
Jeśliwafpass checkraportuje "nie znaleziono katalogu kontrolnego", CLI automatycznie wyświetla instrukcje pobierania. Podążaj zapo instalacjikroki powyżej.
Port już w użyciu
Użyj innego portu dla serwera lub deski rozdzielczej:
Błąd połączenia z bazą danych
Weryfikacja działa PostgreSQL i TwójDATABASE_URLjest poprawny:
Niepowodzenie budowy dokerów
Upewnij się, że wszystkie trzy repozytoria są sklonowane bocznie w tym samym katalogu macierzystym:
Przepuściłeś swój pierwszy czek. Co dalej?
Wybierz kolejny krok, który pasuje do twojej roli: pogłębić wiedzę ramową, przekierować WAFPass do CI / CD, lub zbadać pełną wizualną deskę rozdzielczą.