Herramientas gratuitas

Dos herramientas pequeñas con licencia MIT, cada una extraída de uno de los productos de pago. Descárgalas, léelas, úsalas.

webhooksig: verificación de firmas de webhooks en Go

Solo usa la biblioteca estándar. Verifica firmas al estilo GitHub, al estilo Stripe (con ventana anti-replay) y Standard Webhooks en tiempo constante.

key, _ := webhooksig.ParseStandardSecret(os.Getenv("WEBHOOK_SECRET")) // "whsec_<base64>"
err := webhooksig.VerifyStandard(key, body,
    r.Header.Get("webhook-id"), r.Header.Get("webhook-timestamp"), r.Header.Get("webhook-signature"),
    time.Now(), 5*time.Minute)

Probada con go test -race: cuerpo alterado, secreto incorrecto, headers mal formados, timestamps vencidos y futuros, varias firmas en un mismo header y el vector de respuesta conocida de Standard Webhooks tomado de la biblioteca de referencia en Go del proyecto.

Descargar webhooksig.zip

vps-restore-test: ¿tu backup de restic se restaura de verdad?

Un script bash que restaura el último snapshot de restic en un directorio temporal y lo comprueba: que la restauración funcione, que el directorio no esté vacío, que los dumps de SQLite pasen una verificación de integridad, que los dumps de Postgres se puedan leer, que un comando opcional tuyo termine bien y que restic check sobre una muestra pase. Si algo falla, termina con un código distinto de cero, así que cron te avisa.

Probado en un container Debian 12 con un backup correcto, un repositorio equivocado y un snapshot al que le faltaba un dump.

Descargar vps-restore-test.zip

¿Quieres más?

El VPS Deploy & Backup Kit, de pago, añade el script de backup con dumps consistentes y retención, deploys blue/green con rollback y alertas de fallo. El Go Webhook Receiver Starter suma la queue, la deduplicación, los retries y las herramientas de operación alrededor de webhooksig.