Wireproxy: Socks5/HTTP-Proxy oder Tunnel als WireGuard-Client
wireproxy ist eine Anwendung, die vollständig im User Space läuft, sich mit einem WireGuard-Peer verbindet und dem System einen socks5/http-Proxy oder Tunnel bereitstellt.
- Nützlich, wenn man bestimmte Websites über einen WireGuard-Peer erreichen muss, aber sich nicht mit dem Einrichten einer neuen Netzwerkschnittstelle herumschlagen möchte.
Warum man das braucht
- Wenn man WireGuard einfach als Proxy verwenden möchte, um einen Teil des Traffics zu senden.
- Wenn man keine Root-Rechte haben möchte, um die WireGuard-Konfiguration zu ändern.
- Der aktuelle Nutzer betreibt wireproxy mit Verbindung zu einem WireGuard-Server in einem anderen Land und konfiguriert den Browser so, dass er es für bestimmte Websites verwendet.
- wireproxy ist vollständig von Netzwerkschnittstellen entkoppelt und benötigt keine Root-Rechte für die Konfiguration.
- Nutzer von Amnezia VPN können eine von @juev geforkte Version von wireproxy verwenden.
Funktionen
- Statisches TCP-Routing für Client und Server
- SOCKS5/HTTP-Proxy (derzeit wird nur CONNECT unterstützt)
To-do
- UDP-Unterstützung in SOCKS5
- Statisches UDP-Routing
Verwendung
./wireproxy -c [config 경로]
- Bietet Proxy-Funktionen als WireGuard-Client im User Space.
-h steht für Hilfe, -c für den Pfad zur Konfigurationsdatei, -s für den stillen Modus, -d für die Ausführung im Hintergrund, -v für die Ausgabe der Version und -n für einen Modus, der nur die Gültigkeit der Konfigurationsdatei prüft.
Build-Anleitung
git clone https://github.com/octeep/wireproxy
cd wireproxy
make
Verwendung mit VPN
- Wie man wireproxy unter MacOS zusammen mit Firefox-Container-Tabs und Autostart verwendet, findet sich unter dem entsprechenden Link.
Beispiel-Konfigurationsdatei
- Die Einstellungen für
[Interface] und [Peer] haben dieselbe Bedeutung und Syntax wie in der wg-quick-Konfiguration.
- TCPClientTunnel und TCPServerTunnel sind Tunnel, die TCP-Traffic jeweils vom lokalen Rechner bzw. aus dem WireGuard-Netzwerk zu einem bestimmten Ziel weiterleiten.
- STDIOTunnel ist ein Tunnel, der die Standardeingabe und -ausgabe des wireproxy-Prozesses über WireGuard mit einem bestimmten TCP-Ziel verbindet.
- Socks5 und http erzeugen im LAN einen socks5-Proxy und einen http-Proxy und leiten den gesamten Traffic über WireGuard.
- Wenn bereits eine WireGuard-Konfiguration vorhanden ist, kann sie in die wireproxy-Konfigurationsdatei importiert werden.
- Mehrere Peers werden unterstützt;
AllowedIPs muss angegeben werden, damit wireproxy weiß, an welchen Peer weitergeleitet werden soll.
Meinung von GN⁺
- wireproxy kann für Nutzer sehr nützlich sein, die einen sicheren Internetzugang über VPN möchten, ohne tiefgehende Kenntnisse der Netzwerkkonfiguration zu haben.
- Besonders attraktiv ist, dass die Anwendung bestimmten Traffic über WireGuard routen kann, ohne Änderungen an den Netzwerkeinstellungen auf Systemebene zu erfordern.
- Wenn Nutzer jedoch kein ausreichendes Verständnis von Netzwerksicherheit haben, ist Vorsicht geboten, da Fehlkonfigurationen zu Sicherheitslücken führen können.
- Bei der Einführung von WireGuard-Technologie sollten lokale rechtliche Einschränkungen und Datenschutzrichtlinien berücksichtigt und geprüft werden, ob die Nutzung von VPN erlaubt ist.
- Andere Open-Source-Projekte mit ähnlicher Funktionalität sind unter anderem OpenVPN und SoftEther VPN; Nutzer sollten das passende Werkzeug entsprechend ihren Anforderungen auswählen.
1 Kommentare
Hacker-News-Kommentare
Diskussion über ein nützliches kleines Tool
Informationen zu verschiedenen Proxy-Clients
Frage zu Server-Implementierungen im User Space
Empfehlung für ein Tool für einen bestimmten VPN-Dienst
Positive Reaktion auf ein in Go geschriebenes Tool
Diskussion über persönliche Anwendungsfälle
Hinweis auf die Funktion von sing-box