Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Filebeat] udp/tcp/netflow/lumberjack - support Proxy Protocol #34961

Open
andrewkroh opened this issue Mar 29, 2023 · 3 comments
Open

[Filebeat] udp/tcp/netflow/lumberjack - support Proxy Protocol #34961

andrewkroh opened this issue Mar 29, 2023 · 3 comments
Labels
enhancement Filebeat Filebeat Team:Security-Deployment and Devices Deployment and Devices Team in Security Solution

Comments

@andrewkroh
Copy link
Member

Describe the enhancement:

Support accepting ingress traffic that contains Proxy Protocol 1 v1 or v2 headers.

Describe a specific use case for the enhancement or feature:

Allow users to put a load balancer (LB) in front of Filebeat and still have the original source address passed to the udp, tcp, netflow, and lumberjack inputs. Without this feature Filebeat will include the source address of the load balancer into the events which would accurately reflect the source of the data.

This is particularly useful for Netflow because the netflow and IPFIX RFCs state the collectors should use the source address as part of the association between templates and data records 2. Without the real source address the netflow input cannot properly recall the appropriate template definitions for an exporter because the source port from the LB might be changing as it forwards packets.

As Template IDs are unique per UDP session and per Observation
Domain, at any given time, the Collecting Process SHOULD maintain the
following for all the current Template Records and Options Template
Records: <IPFIX Device, Exporter source UDP port, Collector IP
address, Collector destination UDP port, Observation Domain ID,
Template ID, Template Definition, Last Received>.

Load Balancers (not an exhaustive list)

Footnotes

  1. https://www.haproxy.org/download/2.0/doc/proxy-protocol.txt

  2. https://www.rfc-editor.org/rfc/rfc7011#page-44

@elasticmachine
Copy link
Collaborator

Pinging @elastic/security-external-integrations (Team:Security-External Integrations)

@andrewkroh
Copy link
Member Author

andrewkroh commented Jan 22, 2024

https://github.com/pires/go-proxyproto could be useful for implementation.

@andrewkroh andrewkroh added Team:Security-Deployment and Devices Deployment and Devices Team in Security Solution and removed Team:Security-External Integrations labels Jan 31, 2024
@elasticmachine
Copy link
Collaborator

Pinging @elastic/sec-deployment-and-devices (Team:Security-Deployment and Devices)

@taylor-swanson taylor-swanson changed the title [Filebeat ] udp/tcp/netflow/lumberjack - support Proxy Protocol [Filebeat] udp/tcp/netflow/lumberjack - support Proxy Protocol Feb 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Filebeat Filebeat Team:Security-Deployment and Devices Deployment and Devices Team in Security Solution
Projects
None yet
Development

No branches or pull requests

2 participants