Zurück zu den Updates
New releaseOct 12, 2026

chisel v1.13.0

Schneller TCP/UDP-Tunnel über HTTP mit SSH-Verschlüsselung, der Reverse-Port-Forwarding, SOCKS5-Proxy und Client-Authentifizierung für sichere Netzwerkdurchquerung und Firewall-Umgehung unterstützt.

Teilen

Chisel

GoDoc CI

Chisel ist ein schneller TCP/UDP-Tunnel, der über HTTP transportiert und mittels SSH abgesichert wird. Eine einzige ausführbare Datei, die sowohl Client als auch Server enthält. Geschrieben in Go (golang). Chisel ist hauptsächlich nützlich, um Firewalls zu durchqueren, kann aber auch verwendet werden, um einen sicheren Endpunkt in Ihr Netzwerk bereitzustellen.

overview

Inhaltsverzeichnis

Funktionen

  • Einfach zu bedienen
  • Leistungsstark*
  • Verschlüsselte Verbindungen unter Verwendung des SSH-Protokolls (über crypto/ssh)
  • Authentifizierte Verbindungen; authentifizierte Client-Verbindungen mit einer Benutzerkonfigurationsdatei, authentifizierte Server-Verbindungen mit Fingerprint-Abgleich.
  • Client verbindet sich automatisch neu mit exponentiellem Backoff (einstellbar über --min/max-retry-interval); Keepalive-Pings laufen ab, sodass stillschweigend tote Verbindungen (Sleep/Wake, NAT-Timeouts, Server-Neustarts) erkannt und wiederhergestellt werden
  • Clients können mehrere Tunnel-Endpunkte über eine einzige TCP-Verbindung erstellen
  • Clients können optional SOCKS- oder HTTP-CONNECT-Proxys durchlaufen
  • Reverse-Port-Weiterleitung (Verbindungen gehen durch den Server und hinaus zum Client)
  • Server kann optional auch als Reverse-Proxy dienen
  • Server erlaubt optional SOCKS5-Verbindungen (siehe Anleitung unten)
  • Clients erlauben optional SOCKS5-Verbindungen von einer umgekehrten Port-Weiterleitung
  • Client-Verbindungen über stdio, was ssh -o ProxyCommand unterstützt und SSH über HTTP ermöglicht

Installation

Binärdateien

Releases Releases

Siehe das neueste Release oder laden Sie es jetzt herunter und installieren Sie es mit curl https://i.jpillora.com/chisel! | bash

Binärdateien werden mit der neuesten Go-Version erstellt, was die minimalen Betriebssystemversionen festlegt: Windows 10 / Server 2016, macOS 12, Linux-Kernel 3.2, FreeBSD 12.2. Für ältere Systeme (z. B. Windows 7) verwenden Sie Release v1.8.1 oder früher.

Docker

Docker Pulls Image Size

docker run --rm -it jpillora/chisel --help

Images sind Multi-Arch und werden sowohl auf Docker Hub (jpillora/chisel) als auch auf der GitHub Container Registry (ghcr.io/jpillora/chisel) veröffentlicht.

Fedora

Das Paket wird von der Fedora-Community gepflegt. Wenn Probleme bei der Verwendung des RPM auftreten, verwenden Sie bitte diesen Issue-Tracker.

sudo dnf -y install chisel

Quelle

$ go install github.com/jpillora/chisel@latest

Demo

Sie können Ihren eigenen Demo-Server in Minuten betreiben (das alte Heroku-Demo verschwand mit dem kostenlosen Tarif von Heroku). example/fly.toml stellt diesen chisel server auf dem kostenlosen Kontingent von fly.io bereit:

$ chisel server --port $PORT --backend http://example.com
# listens on $PORT, proxies normal web requests to http://example.com

Stelle es mit fly launch --copy-config aus dem Verzeichnis example/ bereit und tunnle dann zu einem beliebigen Dienst, der neben dem Server läuft, z. B.:

$ chisel client https://<your-app>.fly.dev 3000
# connects to your chisel server,
# tunnels your localhost:3000 to the server's localhost:3000

Wenn Sie die URL Ihrer App in einem Browser aufrufen, wird der Standard-Backend-Proxy des Servers angesprochen und eine Kopie von example.com angezeigt.

Verwendung

$ chisel --help

  Usage: chisel [command] [--help]

  Version: X.Y.Z

  Commands:
    server - runs chisel in server mode
    client - runs chisel in client mode

  Read more:
    https://github.com/jpillora/chisel

$ chisel server --help

  Usage: chisel server [options]

  Options:

    --host, Defines the HTTP listening host – the network interface
    (defaults the environment variable HOST and falls back to 0.0.0.0).

    --port, -p, Defines the HTTP listening port (defaults to the environment
    variable PORT and falls back to port 8080).

    --key, (deprecated use --keygen and --keyfile instead)
    An optional string to seed the generation of a ECDSA public
    and private key pair. All communications will be secured using this
    key pair. Share the subsequent fingerprint with clients to enable detection
    of man-in-the-middle attacks (defaults to the CHISEL_KEY environment
    variable, otherwise a new key is generate each run).

    --keygen, A path to write a newly generated PEM-encoded SSH private key file.
    If users depend on your --key fingerprint, you may also include your --key to
    output your existing key. Use - (dash) to output the generated key to stdout.

    --keyfile, An optional path to a PEM-encoded SSH private key. When
    this flag is set, the --key option is ignored, and the provided private key
    is used to secure all communications. (defaults to the CHISEL_KEY_FILE
    environment variable). Since ECDSA keys are short, you may also set keyfile
    to the inline key string itself, exactly as printed by --keygen (a base64
    string with a "ck-" prefix); no extra base64 encoding is needed.

Kategorien