secubox-openwrt/package/secubox/secubox-ai-gateway/files/etc/init.d/ai-gateway
CyberMind-FR f3cea01792 feat(ai-gateway): Add Data Classifier (Sovereignty Engine) for ANSSI CSPN
Implement secubox-ai-gateway package with intelligent AI request routing
based on data sensitivity classification for GDPR/ANSSI compliance.

Features:
- 3-tier data classification: LOCAL_ONLY, SANITIZED, CLOUD_DIRECT
- Provider hierarchy: LocalAI > Mistral (EU) > Claude > GPT > Gemini > xAI
- PII sanitizer: IPv4/IPv6, MAC, credentials, private keys scrubbing
- OpenAI-compatible API proxy on port 4050
- aigatewayctl CLI: status, classify, sanitize, provider, audit commands
- RPCD backend with 11 ubus methods for LuCI integration
- ANSSI CSPN audit logging in JSONL format

Classification patterns detect:
- IP addresses, MAC addresses, private keys
- Credentials (password, secret, token, api_key)
- System paths, security tool references
- WireGuard configuration data

All cloud providers are opt-in. Default LOCAL_ONLY ensures data
sovereignty - sensitive data never leaves the device.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-28 17:55:22 +01:00

45 lines
762 B
Bash

#!/bin/sh /etc/rc.common
START=91
STOP=10
USE_PROCD=1
PROG=/usr/sbin/aigatewayctl
NAME=ai-gateway
CONFIG=ai-gateway
start_service() {
local enabled
config_load "$CONFIG"
config_get enabled main enabled '0'
[ "$enabled" = "1" ] || return 0
mkdir -p /var/log/ai-gateway
mkdir -p /var/lib/ai-gateway
mkdir -p /tmp/ai-gateway
procd_open_instance
procd_set_param command "$PROG" service-run
procd_set_param respawn 3600 5 5
procd_set_param stdout 1
procd_set_param stderr 1
procd_set_param pidfile /var/run/ai-gateway.pid
procd_close_instance
logger -t ai-gateway "AI Gateway started"
}
stop_service() {
logger -t ai-gateway "AI Gateway stopped"
}
reload_service() {
stop
start
}
service_triggers() {
procd_add_reload_trigger "$CONFIG"
}