doc:appunti:linux:sa:ulogd2
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| doc:appunti:linux:sa:ulogd2 [2025/02/17 17:21] – niccolo | doc:appunti:linux:sa:ulogd2 [2025/04/03 12:43] (current) – [/etc/logrotate.d/ulogd2] niccolo | ||
|---|---|---|---|
| Line 5: | Line 5: | ||
| </ | </ | ||
| + | ==== / | ||
| - | === / | + | In the configuration file **/ |
| < | < | ||
| - | # Local configured | + | # Custom |
| stack=ct1: | stack=ct1: | ||
| + | </ | ||
| + | This **stack** definition in the ulog2 configuration file defines a **pipeline of processing modules** that handle network flow data. Each module in the stack performs a specific transformation or logging function. Every stack definition requires: | ||
| + | |||
| + | - One input plugin | ||
| + | - None, one or multiple filter plugins | ||
| + | - One output plugin | ||
| + | |||
| + | Each plugin module in the stack is referenced with an **instance_name**: | ||
| + | |||
| + | Here's a breakdown of the components in the stack defined above: | ||
| + | |||
| + | - **ct1: | ||
| + | * '' | ||
| + | * This input plogin module extracts connection tracking (conntrack) information from packets, such as session state, source/ | ||
| + | - **ip2str1: | ||
| + | * '' | ||
| + | * This ensures that logs display IP addresses in standard notation instead of numerical or binary formats. | ||
| + | - **print1: | ||
| + | * '' | ||
| + | * This is useful for debugging or human-readable log output. | ||
| + | - **emu1: | ||
| + | * '' | ||
| + | * This is the output plugin module which is responsible for sending logs to a file, database, or another destination. | ||
| + | |||
| + | === Configuring the NFCT Netfilter Connection Tracking === | ||
| + | |||
| + | The // | ||
| + | |||
| + | < | ||
| [ct1] | [ct1] | ||
| event_mask=0x00000001 | event_mask=0x00000001 | ||
| Line 17: | Line 47: | ||
| </ | </ | ||
| - | === / | + | In this case the module will consider only **new connections** packets because the bitmask 0x00000001 matches new connections only. The option '' |
| + | |||
| + | === The IP2STR and PRINTFLOW modules === | ||
| + | |||
| + | These two modules are used at their defaults, no custom configuration is used for their instances. | ||
| + | |||
| + | === The LOGEMU module === | ||
| + | |||
| + | The **LOGEMU** modules is configured as follow in the same configuration file: | ||
| + | |||
| + | < | ||
| + | [emu1] | ||
| + | file="/ | ||
| + | sync=1 | ||
| + | </ | ||
| + | |||
| + | This means that the log is written in the specified file, every log entry is flushed immediately to the disk due the '' | ||
| + | |||
| + | ==== Bitmask Breakdown of event_mask in NFCT ==== | ||
| + | |||
| + | ^ Bit Position | ||
| + | | 0 | 0x00000001 | 1 | **New connection** (conntrack entry created) | ||
| + | | 1 | 0x00000002 | 2 | **Connection update** (state changes, e.g., from SYN_SENT to ESTABLISHED) | ||
| + | | 2 | 0x00000004 | 4 | **Destroyed connection** (entry removed from conntrack table) | ||
| + | | 3 | 0x00000008 | 8 | **Assured connection** (fully established, | ||
| + | | 4 | 0x00000010 | 16 | **Confirmed connection** (packet has been seen in both directions) | ||
| + | | 5 | 0x00000020 | 32 | **Expectation event** (related to NAT helper expectations) | ||
| + | | 6 | 0x00000040 | 64 | **Helper event** (connection helper activity, e.g., FTP, SIP) | | ||
| + | | 7 | 0x00000080 | 128 | **Destroy by GC** (garbage collector removed the connection) | ||
| + | | 8-31 | - | - | (Reserved or unused in most implementations) | ||
| + | |||
| + | So if I want to track new and destroyed connections, | ||
| + | |||
| + | ==== Logging bytes_sent and bytes_received ==== | ||
| + | |||
| + | Check that conntrack has the **bytes=** field in this output: | ||
| + | |||
| + | < | ||
| + | conntrack -L -o extended | ||
| + | </ | ||
| + | |||
| + | Run the following: | ||
| + | |||
| + | < | ||
| + | sysctl -w net.netfilter.nf_conntrack_acct=1 | ||
| + | </ | ||
| + | |||
| + | for permanent setting across reboot create the file **/ | ||
| + | |||
| + | < | ||
| + | net.netfilter.nf_conntrack_acct=1 | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | ==== / | ||
| < | < | ||
doc/appunti/linux/sa/ulogd2.1739809281.txt.gz · Last modified: by niccolo
