Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

captivo-access

Open-source, self-hosted Zero-Trust remote access solution for third-party vendors with passkey authentication, time-boxed grants, audit logging, and native RDP/SSH/VNC support.

Ficha actualizada 22 sept 2026, 19:21 · upstream 22 sept 2026, 19:09 · release v1.13.2

Ver códigoProblemas y ayudaRepositorio ↗
00

Qué es captivo-access

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

Captive Access is an open-source, self-hosted zero-trust remote access tool designed for granting secure, auditable access to internal web applications or remote desktops (RDP/SSH/VNC) to third-party vendors without requiring a VPN, inbound port exposure, or shared credentials. It operates entirely on-premise with no vendor lock-in or reliance on external infrastructure.

The system consists of four moving parts: a control plane running Next.js for identity management and admin console; a data plane in Go that handles the public-facing WSS endpoint and identity-aware reverse proxy logic; connector binaries that dial outbound-only to internal services, bundled with guacd (for RDP/SSH/VNC) and KasmVNC (isolated browser); and a shared tunnel module for frame-level communication. Every request is evaluated live against session and grant data before any traffic reaches the backend.

Key features include passkey authentication via WebAuthn, time-boxed access grants with approval workflows, timezone-aware scheduling, tamper-evident audit trails using hash-chaining, per-resource health monitoring, native remote-desktop gateway support, isolated browser sessions for maximum security, and session recording capabilities. The tool is designed to be configurable at the tenant level, supporting custom domains, LDAP/AD directory integration, multiple roles, and optional external timestamp anchoring.

CASOS DE USO
  • Grant a vendor access to an internal wiki or admin panel with a time-limited passkey
  • Allow a contractor to view production dashboards without exposing credentials
  • Enable remote desktop access for a partner team while maintaining zero-trust principles
  • Provide read-only access to sensitive data via isolated browser sessions
  • Support multiple vendors accessing the same internal application with separate time windows
  • Audit vendor activity on internal systems through tamper-evident audit logs
PUNTOS DESTACADOS
  • Zero-trust architecture with live, per-request access evaluation rather than pre-authorization
  • Native RDP/SSH/VNC gateway support without requiring a separate bastion server or VPN
  • Tamper-evident audit trail using hash-chaining and optional external RFC 3161 timestamp anchoring
  • Isolated browser (KasmVNC) provides maximum security by streaming pixels only to the vendor's machine
  • Time-boxed access grants with timezone-aware scheduling for granular control over vendor access windows
  • Tamper-evident audit logging that supports KVKK/5651 retention policies and CSV export
PRECAUCIONES
  • Not production-hardened; requires manual security review before deployment in production environments
  • No built-in email sending (SMTP) — must be configured separately via the admin console
  • Session recording is enabled by default but can be disabled with RECORDED_ENABLED=0 flag
  • Does not include a native mobile client or CLI tool for vendor access management
  • No out-of-band recovery mechanism beyond TOTP, which may become unavailable if all passkeys are lost
  • Requires manual DNS configuration and domain publishing (Caddy On-Demand) for each tenant
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU2 vCPUrecomendación inicial
MEMORIA2 GBRAM estimada
DISCO20 GBalmacenamiento base
COMPLEJIDADmediumnivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Listo para automatizar

Deploy the control plane as a Docker Compose stack with PostgreSQL. Deploy connector binaries in your own network using `docker run --rm ...`. The data plane runs on port 3100, while connectors dial out to internal services via WSS. For RDP/SSH/VNC targets, ensure guacd is installed and configured per target. Enable session recording by setting RECORDING_ENABLED=1. Configure email SMTP in /admin/email. Publish custom domains using Caddy On-Demand. Set up LDAP directory integration for group-based authorization mapping.

✓Dockerfile
✓Compose
✓One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
Next.jsReactNode.js
SERVICIOS
PostgreSQL
BASES DE DATOS
PostgreSQL
PUERTOS
543431003102
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.