Zero-Trust at the Edge: Securing AI Telemetry over PtMP Networks
Drone and fixed-camera inference on ruggedised edge hardware, where the egress policy blocks the vendor cloud and only a WireGuard tunnel leaves the site.
Running an AI model inside a cloud VPC is a solved problem. Running it on ruggedised hardware at the network edge, across 21 live telemetry feeds, with results crossing a Point-to-Multipoint wireless link, is not — because the link itself is physically reachable by anyone within range.
For an AI surveillance deployment we provisioned NVIDIA RTX 4000 servers directly at the edge. The exposure was specific: RTSP and RTMP video feeds, plus PostgreSQL telemetry, travelling over wireless segments that offer no physical security at all.
What the site actually runs
- A DJI Matrice 30T flies the site, paired to a DJI RC Plus controller over OcuSync 3.0, alongside fixed and PTZ CP Plus cameras on the ground.
- Camera feeds arrive at the edge stack as RTSP, through a firewall that segments the site network.
- MediaMTX translates the controller's RTMP stream into RTSP so everything downstream sees one protocol.
- An NVIDIA DeepStream inference server runs YOLOv8 object detection over those streams and produces annotated video.
- Detections and device state flow through an EMQX broker as MQTT telemetry and commands.
- A service API handles authentication, licensing and state, reading and writing PostgreSQL.
- Nothing leaves the site except over the WireGuard tunnel.
- The remote HQ dashboard consumes annotated RTSP and WebRTC across that tunnel.
A LiFePO4 UPS powers the whole edge stack, because an inference server that browns out mid-flight is an availability problem before it is a security one.
The blocked path matters as much as the permitted one
The most important arrow in that diagram is the one that stops. Consumer drone platforms phone home by default, and this deployment sends nothing to DJI's cloud servers — outbound traffic to them is dropped at the firewall. Video, telemetry and device state stay on site or cross the VPN, and nowhere else.
That is the difference between a VPN and a security model. Three controls make it one:
Split-tunnelling. Only sensitive telemetry bound for the cloud is routed through wg0. Local device management stays strictly local and never enters the tunnel.
Default-deny egress. Host iptables rules drop any outbound packet that did not originate from the WireGuard interface or the authorised Docker bridge, so a compromised container has no route out.
DNS sinkholing. Pi-hole as the primary resolver blocks unauthorised internal queries, which removes the lookup that malware needs before it can call home.
Why WireGuard rather than IPSec
IPSec and OpenVPN carry enough cryptographic and protocol overhead to hurt on a constrained wireless link, where the latency budget is already thin. WireGuard runs in Linux kernel space and uses ChaCha20 with Poly1305, which gives modern cryptography at close to no latency cost — the property that matters when the transport is the weak point.
If the wireless link drops, inference continues locally and PostgreSQL keeps recording; only the path to HQ is interrupted.
The deployment has sustained 99.9% uptime over 90+ days with no packet interception and no security breach.