Skip to content

PointSav Documentation

The engineering library for the PointSav platform — operating systems and services for regulated businesses that own their data, their AI, and their record-keeping outright. Where the monorepo holds the code, this wiki holds the reasoning: architecture, services, security, and the governance commitments that bind future development.

Cómo emparejar un dispositivo nuevo

Requisitos previos

  • Un dispositivo que ejecute os-console y que todavía no se haya emparejado — la autorización basada en máquina permanece inactiva en él (véase Autorización basada en máquina)
  • Un par de claves WireGuard presente en ese dispositivo; el cliente envía su clave pública como parte de la solicitud de incorporación
  • Alcance de red desde el dispositivo hasta su servidor de emparejamiento, puerto 9205 por defecto
  • Un administrador que pueda alcanzar ese mismo servidor de emparejamiento y ejecutar os-network-admin
  • Un identificador de nodo con la forma <username>@<tenant> para el dispositivo

Propósito

Registrar un dispositivo sin emparejar en service-ppn-pairing para que un administrador pueda aprobar su entrada en la malla WireGuard — unos cinco minutos de trabajo efectivo repartidos entre dos personas, más una espera de duración indeterminada entre la aprobación y el alcance real por red.

Procedimiento

En el dispositivo que se va a emparejar

  1. Inicie os-console en el dispositivo sin emparejar. La pantalla de emparejamiento se abre automáticamente al arrancar y ocupa la pantalla entera hasta que el dispositivo queda emparejado; no hay ruta de menú ni tecla F que llegue a ella.

  2. Lea en pantalla el código de emparejamiento de ocho caracteres. Se muestra como XXXX-XXXX y procede del juego de caracteres Crockford base32 0123456789ABCDEFGHJKMNPQRSTVWXYZ — la I, la L, la O y la U no figuran en él, así que un código dictado en voz alta no arrastra ninguna ambigüedad entre O y 0 ni entre I y 1.

  3. Opcional: escanee el bloque QR situado junto al código en lugar de transcribirlo. El QR codifica PAIR:<code> con el guion eliminado, y se dibuja como imagen de píxeles en los terminales compatibles con los protocolos gráficos Kitty o Sixel, o como imagen de medios bloques Unicode en el resto.

  4. Entregue el código a su administrador antes de que pasen 600 segundos. El código caduca diez minutos después de emitirse, y a partir de ahí el cliente debe enviar una solicitud de incorporación nueva.

  5. Deje el dispositivo en la pantalla de emparejamiento. El cliente consulta su estado cada dos segundos y no abandonará esa pantalla hasta que la consulta devuelva aprobado, denegado o caducado.

En la estación de trabajo del administrador

  1. Inicie os-network-admin. Consulta la lista de solicitudes pendientes cada cinco segundos e imprime cada solicitud con su código, su ID de nodo, su bottom (sustrato de destino) y su arch.

  2. Compare el código impreso con el código leído en la pantalla del dispositivo. Esta comparación es la única verificación de identidad de todo el flujo — los propios endpoints no realizan ninguna.

    Advertencia: los endpoints de aprobación y denegación no incorporan comprobación alguna de control de acceso. Cualquiera que alcance el puerto del servidor de emparejamiento y disponga de un código válido puede aprobar o denegar una solicitud. El acceso de red al puerto 9205 constituye la totalidad del límite de seguridad de este mecanismo; ubique el servidor de emparejamiento y configure su cortafuegos partiendo de esa base.

  3. Apruebe la solicitud con el comando curl que os-network-admin imprime junto a ella:

    curl -s -X POST http://<pairing-server>:9205/v1/node-join/approve \
      -H 'Content-Type: application/json' \
      -d '{"code":"XXXX-XXXX"}'
    

    Para rechazar la solicitud en lugar de aprobarla, envíe un cuerpo con la misma forma a /v1/node-join/deny.

  4. Espere a que la admisión en la malla se ejecute por separado. La aprobación añade un registro — ID de nodo, clave pública WireGuard, bottom, arch y una marca de tiempo de aprobación — a un archivo del servidor de emparejamiento. No pone el dispositivo en la red. Un proceso en segundo plano consulta el controlador de flota cada 30 segundos y ejecuta el comando de WireGuard que admite al par solo una vez que el nodo aprobado ha aparecido además en la flota de cómputo.

Resultado esperado

La pantalla de emparejamiento del dispositivo pasa al estado Aprobado, la solicitud desaparece de la lista de pendientes y el registro de aprobación queda escrito en disco en el servidor de emparejamiento. Aprobado y alcanzable son dos estados distintos: el dispositivo solo resulta alcanzable en la malla después de que el sondeo de admisión de 30 segundos lo haya visto en la flota y haya ejecutado WireGuard.

