Skip to content

Web Interface

flowwler-web is an optional browser interface for flowwler. It proxies the REST API and has no dependencies beyond the flowwler daemon itself.

Dashboard


Functions

Function Description
Dashboard Daemon status, active mitigation count, BGP peer states, flow exporter health, recent attacks, and the top-10 targets by inbound traffic
Analyze IP IP lookup (IP + rank-by metric) showing group membership, matched subnet, escalation policy, and live FlowSpec rule suggestions derived from current flow data. Also shows a standalone Top Targets table (top-20 by inbound traffic), filterable by group.
Attack history Recorded attacks with aggregate stats (total count, mean duration, peak BPS/PPS, top victims and groups). Filterable by group, victim IP, or active-only, with prev/next pagination. Each attack links to a full event timeline with the FlowSpec rules and rule suggestions present at each state transition, plus a PCAP download when a capture was taken.
Mitigations Active auto-managed and manual mitigations, plus all currently announced FlowSpec rules. New mitigations can be created manually via a form that supports blackhole, subnet-blackhole, and FlowSpec types, with an optional BGP community (standard or large format). FlowSpec rules accept a victim IP, an action (discard, rate-limit, or redirect — with next-hop and/or VRF route target), and optional source IP, protocol/port, and packet-length filters. When the API returns FlowSpec rule suggestions, they appear as a dismissible card with one-click Apply buttons that pre-fill the form.
Groups Per-group traffic: inbound, outbound, and discard rates per IP; named rules with their match criteria (protocol, ports, TCP flags, fragments, packet length, and subnet-level carpet-bomb config); active victims and escalation levels, including aggregated subnet-level escalations; FlowSpec rules; prefix sources; force-clear per victim
Captures Active per-attack PCAP capture sessions, manual ad-hoc captures (start/stop for any victim IP), and attack-linked PCAP files with size, packet count, a decoded packet preview, and download. Only shown in the sidebar when PCAP capture is enabled in the daemon config.
Flow exporters Liveness and sampling rate per NetFlow/sFlow router
BGP Peer states and full RIB (IPv4/IPv6 unicast and FlowSpec)
Notifications Status and last-fired time per notification target; test dispatch
Whitelist Configured whitelist scopes (global and per-group overrides) with their resolved CIDR prefix lists, expandable per scope
Config Read-only view of the running configuration with buttons to trigger a full config reload or an external prefix sources refresh

Installation

sudo apt install flowwler-web

The package installs the following:

Path Description
/usr/bin/flowwler-web Binary
/lib/systemd/system/flowwler-web.service systemd unit
/etc/default/flowwler-web Environment file

The flowwler system user is shared with the flowwler daemon if both packages are installed.

Edit /etc/default/flowwler-web to configure the service, then enable and start it:

sudo systemctl enable --now flowwler-web

Configuration

All flags can be set via environment variables. The Debian package writes these into /etc/default/flowwler-web, which the systemd unit loads automatically.

Flag Env var Default Description
--listen FLOWWLER_LISTEN :8080 Address to listen on
--api-url FLOWWLER_API_URL http://localhost:9731 flowwler API base URL
--api-key FLOWWLER_API_KEY - API key forwarded as X-API-Key
--username FLOWWLER_USERNAME - HTTP Basic Auth username
--password FLOWWLER_PASSWORD - HTTP Basic Auth password

If the flowwler API has authentication enabled (see REST API - Authentication), supply credentials via --api-key or --username/--password. Unauthenticated requests are sent if neither is set.

flowwler-web has no authentication layer of its own. Place it behind a reverse proxy with TLS and access control if exposed beyond localhost.