b6423c0115
Adds scanner_http_ranges / scanner_http_probe_enabled / scanner_http_verify_tls to Settings (persisted in scan_config.json, Options page defaults). /scan/trigger accepts an optional body to override these per-scan; /scan/config GET/POST read and persist the defaults. Port ranges validated at the API boundary. ha-relevant: yes
43 lines
1.9 KiB
Bash
43 lines
1.9 KiB
Bash
# Backend - server-side only (NEVER commit .env)
|
|
SECRET_KEY=change_me_in_production
|
|
SQLITE_PATH=./data/homelab.db
|
|
# Set this to the URL(s) you use to access Homelable in your browser.
|
|
CORS_ORIGINS=["http://localhost:5173","http://localhost:3000"]
|
|
|
|
# Auth — default credentials: admin / admin
|
|
# ⚠️ Change before exposing on a network.
|
|
# Generate a new hash: python3 -c "from passlib.context import CryptContext; print(CryptContext(schemes=['bcrypt']).hash('yourpassword'))"
|
|
# ⚠️ Keep the single quotes around the hash — bcrypt hashes contain \$ which Docker misinterprets without them.
|
|
AUTH_USERNAME=admin
|
|
AUTH_PASSWORD_HASH='$2b$12$RtMbyw17l4N5UGzeXMNAWuzCaVV.XFBY7ZetWheQhxcBDcxahapkG'
|
|
|
|
# Scanner — JSON array of CIDR ranges to scan
|
|
SCANNER_RANGES=["192.168.1.0/24"]
|
|
|
|
# Deep scan (optional) — extra nmap port ranges + HTTP probe for service ID on
|
|
# custom ports. Defaults below are overridable per-scan from the scan dialog.
|
|
SCANNER_HTTP_RANGES=[]
|
|
SCANNER_HTTP_PROBE_ENABLED=false
|
|
SCANNER_HTTP_VERIFY_TLS=false
|
|
|
|
# Status checker interval in seconds
|
|
STATUS_CHECKER_INTERVAL=60
|
|
|
|
# MCP server — used by the mcp service (port 8001)
|
|
# MCP_API_KEY: authenticates AI clients (Claude Code, etc.) → MCP server
|
|
# MCP_SERVICE_KEY: authenticates MCP server → backend (never exposed externally)
|
|
# Generate keys: python3 -c "import secrets; print(secrets.token_hex(32))"
|
|
MCP_API_KEY=mcp_sk_changeme
|
|
MCP_SERVICE_KEY=svc_changeme
|
|
|
|
# Live view — read-only public canvas at /view?key=<value>
|
|
# Off by default. Set to a random secret to enable.
|
|
# Generate: python3 -c "import secrets; print(secrets.token_urlsafe(32))"
|
|
# LIVEVIEW_KEY=
|
|
|
|
# Gethomepage widget — read-only stats at /api/v1/stats/summary
|
|
# Off by default. Set to a random secret to enable; clients must send
|
|
# the same value in the `X-API-Key` header.
|
|
# Generate: python3 -c "import secrets; print(secrets.token_urlsafe(32))"
|
|
# HOMEPAGE_API_KEY=
|