Verificación

En el dispositivo: la pantalla pasa a Aprobado en torno a dos segundos después de la aprobación, en la siguiente consulta de estado.

Del lado del administrador, confirme que la solicitud ha salido de la cola:

curl -s http://<pairing-server>:9205/v1/node-join/pending

Una solicitud aprobada no figura en esa respuesta. Ninguna de las dos comprobaciones demuestra alcance por red — ese es un estado posterior e independiente, producido por el proceso de admisión descrito en el paso 9.

Nota: el campo bottom de la solicitud de incorporación se deriva de la arquitectura del dispositivo, no se elige — aarch64 se corresponde con seL4, y x86_64 con netbsd-compat. Tampoco hay nivel de acceso, rol ni nivel de permiso en ningún punto de este flujo. La admisión en la red es lo único que concede este mecanismo.

Reversión

Antes de la aprobación: envíe el código a /v1/node-join/deny, o no haga nada y deje que la caducidad de 600 segundos cierre la solicitud.

Después de la aprobación: hoy no existe ningún comando integrado para deshacer el emparejamiento. Retirar un dispositivo emparejado implica pedir a su administrador que elimine manualmente el par de WireGuard del lado de la malla — no hay endpoint de revocación ni acción de consola que deshaga una aprobación.

Próximos pasos

Cite this record: /wiki/pair-a-new-device — revision f5570710, last updated 6 August 2026.

Important Information

Estructura corporativa. PointSav Digital Systems ("PointSav") es actualmente un nombre comercial de Woodfine Capital Projects Inc. ("Woodfine"), con previsión de convertirse en una subsidiaria de propiedad absoluta de Woodfine tras su incorporación. PointSav no ofrece, vende ni solicita por sí mismo valor alguno. Toda oferta de valores asociada a las soluciones inmobiliarias de tenencia directa de Woodfine se realiza exclusivamente por parte de Woodfine, y únicamente por medio del Memorando de Colocación Privada aplicable.

Sin asesoramiento de inversión. El contenido de este wiki se ofrece con fines de ingeniería, operativos, de investigación y de desarrollo. Nada de lo que figura en este wiki constituye asesoramiento de inversión ni una solicitud para invertir en ninguna sociedad o solución de tenencia directa de Woodfine.

Propiedad intelectual. El nombre, el nombre comercial, el logotipo y las marcas de PointSav, junto con todos los productos, servicios y ofertas actuales y futuros de las marcas PointSav y Totebox — así como el software, el código fuente, la documentación, el sistema de diseño y todos los materiales relacionados — son propiedad de Woodfine y sus filiales, salvo los componentes identificados como de código abierto. No se otorga ningún derecho salvo el expresamente establecido en una licencia o acuerdo por escrito. El aviso de marcas completo aparece en el pie de página de cada página de este sitio.

Componentes de código abierto. Algunas partes de la plataforma se ofrecen bajo licencias de código abierto permisivas identificadas en el repositorio correspondiente. El uso de esos componentes se rige por los términos de sus respectivas licencias.

Sin garantía; uso informativo. El contenido de este wiki se ofrece únicamente con fines informativos generales y no constituye una declaración, garantía ni compromiso respecto de la funcionalidad, disponibilidad, precio o hoja de ruta de ningún producto. Algunos artículos describen características, capacidades e hitos planificados o previstos — el lenguaje como "planificado", "previsto", "objetivo", "puede" y "esperado" marca este contenido prospectivo, que está sujeto a cambios y no constituye un compromiso respecto del rendimiento futuro.

Confidencialidad. Cuando un artículo describiría un detalle operativo o de implementación no destinado a divulgación pública, ese artículo no se publica en este wiki. El contenido aquí es documentación de ingeniería de uso general, no configuración específica de clientes.

Jurisdicción. Woodfine Capital Projects Inc. está constituida en Columbia Británica, Canadá. Las referencias a la Sovereign Data Foundation en este wiki describen una iniciativa planificada o prevista únicamente, no una titular de capital actual ni un órgano de gobierno activo.

Cambios a este aviso. PointSav podrá actualizar este aviso periódicamente; rige la versión publicada en esta página.

No es un sistema de presentación de documentos. Este wiki no es un sistema de presentación de valores, un repositorio de divulgación electrónica ni un sustituto de SEDAR+ ni de ningún otro sistema de presentación regulatorio. Las presentaciones formales de valores se realizan a través del sistema de presentación regulatorio correspondiente, no a través de este wiki.

Descargo completo. Este aviso complementa, y no sustituye, el artículo completo de Avisos Legales. En caso de cualquier conflicto, prevalece el artículo de Avisos Legales.

Read the full disclaimer →