2 points par GN⁺ 2024-04-03 | 1 commentaires | Partager sur WhatsApp

Wireproxy : proxy Socks5/HTTP ou tunnel en tant que client WireGuard

  • wireproxy est une application qui s’exécute entièrement en espace utilisateur, se connecte à un pair WireGuard et fournit à la machine un proxy socks5/http ou un tunnel.
  • Utile si vous devez vous connecter à certains sites via un pair WireGuard, mais que vous ne voulez pas vous compliquer la vie à reconfigurer une nouvelle interface réseau.

Pourquoi c’est nécessaire

  • Lorsque vous voulez simplement utiliser WireGuard comme proxy pour acheminer une partie du trafic.
  • Lorsque vous ne voulez pas de privilèges root pour modifier la configuration WireGuard.
  • Actuellement, l’utilisateur exécute wireproxy connecté à un serveur WireGuard situé dans un autre pays, puis configure son navigateur pour l’utiliser sur certains sites.
  • wireproxy est totalement découplé de l’interface réseau et ne nécessite pas de privilèges root pour sa configuration.
  • Les utilisateurs d’Amnezia VPN peuvent utiliser une version de wireproxy forkée par @juev.

Fonctionnalités

  • Routage statique TCP pour le client et le serveur
  • Proxy SOCKS5/HTTP (actuellement, seul CONNECT est pris en charge)

À faire

  • Prise en charge de l’UDP dans SOCKS5
  • Routage statique UDP

Utilisation

./wireproxy -c [chemin de la configuration]
  • Fournit des fonctions de proxy en tant que client WireGuard en espace utilisateur.
  • -h affiche l’aide, -c indique le chemin du fichier de configuration, -s active le mode silencieux, -d exécute en arrière-plan, -v affiche la version, et -n vérifie uniquement la validité du fichier de configuration.

Instructions de build

git clone https://github.com/octeep/wireproxy
cd wireproxy
make

Utilisation avec un VPN

  • Sur MacOS, la méthode d’utilisation de wireproxy avec les onglets conteneurs de Firefox et le démarrage automatique est disponible via le lien correspondant.

Exemple de fichier de configuration

  • Les paramètres [Interface] et [Peer] suivent la même signification et la même syntaxe que la configuration wg-quick.
  • TCPClientTunnel et TCPServerTunnel sont des tunnels qui acheminent le trafic TCP vers une cible spécifique depuis, respectivement, la machine locale et le réseau WireGuard.
  • STDIOTunnel est un tunnel qui relie l’entrée standard et la sortie standard du processus wireproxy à une cible TCP spécifique via WireGuard.
  • Socks5 et http créent un proxy socks5 et un proxy http sur le LAN, et routent tout le trafic via WireGuard.
  • Si vous disposez déjà d’une configuration WireGuard, vous pouvez l’importer dans le fichier de configuration wireproxy.
  • Plusieurs pairs sont pris en charge, et AllowedIPs doit être défini pour que wireproxy sache vers quel pair transférer le trafic.

L’avis de GN⁺

  • wireproxy peut être très utile aux utilisateurs qui veulent un accès Internet sécurisé via un VPN sans avoir besoin d’une connaissance approfondie de la configuration réseau.
  • Cette application est attrayante car elle permet de router un trafic spécifique via WireGuard sans modifier la configuration réseau au niveau système.
  • Toutefois, si l’utilisateur ne comprend pas suffisamment la sécurité réseau, une mauvaise configuration peut introduire des vulnérabilités de sécurité, ce qui impose de la prudence.
  • Lors de l’adoption de la technologie WireGuard, il faut tenir compte des contraintes légales locales et des politiques de confidentialité, et vérifier que l’usage d’un VPN est autorisé.
  • Parmi les autres projets open source offrant des fonctions similaires, on peut citer OpenVPN et SoftEther VPN ; l’utilisateur doit choisir l’outil adapté à ses besoins.

1 commentaires

 
GN⁺ 2024-04-03
Avis Hacker News
  • Discussion autour d’un petit outil utile

    • Un utilisateur s’en sert pour proxyfier un onglet Firefox spécifique vers son routeur domestique utilisant WireGuard. L’outil fonctionne sans protocole de proxy de couche applicative ni SSH.
    • Un autre utilisateur préfère utiliser soks avec WireGuard. Il réutilise une interface WireGuard existante, et l’utilisateur en parle en détail dans un billet de blog.
    • Parmi les autres outils, on trouve onetun.
    • Un utilisateur cite pproxy comme alternative aux tunnels SSH. pproxy permet de convertir différents protocoles de tunnel entre eux et offre des fonctions de routage. Il l’utilise pour convertir un SSH SOCKS5 en proxy HTTP.
  • Informations sur divers clients proxy

    • Plusieurs clients proxy multi-protocoles prennent en charge cette fonctionnalité. Parmi les exemples open source, on trouve sing-box, clash-meta et d’autres clients basés sur clash, ainsi que xray.
    • Côté clients closed source, il y a Surge Mac/iOS.
  • Question sur une implémentation serveur en espace utilisateur

    • Un utilisateur se demande s’il existe une implémentation serveur fonctionnant entièrement en espace utilisateur, sans périphérique tun/tap. Il suppose que cela nécessiterait une forme de pile IP en espace utilisateur.
  • Recommandation d’un outil pour un service VPN spécifique

    • Quelqu’un partage une bonne expérience avec mullvad-proxy pour Mullvad VPN. Il intègre l’outil CLI de Mullvad, ce qui facilite le changement de serveur, tout en restant isolé de la machine hôte. Il est aussi composé de nginx et de quelques scripts, ce qui laisse espérer une bonne prise en charge de SOCKS5.
  • Réaction positive à un outil écrit en Go

    • Un utilisateur pensait qu’il serait facile d’écrire un outil de ce type en Go, et a découvert que c’était effectivement le cas.
  • Discussion autour d’un cas d’usage personnel

    • Un utilisateur envisage d’utiliser ce type d’outil pour proxyfier les connexions e-mail de Thunderbird via un nœud de sortie Tailscale. Cela permettrait de ne proxyfier que les connexions e-mail sans rediriger tout le trafic vers le nœud de sortie.
  • Mention des fonctionnalités de sing-box

    • Il est aussi indiqué que sing-box offre la même fonctionnalité.