coolkit: Módulo NGINX CoolKit
Instalación
Puedes instalar este módulo en cualquier distribución basada en RHEL, incluyendo, pero no limitado a:
- RedHat Enterprise Linux 7, 8, 9 y 10
- CentOS 7, 8, 9
- AlmaLinux 8, 9
- Rocky Linux 8, 9
- Amazon Linux 2 y Amazon Linux 2023
dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install nginx-module-coolkit
yum -y install https://extras.getpagespeed.com/release-latest.rpm
yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install nginx-module-coolkit
Habilita el módulo añadiendo lo siguiente en la parte superior de /etc/nginx/nginx.conf:
load_module modules/ngx_coolkit_module.so;
Este documento describe nginx-module-coolkit v0.2 lanzado el 23 de agosto de 2020.
ngx_coolkit es una colección de pequeños y útiles complementos para nginx.
DIRECTIVAS DE CONFIGURACIÓN:
override_method off | [methods] source (contexto: http, server, location)
Sobrescribir el método HTTP.
predeterminado: ninguno
VARIABLES DE CONFIGURACIÓN:
$remote_passwd
Contraseña decodificada del encabezado "Authorization" (Autenticación HTTP Básica).
$location
Nombre del bloque de ubicación coincidente.
EJEMPLO DE CONFIGURACIÓN #1:
http { server { location / { override_method $arg_method; proxy_pass http://127.0.0.1:8100; } } }
Pasa la solicitud con el método HTTP cambiado (basado en "?method=XXX") al backend.
EJEMPLO DE CONFIGURACIÓN #2:
http { upstream database { postgres_server 127.0.0.1 dbname=test user=monty password=some_pass; }
server {
location = /auth {
internal;
set_quote_sql_str $user $remote_user;
set_quote_sql_str $pass $remote_passwd;
postgres_pass database;
postgres_query "SELECT login FROM users WHERE login=$user AND pass=$pass";
postgres_rewrite no_rows 403;
postgres_output none;
}
location / {
auth_request /auth;
root /files;
}
}
}
Restringe el acceso a archivos locales autenticándose contra una base de datos SQL.
Módulos requeridos (además de ngx_coolkit): - ngx_http_auth_request_module, - ngx_postgres (PostgreSQL) o ngx_drizzle (MySQL, Drizzle, SQLite), - ngx_set_misc.
GitHub
Puedes encontrar consejos adicionales de configuración y documentación para este módulo en el repositorio de GitHub para nginx-module-coolkit.