Para preparar la autorizaci贸n con captcha necesitamos
nginx y sus complementos
encriptado-sesi贸n ,
formulario-entrada ,
ctpp2 ,
echo ,
ldap ,
encabezados-m谩s ,
auth_request ,
set-misc . (Di enlaces a mis bifurcaciones, porque hice algunos cambios que hasta ahora no se pudieron insertar en los repositorios originales. Tambi茅n puede usar la imagen
preparada ).
Para comenzar, establezcamos
encrypted_session_key "abcdefghijklmnopqrstuvwxyz123456";
A continuaci贸n, por si acaso, deshabilite el encabezado de autorizaci贸n
more_clear_input_headers Authorization;
Ahora protegemos todo con autorizaci贸n
auth_request /auth; location =/auth { internal; subrequest_access_phase on;
Para usuarios autorizados, mostramos contenido de su carpeta
location / { alias html/$remote_user/; }
Y en ausencia de autorizaci贸n, mostramos el formulario de autorizaci贸n con captcha
error_page 401 = @error401; location @error401 { set_escape_uri $request_uri_escape $request_uri;
login.html
<html> <body> <form method="post"> <input type="hidden" name="csrf" value="<TMPL_var csrf>" /> username: <input type="text" name="username" placeholder="Enter User Name..." /><br /> password: <input type="password" name="password" /><br /> captcha: <img src="/captcha?csrf=<TMPL_var csrf>"/><input type="text" name="captcha" autocomplete="off" /><br /> <input type="submit" name="submit" value="submit" /> </form> </body> </html>