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. It's 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.1.1.tar.gz (9.6 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.1.1-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ftagent_lite-1.1.1.tar.gz
  • Upload date:
  • Size: 9.6 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.1.1.tar.gz
Algorithm Hash digest
SHA256 270128e14908e089332ba3d043e141c809fd1fc710dc0fc7bb4cb9e0b2b0ed70
MD5 1355cb69d69cbb7b6a398267d391f2fe
BLAKE2b-256 b2e84a535510201bbce49960b3a0da3b6af322de4988a1d94ad2833437e1ed07

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ftagent_lite-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 10.3 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.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ca752d6b0e08e2991a757069f506126a751f790a5c3a1ba7c3199b190181bae1
MD5 87f5f73fb549fb1178a52645fc255ffa
BLAKE2b-256 5e5719c4a0fa93618ccab0f3b1a0278c0ab0e19daff0d4c28ec2f0b515d1148e

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