CLI Northstar KMS · nskms 1.0.0

Tus secretos, directo al proceso. Sin un .env en el servidor.

nskms lee tus secretos de Northstar KMS al arrancar tu aplicación y se los entrega en su entorno. Un solo binario, sin dependencias, firmado por Northstar.

Linux · x86-64 · versión 1.0.0 · otras plataformas

Instálalo en un minuto
en tu servidor o tu máquina

Linux y macOS, Intel o ARM, Windows o una imagen de Docker. El mismo binario en todas.

Terminal
v=$(curl -fsSL https://get.bynorthstar.tech/nskms/latest.txt)
p=$(uname -s | tr A-Z a-z)-$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/')
curl -fsSLO https://get.bynorthstar.tech/nskms/$v/nskms-$v-$p.tar.gz
curl -fsSLO https://get.bynorthstar.tech/nskms/$v/SHA256SUMS
grep " nskms-$v-$p.tar.gz
quot; SHA256SUMS | shasum -a 256 -c tar -xzf nskms-$v-$p.tar.gz && sudo install -m 755 nskms /usr/local/bin/
  • Un binario, sin dependenciasUnos 6 MB, sin intérprete ni librerías que instalar.
  • Nada corre antes de revisarloSin curl | sh: descargas, revisas el checksum y luego instalas.
  • Firmado por NorthstarCada versión trae una firma Ed25519 que verificas tú.

Del .env a KMS
en tres pasos

Tu repositorio y tu panel de hosting se quedan sin contraseñas. Si un servidor se pierde, revocas un token, no rotas todo.

  1. Guarda el secreto en KMS

    Un .env completo como un solo secreto, o un secreto por valor. Cada cambio es una versión nueva.

    nskms secrets put app-env -file .env
  2. Dale acceso a tu servidor

    Una cuenta de servicio con el rol secret_accessor y un token, guardado en un archivo que solo lee tu aplicación.

    export NSKMS_TOKEN_FILE=/etc/nskms/token
  3. Arranca con nskms run

    nskms lee el secreto, lo pone en el entorno y se reemplaza por tu comando: mismo PID, señales y código de salida.

    nskms run -secret app-env -- node server.js

Funciona con lo que ya usas,
sin una línea de código

nskms no conoce tu lenguaje: pone las variables en el entorno y arranca tu comando. Si algo arranca tu aplicación por ti, como PHP-FPM, nskms env pull escribe un .env que solo lee su dueño.

  • Referencias en un .env.nskms que sí puedes versionar: DB_PASSWORD=nskms://db-password@3.
  • Desactivar la versión más nueva regresa a la anterior en el siguiente arranque.
  • Cada lectura queda en el registro de auditoría de tu organización.
Node.jsnskms run -- node server.js
Pythonnskms run -- gunicorn app:app
Gonskms run -- ./service
Rubynskms run -- bundle exec puma
Javanskms run -- java -jar app.jar
Laravelnskms run -- php artisan queue:work
systemdExecStart=/usr/local/bin/nskms run -- /opt/app/server
Cronnskms run -- ./backup.sh
Descargas firmadas

Verifica que lo publicó Northstar.

Cada versión trae SHA256SUMS y su firma Ed25519. Si la firma y el checksum coinciden, el binario es el que publicamos, aunque el servidor de descargas estuviera comprometido. Necesita OpenSSL 3.

Verificar la firma
curl -fsSLO https://get.bynorthstar.tech/nskms/1.0.0/SHA256SUMS.sig
curl -fsSL https://get.bynorthstar.tech/nskms/release-key.pem -o nskms-release-key.pem
{ printf 'nskms-release-v1\n'; cat SHA256SUMS; } > nskms-message
openssl pkeyutl -verify -pubin -inkey nskms-release-key.pem \
  -rawin -in nskms-message -sigfile SHA256SUMS.sig

Preguntas frecuentes

Saca tus contraseñas de los archivos .env

Solicita acceso anticipado

Northstar aún no es público. Estamos abriendo el acceso a un grupo pequeño de empresas: cuéntanos de la tuya.