Forward HTTPS Proxy with Authentication

Hi,

I would like to make a forward https proxy with authentication, in fact i would like a proxy bay with one IP dedicated by user, like this:

user1 = X.X.X.1
user2 = X.X.X.2
user3 = X.X.X.3

Edit: for sure i would like one user:pass by person

Best regards

Hi @clintnetwork, you might be interested by using an HeadersRegexp as a matcher (reference for Traefik v1.7: https://docs.traefik.io/v1.7/basics/#matchers ).
The regexp should capture the user from the Authorization HTTP header, so you can route the corresponding backend.

Be careful: you cannot determine a dynamic list of backends by extracting the number 1 in user1 and then setting the IPv4 to this number: the backend list must be finite (generally, the IP is determined dynamically by the Docker provider/Kubernete provider).

Sounds good to you ?

1 Like

Hey @dduportal thank you, I note your solution I will try it when it will buy the server ^^

Normally the IPs will be static but the auth no, I don't really know how I can handle the auth :confused:

About the authentication, Traefik supports basic HTTP authentication as well as digest HTTP authentication.

It should be sufficient enough for you if you generate an htpasswd or htdigest file with all your users.

Alternatively, you might want to use a dedicated authentication system, which Traefik will forward auth. requests to as explained in https://docs.traefik.io/v1.7/configuration/entrypoints/#forward-authentication.

There is a cool blog post about that here: http://bit.ly/2XU5qid .

1 Like

Yep, because the problem is the authentication will be dynamic and can be changed at anytime, but I think I will use a forward auth like you said ^^

Do you have a link of configuration to make a forward proxy ?