Installation
Installation
This guide covers all installation methods and options for HookProbe.
System Requirements
Operating Systems
| OS | Version | Status |
|---|---|---|
| Ubuntu | 22.04 LTS, 24.04 LTS | Supported |
| Debian | 11, 12 | Supported |
| Raspberry Pi OS | Bookworm 64-bit | Supported |
Architecture
| Arch | Support |
|---|---|
| x86_64 | Full |
| ARM64 (ARMv8) | Full |
| ARMv7 (32-bit) | Not supported |
Hardware by Tier
| Tier | CPU | RAM | Storage |
|---|---|---|---|
| Sentinel | 1 core | 256MB | 4GB |
| Guardian | 2 cores | 1.5GB | 16GB |
| Fortress | 4 cores | 4GB | 64GB |
| Nexus | 8+ cores | 16GB | 256GB |
Kernel
| Version | Features |
|---|---|
| 4.8+ | Basic XDP |
| 5.4+ | Full XDP |
| 5.10+ | Advanced eBPF |
Quick Installation
# Clone repositorygit clone https://github.com/hookprobe/hookprobe.gitcd hookprobe
# Run installer with your tiersudo ./install.sh --tier guardianInstallation Options
Tier Selection
# IoT validator (256MB)sudo ./install.sh --tier sentinel
# Travel companion (1.5GB)sudo ./install.sh --tier guardian
# Business edge (4GB)sudo ./install.sh --tier fortress
# ML compute (16GB+)sudo ./install.sh --tier nexusFeature Flags
# Enable AI orchestration--enable-aiochi
# Enable LTE failover--enable-lte
# Enable GPU acceleration (Nexus)--enable-gpu
# Enable high availability (Nexus)--enable-ha
# Enable ClickHouse analytics (Nexus)--enable-clickhouse
# Migrate from previous tier--migrateExamples
# Guardian with LTE backupsudo ./install.sh --tier guardian --enable-lte
# Fortress with all featuressudo ./install.sh --tier fortress --enable-aiochi --enable-lte
# Nexus with GPU and HAsudo ./install.sh --tier nexus --enable-gpu --enable-ha --enable-clickhouse
# Upgrade Guardian to Fortresssudo ./install.sh --tier fortress --migrateWhat the Installer Does
Phase 1: Detection
- Identify OS and version
- Detect CPU architecture
- Check kernel version
- Discover network interfaces
- Verify resources
Phase 2: Dependencies
# Packages installed (Ubuntu/Debian)podmanopenvswitch-switchnftablespython3-piplibpcap-devlibbpf-devPhase 3: Directory Structure
/opt/hookprobe/├── scripts/ # Management scripts├── agent/ # Monitoring agent├── xdp/ # XDP programs├── config/ # Configuration└── data/ # Runtime data
/etc/hookprobe/└── network-config.sh
/var/log/hookprobe/├── agent.log├── provision.log└── update.logPhase 4: Services
# Systemd units installedhookprobe-provision.service # Runs at boothookprobe-agent.service # Main daemonhookprobe-update.service # Manual updateshookprobe-update.timer # Auto-updates (optional)Phase 5: Provisioning
- Configure network interfaces
- Load XDP programs (if enabled)
- Set up firewall rules
- Initialize databases
- Generate certificates
Phase 6: Startup
- Start monitoring agent
- Verify health endpoints
- Enable auto-start
Manual Installation
For advanced control:
# 1. Install dependenciessudo apt updatesudo apt install -y \ podman \ openvswitch-switch \ nftables \ python3-pip \ libpcap-dev
# 2. Install Python packagespip3 install -r requirements.txt
# 3. Create directoriessudo mkdir -p /opt/hookprobe/{scripts,agent,xdp,config,data}sudo mkdir -p /var/log/hookprobesudo mkdir -p /etc/hookprobe
# 4. Copy filessudo cp -r Scripts/autonomous/install/* /opt/hookprobe/scripts/sudo cp -r Scripts/autonomous/qsecbit/* /opt/hookprobe/agent/
# 5. Install systemd unitssudo cp Scripts/autonomous/install/systemd/*.service /etc/systemd/system/sudo cp Scripts/autonomous/install/systemd/*.timer /etc/systemd/system/
# 6. Reload and startsudo systemctl daemon-reloadsudo systemctl start hookprobe-provision.servicesudo systemctl enable --now hookprobe-agent.servicePost-Installation
Verify Installation
# Check statushookprobe-ctl status
# Check healthhookprobe-ctl health
# View logshookprobe-ctl logs -fEnable Auto-Updates
sudo hookprobe-ctl enable-autoupdateEnable XDP
# Edit servicesudo systemctl edit hookprobe-agent.service
# Add:[Service]Environment="XDP_ENABLED=true"
# Restartsudo systemctl daemon-reloadsudo systemctl restart hookprobe-agent.serviceFirewall Configuration
UFW (Ubuntu)
sudo ufw allow 8888/tcp # Health endpointGuardian (Hotspot)
sudo ufw allow 67/udp # DHCPsudo ufw allow 53/udp # DNSMesh Ports
sudo ufw allow 8144/udp # HTP protocolsudo ufw allow 7946/tcp # Gossipsudo ufw allow 7946/udp # GossipTroubleshooting
Installation Fails
# Check logscat /var/log/hookprobe/provision.log
# Re-run provisionsudo systemctl start hookprobe-provision.serviceService Won’t Start
# Check statussystemctl status hookprobe-agent.service
# View errorsjournalctl -u hookprobe-agent.service -n 50
# Check dependenciessudo apt install -y podman openvswitch-switchPort Conflicts
# Check port usagesudo ss -tlnp | grep 8888
# Kill conflicting process or change portNext Steps
- Configuration - Customize settings
- CLI Reference - Management commands
- Debugging - Troubleshoot issues