Pangolin: Du tunneling simplifié
Découvrez Pangolin, un outil open source permettant d'utiliser Wireguard avec du trafic web, pour par exemple, renvoyer du trafic web chez vous sans ouvrir de port.
Pangolin est un outil open-source, que j'utilise personnellement, qui permet, grâce à un tunnel wireguard, de renvoyer du trafic derrière un NAT, sans avoir besoin d'ouvrir de port. Concrètement, il suffit de l'installer sur un serveur cloud ayant une adresse IP publique, d'installer le client sur son serveur chez soi, monter le tunnel en 1 seule commande, puis dans l'interface web rediriger le traffic vers x.thbl.fr dans le tunnel.
Pour les connaisseurs, c'est un peu l'alternative à la suite Cloudflare One, qui inclut Access, Tunnel web / L3. Pangolin fait exactement la même chose, mais est open-source est self-hostable. Par exemple, share.thbl.fr point vers l'adresse IP 37.59.124.74, qui est l'adresse d'un VPS OVHcloud. Le trafic web arrive donc jusqu'a Pangolin, qui le renvoit chez moi grâce au tunnel.
Le trafic arrive sur mon Rasberry Pi, avant d'être renvoyé au sein de mon réseau local sur une autre machine. Ce système présente plusieurs avantage :
- Permet de contourner les restrictions NAT ou CGNAT classique
- Permet de self-host des applications chez soi sans exposer sa réelle adresse IP
Et Pangolin propose également l'authentification sur les applications web, ce qui permet de renforcer leur sécurité. Les methodes de connexion sont notamment :
- Connexion directe avec son compte Pangolin
- Connexion via un one-time code envoyé par email (uniquement aux adresses whitelisted)
- Protection par mot de passe
- Protection par code PIN
- Ou encore, pour les accès automatisé, avec un entête spécifique
Au délà de ces fonctions, Pangolin permet l'ajout de Crowdsec afin de sécuriser vos applications avec un WAF, ou encore de bloquer l'adresse à certaine IP ou pays.
Le projet est encore tout jeune, et y'a des grandes chances qu'il s'améliore au fil de temps.
Découvrez dès maintenant Pangolin : https://github.com/fosrl/pangolin