We have two different RDP servers that do different functions so are classed as different backends but use the same source port 3389.Is it possible to split these with an ACL at the frontend using something like the destination computer name and direct them to the relevant backend?
frontend rdp
bind :3389
acl is-rdp1 if the endpoint is rdp1.example.com
acl is-rdp2 if the endpoint is rdp2.example.com
use backend rdp1 if is-rdp1
use backend rdp2 if is-rdp2
Because RDP is not HTTP. The configuration above matches the HTTP header “Host” or a HTTP path and compares it with a string.
But RDP is a different protocol, so HTTP rules don’t apply. You probably also get configuration warnings with this, as the front and backend must be in TCP mode.
I’m not sure RDP contains a hostname anywhere in the protocol handshake, so I don’t think this is possible.