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

Add support for Proxy Protocol. #428

Open
wants to merge 37 commits into
base: master
Choose a base branch
from

Conversation

gautam142857
Copy link

This is useful for Services that are fronted by little
proxy, but do not want the client's ip address to be
obscured because the server's business logic involves
using the client's ip address.
https://www.haproxy.org/download/1.8/doc/proxy-protocol.txt

The feature is controlled by two options in the
DefaultHttpProxyServer class :

  1. sendProxy - to send a proxy protocol header to server
  2. acceptProxy - to accept one from client
    Based on these configurations, a proxy protocol message
    decoder and encoder is added in ClientToProxyConnection
    and ProxyToServerConnection classes respectively.
    The changes are non-intrusive as the default values of these
    configurations is false. One must specify these configurations
    explicitly to work in the proxy protocol mode.

Tests :
Existing tests passed.
Unit tests added for send, accept and relay proxy header
Manually tested with HAProxy load balancer.

mrogers and others added 30 commits October 23, 2018 17:49
…nager

Made client details available to ChainedProxyManager
Refactor mitm manager to accept engine with user-defined parameters
Add ability to load keystore from classpath
mrog and others added 7 commits March 1, 2019 23:15
This is useful for Services that are fronted by little
proxy, but do not want the client's ip address to be
obscured because the server's business logic involves
using the client's ip address.
https://www.haproxy.org/download/1.8/doc/proxy-protocol.txt

The feature is controlled by two options in the
DefaultHttpProxyServer class :
1) sendProxy - to send a proxy protocol header to server
2) acceptProxy - to accept one from client
Based on these configurations, a proxy protocol message
decoder and encoder is added in ClientToProxyConnection
and ProxyToServerConnection classes respectively.
The default values of these configurations is false.

Tests :
Existing tests passed.
Unit tests added for send, accept and relay proxy header
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants