Skip to main content

Lightweight open-source DDoS traffic monitor — stdout output, no account required

Project description

ftagent-lite

Open-source, zero-config DDoS traffic monitor. Outputs to stdout.

ftagent-lite is a lightweight network traffic monitor that detects DDoS attack patterns in real-time and prints structured stats to stdout. No API key. No account. No cloud.

It's the open-source sibling of the Flowtriq detection agent — great for quick diagnostics, CI pipelines, or building your own tooling on top.


Install

pip install scapy psutil

Then run with sudo (packet capture requires root):

sudo python3 ftagent_lite.py

Usage

sudo python3 ftagent_lite.py [options]

Options:
  -i, --interface IFACE   Network interface (default: any)
  -t, --interval  SECS    Reporting interval in seconds (default: 2)
  -T, --threshold PPS     PPS alert threshold (default: 5000)
  -j, --json              Machine-readable JSON output (one object per line)
  -w, --watch             Live updating terminal display
      --no-color          Disable ANSI colors
  -V, --version           Show version

Examples

# Monitor all interfaces, 2-second intervals
sudo python3 ftagent_lite.py

# Monitor eth0 with 5-second intervals
sudo python3 ftagent_lite.py --interface eth0 --interval 5

# Alert threshold at 50k pps
sudo python3 ftagent_lite.py --threshold 50000

# Pipe JSON to jq
sudo python3 ftagent_lite.py --json | jq '{pps: .pps, srcs: .src_ip_count}'

# Live dashboard view
sudo python3 ftagent_lite.py --watch

# Log to file
sudo python3 ftagent_lite.py --json >> /var/log/traffic.jsonl

Output

Human-readable (default)

2026-03-11 18:04:21 [HIGH]
  Traffic : 47.8K pps  1.7 Gbps
  Proto   : TCP 3.2%  UDP 94.1%  ICMP 0.4%
  Sources : 8,421 unique IPs  |  Avg pkt: 38 bytes
  Top dst : :11211(31042)  :53(12831)  :80(3201)
  Top src : 203.0.113.5  198.51.100.8  192.0.2.99  ...

  ! Attack pattern detected. Try Flowtriq for full alerting + auto-mitigation: https://flowtriq.com

JSON (--json)

{
  "timestamp": "2026-03-11T18:04:21+00:00",
  "pps": 47821,
  "bps": 215000,
  "tcp": 1530,
  "udp": 45100,
  "icmp": 191,
  "other": 0,
  "tcp_pct": 3.2,
  "udp_pct": 94.1,
  "icmp_pct": 0.4,
  "src_ip_count": 8421,
  "top_src_ips": ["203.0.113.5", "198.51.100.8", "192.0.2.99"],
  "top_dst_ports": [[11211, 31042], [53, 12831], [80, 3201]],
  "avg_pkt_size": 38
}

Attack detection

ftagent-lite classifies traffic severity based on your --threshold:

PPS vs threshold Severity
< threshold normal
≥ threshold MEDIUM
≥ 2× threshold HIGH
≥ 5× threshold CRITICAL

For production DDoS detection with automatic alerting (Discord, Slack, PagerDuty, Teams, Telegram, DataDog, Prometheus, and more), PCAP capture, AI classification, escalation policies, and auto-mitigation (Cloudflare WAF, iptables, DigitalOcean, Vultr) — see Flowtriq.


Requirements

  • Python 3.7+
  • scapy — packet capture and protocol parsing
  • psutil — fallback if scapy unavailable (no protocol breakdown)
  • Root/sudo — required for raw socket capture

Limitations vs Flowtriq Pro

Feature ftagent-lite Flowtriq
Real-time PPS/BPS
Protocol breakdown
Source IP tracking
JSON output
Attack alerts (Discord, Slack, etc.)
PCAP capture
AI attack classification
Auto-mitigation (iptables, CF WAF)
Cloud dashboard
Multi-node
Team notifications + escalation

Start a free 7-day Flowtriq trial →


License

MIT License — Copyright (c) 2026 Flowtriq

Permission is hereby granted, free of charge, to any person obtaining a copy of this software to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the software, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the software.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ftagent_lite-1.0.0.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ftagent_lite-1.0.0-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

Details for the file ftagent_lite-1.0.0.tar.gz.

File metadata

  • Download URL: ftagent_lite-1.0.0.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.10

File hashes

Hashes for ftagent_lite-1.0.0.tar.gz
Algorithm Hash digest
SHA256 d4a1976d2c838d00e4d967ea0ffad834086536ce177f4e2ee7ebe8727d47d824
MD5 eaf54bd9f40b797ac2fc58810e8b8eeb
BLAKE2b-256 f75a8428aaba677ba18a4caacc1647742b703f3f35a1859416be3e6c732d0bc8

See more details on using hashes here.

File details

Details for the file ftagent_lite-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: ftagent_lite-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 9.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.10

File hashes

Hashes for ftagent_lite-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 298abcc4d196b6acdcd3c46d86175ea4b552557d80b174594339dc0bfd166811
MD5 fb38dbfa6810bf2a8aeee4d2cec7d486
BLAKE2b-256 ab9912a71dc5b4df6182ffbc9c7d0011ada6074a617f5100f344b95e90cd74bf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page