Ghostunnel: Open-source TLS proxy with mutual authentication
Ghostunnel es un proxy de código abierto diseñado para gestionar TLS en aplicaciones que no pueden hacerlo por sí mismas, operando tanto como servidor como cliente. En su función de servidor, se sitúa frente al servicio backend para recibir conexiones cifradas, validar el certificado del cliente y reenviar el tráfico en texto plano mediante TCP o un socket UNIX. En su modalidad de cliente, opera a la inversa recibiendo conexiones locales sin cifrar, aplicándoles una capa TLS y mostrando un certificado ante el servicio remoto.
Para controlar el acceso en el modo de servidor, la herramienta exige definir reglas de autorización antes de arrancar, permitiendo evaluar múltiples criterios combinados como nombres comunes, unidades organizativas, identificadores DNS o URI, pines de clave pública, políticas de Open Policy Agent o identidades SPIFFE. Las claves y certificados necesarios pueden obtenerse de diversas fuentes, incluyendo archivos, almacenes del sistema operativo, módulos de hardware, la API de trabajo de SPIFFE o certificados automáticos de Let’s Encrypt, con la capacidad de actualizar dichos credenciales de forma dinámica sin reiniciar el proceso.
El software incluye medidas de seguridad predeterminadas, limitando de forma estricta las escuchas y destinos a localhost o sockets UNIX a menos que se utilicen parámetros específicos, y empleando aislamiento mediante Landlock en sistemas Linux. Se distribuye como un único binario compilado en Go sin dependencias adicionales de ejecución, es compatible con múltiples sistemas operativos, cuenta con una licencia Apache 2.0 y ofrece capacidades de monitorización a través de un puerto de estado con métricas en formato JSON y Prometheus.
El artículo original no aporta más detalle sobre otros aspectos técnicos o de configuración de la herramienta.