Modelo de seguridad

Tus máquinas, tus reglas

OpsGates tiene dos modos con dos promesas distintas. Así funciona exactamente cada uno, sin letra pequeña.

Modo Servidor: nada sale de tu servidor

El agente funciona en tu servidor. Es el servidor MCP al que se conecta tu app de IA y guarda todo lo sensible: la contraseña de acceso (como hash scrypt), los códigos y tokens OAuth (como hash SHA-256), los tokens fijos opcionales (hash), el registro de auditoría y tu configuración.

OpsGates Cloud (esta web) gestiona tu cuenta, claves de licencia y facturación. Nunca se conecta a tu servidor y nunca recibe nada de tus herramientas.

Lo que nos envía el agente

Cada 30 segundos mientras se usa (y cada 5 minutos en reposo) el agente envía una pequeña petición HTTPS con:

  • el número de llamadas desde el último informe,
  • un identificador aleatorio del agente y un identificador de lote (para que un reintento nunca cuente dos veces),
  • la versión del agente y la URL pública del conector de tu servidor (aparece en tu panel).

Nada más. Nunca nombres de herramientas, argumentos, nombres de archivo, rutas, salida de comandos, filas de bases de datos ni credenciales. Puedes leer el código: está en /opt/opsgate/meter.py en tu servidor.

Cómo inicia sesión la IA

Cuando añades el conector, tu app de IA abre una página de acceso servida por tu propio servidor. Escribes ahí la contraseña de tu servidor; se comprueba con el hash local y nunca se envía a ningún otro sitio. La app recibe tokens de corta duración (1 hora, con tokens de renovación rotativos) emitidos por tu servidor. PKCE es obligatorio, las direcciones de retorno se limitan a apps de IA conocidas y varias contraseñas erróneas bloquean el acceso.

Barreras de seguridad en cada herramienta

  • Usuario de servicio sin privilegios. El agente funciona como opsgate, nunca como root, dentro de un entorno systemd reforzado (sistema de solo lectura, /tmp privado, acceso al kernel restringido).
  • Solo escribe donde permitas. Por defecto el agente puede leer pero no escribir. Permites carpetas concretas con sudo opsgate allow-write /ruta.
  • Solo reinicia lo que permitas. sudo opsgate allow-restart nginx añade una regla sudo exacta para ese servicio. Nada más puede ejecutarse como root.
  • Vista previa y luego confirmación. Las escrituras, ediciones, reinicios y comandos que cambian algo devuelven una vista previa; solo se ejecutan cuando el asistente vuelve a llamar con confirm=true, después de preguntarte.
  • Sin shell. Los comandos se ejecutan desde una lista permitida y sin shell, así que no se interpretan tuberías, redirecciones ni sustituciones.
  • Secretos ocultos. Las contraseñas, claves de API, claves privadas y tokens se sustituyen por *** en toda la salida, y archivos como .env, *.pem, id_rsa y /etc/shadow no se pueden leer.
  • Copias de seguridad y registro. Cada escritura hace antes una copia con fecha, y cada llamada se registra localmente en /var/log/opsgate/audit.jsonl.

Modo Ordenador: fácil, y claro sobre el relevo

Un ordenador personal suele estar detrás del router de casa y no puede recibir conexiones desde internet. Por eso la pequeña app de OpsGates de tu ordenador abre una conexión con nuestra nube, y tu app de IA llega a él a través de nosotros. Así funcionan todos los productos de este tipo; esto es lo que significa en la práctica:

  • Las peticiones y respuestas pasan por nuestra nube en su camino entre tu app de IA y tu ordenador, cifradas con HTTPS. Se mantienen en memoria solo lo que dura la llamada y nunca se escriben en disco.
  • Lo que guardamos: qué herramienta se usó, cuándo, cuánto tardó y si funcionó; nunca contenido de archivos, rutas, comandos ni salida. Ves la misma lista en la página del ordenador.
  • Tú eliges las carpetas que puede usar la IA (tu carpeta de usuario por defecto) y el nivel de permiso: solo lectura, solo archivos, o archivos y comandos. El propio ordenador comprueba cada petición con estas reglas.
  • Siempre protegido: claves SSH y GPG, credenciales de la nube (AWS, Azure, Google Cloud, Kubernetes), contraseñas y cookies guardadas en el navegador, y el secreto de la propia app, incluso dentro de una carpeta compartida.
  • Sin permisos de administrador. La app funciona con tu usuario, se instala solo en tu carpeta de usuario, y sus actualizaciones van firmadas con nuestra clave guardada fuera de línea: rechaza cualquier otra cosa.
  • Inicio de sesión con tu cuenta. Las apps de IA se conectan con OAuth: apruebas cada app con tu cuenta de OpsGates (y la verificación en dos pasos si la activaste). Los tokens están ligados a un solo ordenador, se guardan solo como hash y puedes desconectar cualquier app o quitar el ordenador cuando quieras.

Si no quieres que ninguno de tus datos pase por nosotros, usa el modo Servidor en una máquina que controles.

Tu cuenta en OpsGates Cloud

  • Las contraseñas se guardan como hash scrypt; las sesiones, claves de licencia, secretos de ordenadores y enlaces de correo, solo como hash SHA-256.
  • La verificación en dos pasos (app de autenticación) está disponible para todas las cuentas y es obligatoria para los administradores.
  • Los pagos los gestiona Stripe. Nunca vemos ni guardamos números de tarjeta.

Si OpsGates Cloud fuera atacado

Modo Servidor: un atacante obtendría correos, recuentos de uso, URLs de conector y estado de facturación, pero ninguna forma de entrar en tus servidores. Lo peor que podría hacer es que una clave de licencia parezca no válida, lo que pausa las llamadas.

Modo Ordenador: el relevo es el camino hacia tu ordenador, así que un atacante que controlara nuestra nube podría enviar peticiones a los ordenadores conectados, dentro de las carpetas y el nivel de permiso de cada uno. Por eso mantenemos este servicio pequeño, reforzado y vigilado, por eso el ordenador aplica sus propios límites, y por eso puedes elegir solo lectura o quitar un ordenador con un clic.

Informar de una vulnerabilidad

Escríbenos. support@opsgates.com Respondemos rápido y damos crédito a quien quiera aparecer.