Pangolin – Proxy, VPN et auth enfin réunis
Si vous auto-hébergez vos propres services parce que VOUS AVEZ DU TEMPS GRÂCE A VOTRE BULLSHIT JOB SURPAYÉ, vous connaissez la chanson… il vous faut un reverse proxy type Nginx Proxy Manager pour router le trafic, un tunnel Cloudflare ou WireGuard pour exposer vos services sans ouvrir de ports, et un truc genre Authentik pour l’auth. Donc 3 outils, 3 configs différentes, et surtout 3 trucs qui peuvent vous péter à la gueule à tout moment, surtout quand vous êtes en vacances ou en train de jouer avec vos enfants.
Mais heureusement, j’arrive à la rescousse avec
Pangolin
, un projet open source qui colle tout ça dans un seul paquet : Proxy inversé, tunnels WireGuard chiffrés, authentification zero-trust, le tout orchestré par Docker. Une commande de grosse feignasse dans le terminal et c’est installé !!
curl -fsSL https://static.pangolin.net/get-installer.sh | bash
Le truc peut tourner sur n’importe quel VPS avec une IP publique (Ubuntu 20.04+ ou Debian 11+, AMD64 ou ARM64). L’installeur pose Docker, Traefik et les conteneurs en 2-3 minutes chrono et ensuite vos services à la maison se connectent via des tunnels WireGuard… sans ouvrir le moindre port sur votre box ! Comme ça, que ce soit votre Jellyfin de cyberpérate, votre Nextcloud ou votre Gitea… tous deviennent accessibles depuis n’importe où, avec les certificats Let’s Encrypt automatiques derrière qui vont bien.
Sous le capot, c’est du NAT traversal intelligent. Même derrière un CGNAT Orange ou un firewall restrictif de chez Free, les tunnels WireGuard trouvent, comme la vie dans Jurassic Parc, toujours leur chemin via UDP. Pas besoin de DDNS, pas besoin de supplier votre FAI pour une IP fixe. Par contre, si vous avez déjà galéré avec du port forwarding sur une Livebox 5, vous savez à quel point c’est appréciable !
D’ailleurs, côté sécurité c’est carrément différent d’un
VPN mesh classique type Tailscale
. Au lieu de filer l’accès à tout un réseau (et prier pour que personne ne fasse n’importe quoi), Pangolin fonctionne en zero-trust : Chaque utilisateur n’accède qu’aux ressources que vous avez explicitement définies. SSH, RDP, bases de données, apps web… vous choisissez qui voit quoi et y’a même du MFA, du geo-blocking, voire du blocage par ASN si le coeur vous en dit.
Côté architecture, c’est un petit zoo : Pangolin (le serveur en TypeScript), Gerbil (le tunneling WireGuard), Newt (le connecteur réseau local) et Traefik comme reverse proxy. Oui, y’a un genre de thème “animaux fouisseurs”… à vrai dire c’est assez mignon tant que ça trimballe pas des virus. Et des clients natifs existent pour Mac, Windows, Linux, iOS et Android, pas forcément courant pour un projet de cette taille.
Pour l’auth, ça supporte Azure AD, Google, ou n’importe quel provider OAuth2/OIDC. Du coup, si vous utilisez déjà
Pocket ID
pour votre SSO passkey, ça s’emboîte bien (qui a dit “comme papa” ??). Pangolin c’est donc le top pour disposer d’un accès public à vos services (là où Tailscale gère le mesh privé).
Attention quand même, y’a 4 ports à ouvrir sur votre VPS : 80 et 443 en TCP (classique), plus 51820 et 21820 en UDP pour les tunnels WireGuard. Oubliez pas le 21820 sinon les clients ne se connecteront pas. La licence est dual : AGPL-3 pour la Community Edition (gratuite), et une licence commerciale pour l’Enterprise (gratuite aussi pour un usage perso et les boîtes sous 100K$ de CA). Si vous ne voulez pas gérer l’infra, y’a aussi une offre cloud managée et un installer one-click sur DigitalOcean.
CrowdSec
, que j’adore, est même intégrable en option pour ajouter une couche de sécurité collaborative, et si vous utilisiez
Nginx Proxy Manager
avant, la migration vaut le coup d’être envisagée.
Bref, si votre stack self-hosted ressemble à un millefeuille de conteneurs,
Pangolin
mérite clairement un essai poussé. Et un grand merci à Tom Nook pour le partage !

Leave a Comment