Some traffic flows should always be captured (e.g. for auditing purposes).
The built-in captures modules (logger and network_capture) seems a bit too coarse for our use case.
Let’s add a new module to capture pcap traces of fine-grained filters (at least source IP, destination IP and port).
Implementation
Some traffic flows should always be captured (e.g. for auditing purposes).
The built-in captures modules (logger and network_capture) seems a bit too coarse for our use case.
Let’s add a new module to capture pcap traces of fine-grained filters (at least source IP, destination IP and port).
Implementation
The module maintains a list of PCAP filters of interest.
For each new packet, the
evalmethod would gate the packet to prevent too many unnecessary hits (for now, using the destination IP), then iterate over all filters of interest. When a filter matches, the packet is added to the trace.The files should be rotated at a size chosen in the configuration.
The filters can be configured in the Lua file, and dynamically (via the command probably).