zeroserve es un servidor web HTTPS sin configuración, compacto y rápido, desarrollado por losfair y publicado en GitHub. Recibe un único archivo tar con un sitio web y lo sirve tal cual, sin descomprimirlo en disco, a través de HTTP/2 y TLS 1.3, con recarga en caliente y un consumo de memoria mínimo.
Su rasgo diferencial es que admite programas eBPF colocados dentro del tarball: se ejecutan en cada petición como middleware en espacio de usuario, dentro de un entorno sandbox, y permiten reescribir solicitudes, autenticar, limitar tasa o actuar como proxy inverso. Frente a alternativas como nginx o Caddy —que combinan un lenguaje declarativo de directivas con un runtime de scripting opcional como Lua o plugins, lo que reparte la lógica en dos capas—, zeroserve unifica todo en un único programa eBPF que decide qué ocurre con cada solicitud: enrutado, cabeceras, autenticación, limitación de tasa y proxy.
Los scripts se compilan al empaquetar con clang y llc, se cargan en un runtime propio (async-ebpf, basado en uBPF) que los compila JIT a código nativo x86-64 dentro de un proceso sin privilegios, y se ejecutan en el bucle de eventos del servidor con un sistema de preempción por temporizador que evita que un script bloquee al resto. El SDK incluye inspección y mutación de peticiones, operaciones criptográficas (SHA-256, HMAC, base64, getrandom), manejo de JSON, cubos de tokens para rate limiting persistentes entre recargas, firma AWS SigV4 y un flujo completo de OIDC para autenticar usuarios frente a un sitio estático.
En seguridad de transporte integra TLS 1.3 con BoringSSL, Encrypted Client Hello nativo, selección de certificado por SNI, fingerprinting JA4 y un modo de retransmisión ECH. En pruebas con wrk -t4 -c100 sobre un Ryzen 7 3700X con un núcleo fijado, el autor afirma que supera a nginx 1.26 y Caddy 2.11 en la mayoría de cargas: archivos estáticos pequeños y grandes, middleware con scripts y proxy de respuestas pequeñas, todo sobre HTTPS.
