Allgemeine Einführung
Go-Proxy ist ein hochleistungsfähiger Proxy-Server, der in der Sprache Go entwickelt wurde und hauptsächlich dazu dient, Proxy-Dienste in verschiedenen Netzwerkumgebungen bereitzustellen. Er unterstützt eine Vielzahl von Protokollen, darunter HTTP, HTTPS, SOCKS5, WebSocket, TCP und UDP, und ist in der Lage, eine Vielzahl von Proxy-Anforderungen zu erfüllen. Das Design-Ziel von Go-Proxy ist es, eine leistungsstarke und einfach zu bedienende Proxy-Lösung für Szenarien wie Unternehmens-Intranet-Durchdringung, regionenübergreifenden Zugriff, Netzwerk-Beschleunigung und sichere Kommunikation bereitzustellen. Insbesondere die nahtlose Integration mit Docker macht die Bereitstellung und Verwaltung einfacher und effizienter.
Funktionsliste
- Unterstützung von HTTP, HTTPS, SOCKS5, WebSocket, TCP und UDP Proxy
- Unterstützung der Verkettung von Proxy und Intranet-Penetration, geeignet für komplexe Netzwerkumgebung
- Bietet hochgradige TLS-Verschlüsselung zur Gewährleistung der Kommunikationssicherheit
- Unterstützung von Geschwindigkeits-, Verkehrs- und Verbindungsbegrenzungen, flexible Kontrolle der Netzwerkressourcen
- Schwarze und weiße Listen verwalten, den Zugang kontrollieren und die Sicherheit erhöhen
- Plattformübergreifende Kompatibilität, unterstützt Windows, Linux und macOS
- Detaillierte Protokollierungs- und Überwachungsfunktionen, einfache Verwaltung und Fehlerbehebung bei Problemen
- Unterstützt die Docker-Bereitstellung zur Vereinfachung der Installations- und Verwaltungsprozesse
Hilfe verwenden
Ablauf der Installation
- Installation von der Quelle aus::
- Stellen Sie sicher, dass die Go-Sprachumgebung installiert ist.
- Führen Sie den folgenden Befehl aus, um Go-Proxy herunterzuladen und zu installieren:
go get github.com/yusing/go-proxy
- Wechseln Sie in das Projektverzeichnis, kompilieren Sie und führen Sie es aus:
cd $GOPATH/src/github.com/yusing/go-proxy go build . /go-proxy
- Installieren mit Docker::
- Stellen Sie sicher, dass Docker installiert ist.
- Ziehen Sie das Go-Proxy-Bild:
bash
docker pull ghcr.io/yusing/go-proxy
- Starten Sie den Container:
bash
docker run -p 8080:8080 ghcr.io/yusing/go-proxy
Richtlinien für die Verwendung
- Konfigurationsdatei::
- Go-Proxy unterstützt eine detaillierte Konfiguration über Konfigurationsdateien. Die Standardkonfigurationsdatei ist
config.yaml
kann der Benutzer die Parameter in der Konfigurationsdatei nach Bedarf ändern, z. B. den Proxy-Port, den Protokolltyp, die Einstellungen für verkettete Proxys usw.
- Go-Proxy unterstützt eine detaillierte Konfiguration über Konfigurationsdateien. Die Standardkonfigurationsdatei ist
- Starten des Proxyservers::
- Verwenden Sie den folgenden Befehl, um den Proxyserver zu starten:
. /go-proxy -config config.yaml
- Sobald der Server gestartet ist, können Sie über einen Browser oder ein anderes Client-Tool auf den Proxy-Server zugreifen, um Proxy-Tests durchzuführen.
- Erweiterte Funktionen::
- KettenvertreterLegen Sie die Adresse des Upstream-Proxyservers in der Konfigurationsdatei fest, um einen mehrstufigen Proxy zu erreichen, der sich für komplexe Netzwerkumgebungen eignet, die einen mehrstufigen Proxy erfordern.
- Intranet-DurchdringungDurch die Konfiguration der Parameter für die Intranet-Penetration wird der Extranet-Zugang der Intranet-Geräte erreicht, wodurch das Problem gelöst wird, dass die Intranet-Geräte nicht direkt auf das Extranet zugreifen können.
- verschlüsselte KommunikationTLS-Verschlüsselung: Aktivieren Sie die TLS-Verschlüsselung, um die Sicherheit der Proxy-Kommunikation zu gewährleisten und zu verhindern, dass Daten gestohlen oder verfälscht werden.
- Begrenzung der Geschwindigkeit und Begrenzung des StromsGeschwindigkeits- und Flussbegrenzungsparameter in der Konfigurationsdatei festlegen, um den Proxy-Verkehr und die Anzahl der Verbindungen zu kontrollieren, damit die Netzwerkressourcen nicht missbraucht werden.
- schwarze und weiße ListeKonfigurieren Sie schwarze und weiße Listen, um IP-Adressen und Domänennamen zu verwalten, auf die der Zugriff erlaubt oder verboten ist, und erhöhen Sie so die Netzwerksicherheit.