first commit
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
"""Konfiguration aus Umgebungsvariablen."""
|
||||
import os
|
||||
|
||||
|
||||
def _int(name: str, default: int) -> int:
|
||||
try:
|
||||
return int(os.environ.get(name, default))
|
||||
except ValueError:
|
||||
return default
|
||||
|
||||
|
||||
def _range(value: str) -> list[int]:
|
||||
ports: list[int] = []
|
||||
for part in value.split(","):
|
||||
part = part.strip()
|
||||
if not part:
|
||||
continue
|
||||
if "-" in part:
|
||||
a, b = part.split("-", 1)
|
||||
ports.extend(range(int(a), int(b) + 1))
|
||||
else:
|
||||
ports.append(int(part))
|
||||
return ports
|
||||
|
||||
|
||||
DATA_DIR = os.environ.get("DATA_DIR", "/data")
|
||||
DB_PATH = os.path.join(DATA_DIR, "proxy.db")
|
||||
|
||||
LISTEN_HOST = os.environ.get("LISTEN_HOST", "0.0.0.0")
|
||||
HTTP_PORT = _int("HTTP_PROXY_PORT", 3128)
|
||||
SOCKS_PORT = _int("SOCKS_PORT", 1080)
|
||||
WEB_PORT = _int("WEB_PORT", 8080)
|
||||
|
||||
# UDP-Ports für SOCKS5 UDP ASSOCIATE (müssen im Container veröffentlicht sein)
|
||||
SOCKS_UDP_PORTS = _range(os.environ.get("SOCKS_UDP_PORTS", "10800-10819"))
|
||||
# Adresse, die SOCKS-Clients für UDP mitgeteilt wird (Host-IP). Leer = lokale Adresse der Verbindung
|
||||
SOCKS_UDP_ADVERTISE = os.environ.get("SOCKS_UDP_ADVERTISE", "").strip()
|
||||
|
||||
# Ports, die für Portweiterleitungen freigegeben sind (nur Hinweis in der UI)
|
||||
FORWARD_PORTS = os.environ.get("FORWARD_PORTS", "40000-40019")
|
||||
|
||||
ADMIN_USER = os.environ.get("ADMIN_USER", "admin")
|
||||
ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "")
|
||||
|
||||
CONNECT_TIMEOUT = _int("CONNECT_TIMEOUT", 15)
|
||||
SESSION_HOURS = _int("SESSION_HOURS", 12)
|
||||
Reference in New Issue
Block a user