Por qué la autenticación Basic de Squid sigue aceptando una contraseña antigua
Comprende la caché de credenciales Basic en Squid 6.13 antes de suponer que editar el archivo de contraseñas revoca de inmediato todas las solicitudes.
Cambiar el archivo de contraseñas de Squid no hace necesariamente que cada solicitud posterior vuelva a llamar al auxiliar. Para la autenticación Basic, Squid puede almacenar en caché un par de nombre de usuario y contraseña validado correctamente.
El ajuste de Squid 6.13 que controla cuánto tiempo se considera válida esa comprobación es credentialsttl. Por ejemplo:
auth_param basic credentialsttl 5 minutes
Este es un valor de política de ejemplo, no una recomendación universal. Elígelo según el retraso de revocación que puedas aceptar y la carga que pueda soportar tu backend de autenticación.
Separa tres comprobaciones
Primero confirma que editaste el archivo que utiliza el auxiliar activo. Un cambio correcto en un archivo sin uso no tiene efecto. Después comprueba que el auxiliar puede leer el archivo y validar la información nueva de la cuenta. Por último, prueba una solicitud nueva al proxy a través de la instancia en ejecución, donde también se aplican la caché de credenciales y las reglas de acceso.
Prueba el auxiliar y el proxy en ejecución por separado. El auxiliar muestra lo que acepta actualmente el backend, mientras que Squid puede seguir reutilizando una validación en caché. Durante la rotación, comprueba tanto que la credencial nueva funcione como que la antigua se rechace tras el intervalo de validación aplicable.
Usa una cuenta de prueba específica al investigar este comportamiento. Mantén constantes la solicitud, el origen del cliente y el destino, y evita incluir contraseñas reales en la salida compartida de los comandos.
Planifica la revocación en vez de depender de una edición del archivo
Una vigencia de validación menor aumenta el trabajo del backend. Antes de reducirla en un servicio con mucha actividad, considera la capacidad de los auxiliares y verifica el comportamiento con el backend real. No supongas que recargar la configuración elimina todos los estados de autenticación relevantes, salvo que se haya demostrado para tu versión y configuración.
Para retirar el acceso con urgencia, una denegación explícita de acceso por cuenta u origen puede proporcionar un límite independiente. Prueba esa denegación desde la ruta afectada en vez de confiar únicamente en eliminar la entrada del archivo de contraseñas.
Este ajuste describe la caché de validación Basic. Los esquemas de autenticación orientados a conexión tienen estado adicional y no deben recibir por analogía el mismo modelo de revocación.