bozohttpd.rocks es una guía práctica para desplegar un servidor web ligero en NetBSD utilizando bozohttpd, el servidor HTTP minimalista integrado en la base de NetBSD, convocado desde inetd. El tutorial asume que el sistema ya está instalado y que se opera con un usuario sin privilegios mediante doas, nunca como root directo. Todos los ejemplos usan el dominio ficticio bozo.httpd.rocks, que el lector debe sustituir por el suyo, y parten de tener los registros DNS correctamente configurados, algo que puede verificarse con dig.
El primer paso es servir HTTP en el puerto 80 creando el directorio /var/www/bozo.httpd.rocks, donde se alojarán los archivos del sitio, y añadiendo una línea en /etc/inetd.conf que invoque /usr/libexec/httpd por cada conexión. A continuación se instala acme-client con pkgin y se prepara la estructura necesaria para los certificados de Let's Encrypt, incluidos los directorios /etc/acme, la ruta .well-known/acme-challenge bajo el sitio web y /etc/openssl/private con permisos restrictivos. Tras escribir /usr/pkg/etc/acme-client.conf con la autoridad LetsEncrypt y los datos del dominio, se solicita el certificado con acme-client -vAD, se ajustan los permisos del material criptográfico y se programa un cron diario que renueve los certificados a las 03:00.
Para activar HTTPS se modifica inetd.conf para que la línea https se ejecute como root, lo que resuelve los problemas de acceso al certificado durante la renovación, y se reinicia inetd. La guía incluye además una sección avanzada para alojar varios dominios con un único par clave/certificado compartido, reorganizando acme-client.conf con alternative names y aprovechando los parámetros -v y -V de bozohttpd, lo que permite gestionar múltiples sitios web sirviendo desde /var/www.
