Network Intelligence Dashboard Enhancements: - Add detailed protocol breakdown (TCP/UDP/ICMP) with visual bars - Display flow metrics (active, expired, purged) - Show CPU and memory usage for netifyd process - Add IP bytes vs wire bytes differentiation - Enhanced stat cards with subtitles and better formatting RPC Backend Improvements: - Add tcp_packets, udp_packets, icmp_packets metrics - Add ip_bytes (payload without ethernet overhead) - Add flows_active, flows_expired, flows_purged counters - Add cpu_usage and memory_kb from netifyd status - Calculate CPU total from user + system time Directory Structure Fix: - Create /etc/netify.d/plugins.d on package install - Create /etc/netify.d/address-groups.d - Generate minimal netify-categories.json to prevent errors - Auto-initialize UCI config for secubox-netifyd - Auto-restart netifyd after directory creation UCI Configuration: - Settings: auto_refresh, socket configuration - Analytics: limits for top apps/protocols/devices - Data retention configuration Issue Resolved: - Netifyd was running but showing 0 flows due to missing directories - Service now properly captures and analyzes network traffic - All metrics displaying correctly in dashboard 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
54 lines
1.7 KiB
Bash
Executable File
54 lines
1.7 KiB
Bash
Executable File
#!/bin/sh
|
|
# SecuBox Netifyd - UCI defaults setup
|
|
# Creates required directories and initializes configuration
|
|
|
|
# Create netifyd directories if they don't exist
|
|
mkdir -p /etc/netify.d/plugins.d
|
|
mkdir -p /etc/netify.d/address-groups.d
|
|
|
|
# Create empty categories file to prevent error messages
|
|
if [ ! -f /etc/netify.d/netify-categories.json ]; then
|
|
cat > /etc/netify.d/netify-categories.json <<'EOF'
|
|
{
|
|
"version": "1.0",
|
|
"categories": []
|
|
}
|
|
EOF
|
|
fi
|
|
|
|
# Ensure proper permissions
|
|
chmod 755 /etc/netify.d
|
|
chmod 755 /etc/netify.d/plugins.d
|
|
chmod 755 /etc/netify.d/address-groups.d
|
|
chmod 644 /etc/netify.d/netify-categories.json
|
|
|
|
# Initialize UCI configuration if it doesn't exist
|
|
if ! uci -q get secubox-netifyd.settings >/dev/null 2>&1; then
|
|
uci set secubox-netifyd.settings=settings
|
|
uci set secubox-netifyd.settings.auto_refresh='1'
|
|
uci set secubox-netifyd.settings.refresh_interval='5'
|
|
uci set secubox-netifyd.settings.socket_type='unix'
|
|
uci set secubox-netifyd.settings.unix_socket_path='/var/run/netifyd/netifyd.sock'
|
|
uci set secubox-netifyd.settings.socket_address='127.0.0.1'
|
|
uci set secubox-netifyd.settings.socket_port='7150'
|
|
uci set secubox-netifyd.settings.auto_start='1'
|
|
uci commit secubox-netifyd
|
|
fi
|
|
|
|
# Analytics settings
|
|
if ! uci -q get secubox-netifyd.analytics >/dev/null 2>&1; then
|
|
uci set secubox-netifyd.analytics=analytics
|
|
uci set secubox-netifyd.analytics.top_apps_limit='10'
|
|
uci set secubox-netifyd.analytics.top_protocols_limit='10'
|
|
uci set secubox-netifyd.analytics.top_devices_limit='20'
|
|
uci set secubox-netifyd.analytics.data_retention_days='7'
|
|
uci commit secubox-netifyd
|
|
fi
|
|
|
|
# Restart netifyd if it's running to apply changes
|
|
if pidof netifyd >/dev/null 2>&1; then
|
|
/etc/init.d/netifyd restart >/dev/null 2>&1
|
|
fi
|
|
|
|
exit 0
|