Volver a actualizaciones
Nuevo releaseSep 18, 2026

go-http-proxy-to-socks v1.15.6

CLI MITM proxy que convierte SOCKS4/SOCKS5 en proxy HTTP/HTTPS/HTTP2/HTTP3 con redirección transparente TCP/UDP, suplantación ARP/NDP/DNS, rastreo de tráfico y captura de paquetes. Escrito en Go puro, sin libpcap.

Compartir

GoHPTS - Proxy transparente HTTP(S) y TCP/UDP a proxy SOCKS4/SOCKS5 (cadena) escrito en Go

License: GPL v3 Go Reference GitHub go.mod Go version AUR Version AUR Last Modified AUR Maintainer Docker Pulls GitHub Release GitHub Downloads (all assets, all releases) GitHub Downloads (all assets, latest release)

GoHPTS - Colors example

Tabla de contenidos

Introducción

[Volver]

La herramienta de CLI GoHPTS es un puente entre clientes HTTP y un servidor proxy SOCKS5 o múltiples servidores (cadena). Escucha localmente como un proxy HTTP, acepta solicitudes HTTP estándar o HTTPS (mediante CONNECT) y reenvía la conexión a través de un proxy SOCKS5. Inspirado por http-proxy-to-socks y Proxychains

Posible caso de uso: necesitas conectarte a una API externa mediante Postman, pero esta API solo está disponible desde algún servidor remoto. Los siguientes comandos te ayudarán a realizar dicha tarea:

Crear un servidor proxy SOCKS5 mediante ssh:```shell ssh -D 1080 -Nf

Crear conexión HTTP a SOCKS5 con `gohpts````shell
gohpts -s :1080 -l :8080

Especificar servidor http en la configuración de proxy de Postman

Características

[Volver]

  • Funcionalidad de cadena de proxies
    Admite cadenas strict, dynamic, random, round_robin de proxies SOCKS4/SOCKS5

  • Proxy transparente
    Admite modos redirect (SO_ORIGINAL_DST) y tproxy (IP_TRANSPARENT)

  • Soporte de IPv4 e IPv6
    Opera en modos IPv4-only, IPv6-only o dual stack

  • Proxy transparente TCP y UDP
    tproxy y tlocal (IP_TRANSPARENT) manejan tráfico TCP y UDP

  • Sniffing de tráfico
    El proxy es capaz de analizar cabeceras HTTP, handshake TLS, mensajes DNS y más

  • ARP spoofing
    Proxy de subredes enteras con el enfoque de ARP spoofing

  • NDP spoofing
    Proxy de conexiones IPv6 usando Router/Neighbor Advertisement e inyecciones RDNSS.

  • DNS spoofing
    Redirige clientes a dominios arbitrarios mediante la manipulación de registros DNS

  • Captura de paquetes
    Captura tráfico en archivos txt/pcap/pcapng y analiza con Wireshark

  • Protección contra fugas de DNS
    La resolución DNS ocurre en el lado del servidor SOCKS5.

  • Soporte del método CONNECT
    Admite tunneling HTTP CONNECT, habilitando HTTPS y otros protocolos basados en TCP.

  • Soporte de HTTP2/HTTP3
    Admite transporte moderno HTTP/2 y HTTP/3, habilitando conexiones multiplexadas eficientes sobre TLS 1.3

  • Soporte de Network Namespaces
    Admite network namespaces personalizados de Linux para sockets de escucha y conexiones salientes

  • Soporte de Trailer Headers
    Maneja cabeceras trailer HTTP

  • Chunked Transfer Encoding
    Maneja respuestas chunked y en streaming

  • Soporte de autenticación SOCKS5
    Admite autenticación con nombre de usuario/contraseña para proxies SOCKS5.

  • Soporte de autenticación HTTP
    Admite autenticación con nombre de usuario/contraseña para servidor proxy HTTP.

  • Ligero y rápido
    Diseñado con sobrecarga mínima y manejo eficiente de solicitudes.

  • Multiplataforma
    Compatible con todos los sistemas operativos principales.

Instalación

[Volver]

  • Arch Linux/CachyOS/EndeavourOS ```shell yay -S gohpts

O usando paru: ```shell paru -S gohpts

- Descarga el binario para tu plataforma desde la página de [Releases](https://github.com/shadowy-pycoder/go-http-proxy-to-socks/releases):  ```shell
GOHPTS_RELEASE=v1.15.6; wget -v https://github.com/shadowy-pycoder/go-http-proxy-to-socks/releases/download/$GOHPTS_RELEASE/gohpts-$GOHPTS_RELEASE-linux-amd64.tar.gz -O gohpts && tar xvzf gohpts && mv -f gohpts-$GOHPTS_RELEASE-linux-amd64 gohpts && ./gohpts -h
  • Instalar usando el comando go install (requiere Go 1.26 o posterior): ```shell CGO_ENABLED=0 go install -ldflags "-s -w" -trimpath github.com/shadowy-pycoder/go-http-proxy-to-socks/cmd/gohpts@latest

Esto instalará el binario gohpts en tu directorio $GOPATH/bin.

  • Compilar desde el código fuente: ```shell git clone https://github.com/shadowy-pycoder/go-http-proxy-to-socks.git cd go-http-proxy-to-socks make build ./bin/gohpts
  • Ejecutar en docker: ```shell docker run -it --privileged --network host -v "$PWD/gohpts.yaml:/config.yaml" shadowypycoder/gohpts:latest -f config.yaml

Uso

[Volver]```shell gohpts -h


/ | | | | | __ _ / ____| | | __ ___ | || | |) | | | | (__ | | |_ |/ _ | __ | / | | _
| |__| | (
) | | | | | | | ) | _|_/|| ||| || |___/

GoHPTS: HTTP(S) Proxy to SOCKS4/SOCKS5 proxy by shadowy-pycoder GitHub: https://github.com/shadowy-pycoder/go-http-proxy-to-socks Codeberg: https://codeberg.org/shadowy-pycoder/go-http-proxy-to-socks

Usage: gohpts [OPTIONS] OPTIONS: General: -h Show this help message and exit -v Show version and build information -D Run as a daemon (provide -logfile to see logs) -I Display list of network interfaces and exit -f Path to proxy configuration file in YAML format

Categorías