New packages: - secubox-threat-analyst: AI-powered threat analysis with CrowdSec integration - luci-app-threat-analyst: LuCI dashboard for threat intelligence - secubox-dns-guard: DNS security monitoring and blocking - secubox-mcp-server: Model Context Protocol server for AI assistant integration Enhancements: - dns-provider: Add DynDNS support (dyndns, get, update, domains commands) - gandi.sh: Full DynDNS with WAN IP detection and record updates - luci-app-dnsguard: Upgrade to v1.1.0 with improved dashboard Infrastructure: - BIND9 DNS setup for secubox.in with CAA records - Wildcard SSL certificates via DNS-01 challenge - HAProxy config fixes for secubox.in subdomains - Mail server setup with Roundcube webmail Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
82 lines
1.5 KiB
JavaScript
82 lines
1.5 KiB
JavaScript
'use strict';
|
|
'require rpc';
|
|
|
|
var callStatus = rpc.declare({
|
|
object: 'luci.threat-analyst',
|
|
method: 'status',
|
|
expect: { }
|
|
});
|
|
|
|
var callGetThreats = rpc.declare({
|
|
object: 'luci.threat-analyst',
|
|
method: 'get_threats',
|
|
params: ['limit'],
|
|
expect: { }
|
|
});
|
|
|
|
var callGetAlerts = rpc.declare({
|
|
object: 'luci.threat-analyst',
|
|
method: 'get_alerts',
|
|
params: ['limit'],
|
|
expect: { }
|
|
});
|
|
|
|
var callGetPending = rpc.declare({
|
|
object: 'luci.threat-analyst',
|
|
method: 'get_pending',
|
|
expect: { }
|
|
});
|
|
|
|
var callChat = rpc.declare({
|
|
object: 'luci.threat-analyst',
|
|
method: 'chat',
|
|
params: ['message'],
|
|
expect: { }
|
|
});
|
|
|
|
var callAnalyze = rpc.declare({
|
|
object: 'luci.threat-analyst',
|
|
method: 'analyze',
|
|
expect: { }
|
|
});
|
|
|
|
var callGenerateRules = rpc.declare({
|
|
object: 'luci.threat-analyst',
|
|
method: 'generate_rules',
|
|
params: ['target'],
|
|
expect: { }
|
|
});
|
|
|
|
var callApproveRule = rpc.declare({
|
|
object: 'luci.threat-analyst',
|
|
method: 'approve_rule',
|
|
params: ['id'],
|
|
expect: { }
|
|
});
|
|
|
|
var callRejectRule = rpc.declare({
|
|
object: 'luci.threat-analyst',
|
|
method: 'reject_rule',
|
|
params: ['id'],
|
|
expect: { }
|
|
});
|
|
|
|
var callRunCycle = rpc.declare({
|
|
object: 'luci.threat-analyst',
|
|
method: 'run_cycle',
|
|
expect: { }
|
|
});
|
|
|
|
return {
|
|
status: callStatus,
|
|
getThreats: callGetThreats,
|
|
getAlerts: callGetAlerts,
|
|
getPending: callGetPending,
|
|
chat: callChat,
|
|
analyze: callAnalyze,
|
|
generateRules: callGenerateRules,
|
|
approveRule: callApproveRule,
|
|
rejectRule: callRejectRule,
|
|
runCycle: callRunCycle
|
|
};
|