Self-Hosted Network Scanner for Homelabs

Open-source, self-hosted network monitoring. Discover all devices, detect vulnerabilities, and track changes over time. Runs locally on Docker, Raspberry Pi, or bare metal. No cloud required.

Python License Docker

Features

Device Discovery

nmap-based scanning with configurable profiles. Captures IP, MAC, hostname, vendor (via OUI), OS fingerprint, and service versions.

Risk Assessment

Built-in threat database scores devices based on open ports (telnet, SMB, RDP, etc.) and service versions. CVE lookup for common services.

Change Detection

Tracks device additions/removals, port state changes, and service updates between scans. Full diff history in the database.

Historical Data

SQLite-backed storage with full scan history. Dashboard charts for device count, risk scores, and change frequency over time.

REST API

Full JSON API with OpenAPI docs at /docs. API key auth for scripts and integrations. Works with Home Assistant, Grafana, etc.

Docker Native

Multi-arch images (amd64, arm64, armv7) on GHCR. Requires NET_ADMIN/NET_RAW caps and host networking for nmap.

Use Cases

Homelab Monitoring

Track all servers, containers, and services in your self-hosted infrastructure.

IoT Security Auditing

Identify vulnerable smart home devices with open ports and outdated services.

Network Inventory

Maintain an up-to-date list of all devices on your home or small office network.

Rogue Device Detection

Get alerts when unknown devices appear on your network.

Raspberry Pi Network Scanner

Deploy on a Pi to continuously monitor your network with minimal resources.

Alternative to Cloud Scanners

Self-hosted replacement for Fing, Fingbox, and other cloud-based network tools.

Quick Start

Docker Compose or single container

# docker-compose.yml
services:
  argus:
    image: ghcr.io/rangulvers/argus:latest
    network_mode: host
    cap_add:
      - NET_ADMIN
      - NET_RAW
    volumes:
      - ./data:/app/data
      - ./config.yaml:/app/config.yaml:ro

# Web UI: http://localhost:8080
# API docs: http://localhost:8080/docs

Documentation

Installation guides, configuration reference, and full API documentation.