I have my pangolin server set up and working, providing forward auth and roll based access before reverse proxying my self hosted resources.

However when I have the pangolin zero-trust client connected, I want to skip the forward auth since I’m already authed via the client. I want to do this since some apps like Jellyfin don’t play nice with the forward auth.

I can’t find a way to achieve this - there is no rule for connected clients. When I set up as a private response, then I don’t get the reverse-proxy functionality, so when the client is connected my urls change (need to add ports), which isn’t really acceptable.

I can set up another reverse proxy behind pangolin, but pangolin already provides reverse proxying so that seems silly.

What am I missing? How can I achieve the goal of skipping forward auth when the pangolin client is connected?

  • Jul (they/she)@piefed.blahaj.zone
    link
    fedilink
    English
    arrow-up
    2
    ·
    14 hours ago

    Yeah, I have caddy and traefik in front of most of my home-based services, except for a few web UIs like the router’s. Pangolin just receives incoming connections and routes them to the correct reverse proxy in the correct VLAN for that service.

    I have VLANs to separate services that are more public facing from very private ones that only certain devices should be able to connect to directly. Basically, I have one VLAN for IoT devices that need to connect to the internet often but only certain things should access directly, one for very private things like my NAS, database server, 3D printer, etc, that rarely if ever need access to the internet, one for my personal devices (laptop, desktop, phone, tv) which are behind a pihole for ad blocking, and one guest VLAN for guests, but mostly for my work computer which really likes to snoop.

    • PeriodicallyPedantic@lemmy.caOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 hours ago

      Pangolin is built on traefik, and does all the reverse proxying I need (X sub-domain goes to Y port on Z home server).

      I don’t really like the idea of n metroyska reverse proxis, both because conceptually it bothers me, but also because my needs seem simple and doesn’t seem like it deserves the extra complexity. The public resource reverse proxy works for everything I have.

      I’m looking for a way to configure pangolin, which already routes property, to skip auth when the auth can be provided by the pangolin client.

      • Jul (they/she)@piefed.blahaj.zone
        link
        fedilink
        English
        arrow-up
        2
        ·
        6 hours ago

        Yeah get that. I do it because my pangolin is segregated so that if that internet facing layer is penetrated, there’s not much else they’ll have access to. Similarly, if my WiFi is penetrated, there’s just a few devices. And many of my services run on Kubernetes distributed and load balanced across a bunch of cheap devices, so it needs reverse proxying at the ingress anyway. And there are a few other reasons for keeping traffic off of the pangolin server or even the router when it’s internal to internal, but still be able to use the single domain name for the service, especially with IPv6 not having static IP addresses quite the same way as IPv4, so not wanting to hard code IP addresses or even port assignments in services that back other services like the database server which originally was just running on the NAS, but switching it over to another system only required changing the internal reverse proxy, not every service that used it. I like abstraction like that.

        • PeriodicallyPedantic@lemmy.caOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          5 hours ago

          I may end up doing extra reverse proxies just because complicated configuration is better than complicated use. It kinda feels like there should be a way to do it right in pangolin, it seems like it’s right there lol.