- Add YAML-based configuration loaded from config.yaml (CONFIG_LOCATION env var) - Add PyYAML dependency and install requirements in Dockerfile - Replace Config.from_env() with get_config() singleton pattern - Remove server_header from config (now randomized from wordlists only) - Update docker-compose.yaml to mount config.yaml read-only - Update Helm chart: restructure values.yaml, generate config.yaml in ConfigMap - Update Kubernetes manifests: ConfigMap now contains config.yaml, deployments mount it - Remove Helm secret.yaml (dashboard path now auto-generated in config.yaml)
42 lines
915 B
YAML
42 lines
915 B
YAML
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: krawl-config
|
|
namespace: krawl-system
|
|
data:
|
|
config.yaml: |
|
|
# Krawl Honeypot Configuration
|
|
server:
|
|
port: 5000
|
|
delay: 100
|
|
timezone: null # e.g., "America/New_York" or null for system default
|
|
|
|
links:
|
|
min_length: 5
|
|
max_length: 15
|
|
min_per_page: 10
|
|
max_per_page: 15
|
|
char_space: "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
|
|
max_counter: 10
|
|
|
|
canary:
|
|
token_url: null # Optional canary token URL
|
|
token_tries: 10
|
|
|
|
dashboard:
|
|
# Auto-generates random path if null
|
|
# Can be set to "/dashboard" or similar
|
|
secret_path: null
|
|
|
|
api:
|
|
server_url: null
|
|
server_port: 8080
|
|
server_path: "/api/v2/users"
|
|
|
|
database:
|
|
path: "data/krawl.db"
|
|
retention_days: 30
|
|
|
|
behavior:
|
|
probability_error_codes: 0 # 0-100 percentage
|