Cannot view Real IP while using a Proxy and rabbitmq_auth_backend_http #13606
-
Is your feature request related to a problem? Please describe.Currently if you use rabbitmq_auth_backend_http, you will only receive the IP of the Proxy/LB(HAProxy in my case). There are no other params or Headers that can be used to view the Real IP. Describe the solution you'd likeBe able to view Real IP if the proxy protocol is enabled. Describe alternatives you've consideredNo response Additional contextNo response |
Beta Was this translation helpful? Give feedback.
Replies: 5 comments 4 replies
-
@fdestefano you will need to use a Proxy Protocol-enabled proxy and make your HTTP apps support it. You cannot make Proxy Protocol support optional, once enabled, all clients (proxies) must use it or such requests should be rejected per protocol spec. I cannot think of anything around Proxy Protocol that the plugin should support. If you can think of something, please go ahead and investigate what it would take to implement that. This won't be a priority for our team any time soon. |
Beta Was this translation helpful? Give feedback.
-
I am not seeing any of the PROXY headers being passed to the backend service while using the
The IP |
Beta Was this translation helpful? Give feedback.
-
I will work on getting a repo that you can see a similar infra.
|
Beta Was this translation helpful? Give feedback.
-
I finally able to continue with this and I am not seeing proxy protocol headers being sent to the authing service.
I expect to seeing something like |
Beta Was this translation helpful? Give feedback.
-
Right, I doubt they would be, because you're probably the first person ever to try to use proxy protocol with the HTTP auth backend, and expect client IP to be exposed via the HTTP auth backend. My comment here still stands. I'm sure this can be implemented. |
Beta Was this translation helpful? Give feedback.
The plugin acts as a straightforward HTTP client that can use GET or POST methods, and contact a known number of endpoints.
When traffic that goes over a Proxy protocol-enabled proxy, TCP (including HTTP) clients do not need any additional configuration. The proxy does all the relevant work.
RabbitMQ Core Team will not debug your networking or proxy setup for you. Our Community Support Policy states that clearly.
The plugin and several example services are all open source, you can see
exactly what the HTTP client does even without a traffic capture.
Please take it from here.