Primeros pasos con la CLI

Ver en Markdown

Consigue openwaf-cloud, apúntala a la API de OpenWAF, dale un token de API de forma segura y ejecuta tu primera consulta y tu primer cambio.

En esta página

Conseguir la CLI

openwaf-cloud es un único binario. OpenWAF todavía no publica versiones descargables; si quieres usarla, pídela en [email protected]. Todo lo que hace está también disponible desde el panel, la API, los SDK y el servidor MCP.

Comprueba que funciona:

openwaf-cloud ctl help

Apuntarla a la API

Define la dirección de la API una vez en el perfil de tu shell. La CLI añade ella misma las rutas /v1/…, así que basta con el host:

export OPENWAF_API_URL=https://dash.openwaf.dev

Darle un token

Crea un token de API en el panel, en Tokens de API, con el rol y el alcance que necesites: Solo lectura basta para consultar y Técnico permite hacer cambios. Los tokens empiezan por owf_.

La CLI nunca acepta el token como argumento, para que no acabe en el historial de la shell ni en la lista de procesos. Usa una de estas dos vías:

Guarda el token en un fichero que solo puedas leer tú. Puede contener solo el token o una única línea NOMBRE_TOKEN=valor, así que también sirve un fichero al estilo .env.

mkdir -p ~/.config/openwaf
read -rs TOKEN && printf '%s\n' "$TOKEN" > ~/.config/openwaf/token && unset TOKEN
chmod 600 ~/.config/openwaf/token
export OPENWAF_TOKEN_FILE=~/.config/openwaf/token

La CLI rechaza un fichero que no sea tuyo o que puedan leer el grupo u otros usuarios.

Define solo una de OPENWAF_TOKEN y OPENWAF_TOKEN_FILE; con las dos, la CLI se detiene.

Elegir la organización

Un token pertenece a una organización y la CLI usa esa por defecto. Para indicarla explícitamente, define OPENWAF_ORG (o --org) con su nombre o su id:

export OPENWAF_ORG=acme

Primera consulta

openwaf-cloud ctl zones list
openwaf-cloud ctl zones show example.com
openwaf-cloud ctl records list example.com

Las zonas se nombran por su dominio o por su id. Añade --json a cualquier consulta para obtener la respuesta de la API tal cual.

Primer cambio

Todo cambio necesita un motivo. Pruébalo primero como simulación:

openwaf-cloud ctl records add example.com type=TXT name=_cli-test content="hola" \
  --reason "Probar la CLI" --dry-run

La CLI imprime Simulación sobre zona example.com: versión 7 → 8 y las diferencias. Repite la orden sin --dry-run: simula, enseña las diferencias, pregunta ¿Aplicar? [s/N] y aplica cuando respondes s. Después deshazlo:

openwaf-cloud ctl records rm example.com _cli-test/TXT --reason "Quitar la prueba de la CLI"

Sigue con Cambios: simulación y confirmación y la referencia de órdenes.

Última actualización:

↑↓ para moverte↵ para abriresc para cerrar