coolkit: Módulo NGINX CoolKit
Instalação
Você pode instalar este módulo em qualquer distribuição baseada em RHEL, incluindo, mas não se limitando a:
- RedHat Enterprise Linux 7, 8, 9 e 10
- CentOS 7, 8, 9
- AlmaLinux 8, 9
- Rocky Linux 8, 9
- Amazon Linux 2 e 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
Ative o módulo adicionando o seguinte no topo de /etc/nginx/nginx.conf:
load_module modules/ngx_coolkit_module.so;
Este documento descreve o nginx-module-coolkit v0.2 lançado em 23 de agosto de 2020.
ngx_coolkit é uma coleção de pequenos e úteis complementos para nginx.
DIRETIVAS DE CONFIGURAÇÃO:
override_method off | [methods] source (contexto: http, server, location)
Sobrescrever o método HTTP.
padrão: nenhum
VARIÁVEIS DE CONFIGURAÇÃO:
$remote_passwd
Senha decodificada do cabeçalho "Authorization" (Autenticação HTTP Básica).
$location
Nome do bloco de localização correspondente.
EXEMPLO DE CONFIGURAÇÃO #1:
http { server { location / { override_method $arg_method; proxy_pass http://127.0.0.1:8100; } } }
Passe a solicitação com o método HTTP alterado (com base em "?method=XXX") para o backend.
EXEMPLO DE CONFIGURAÇÃO #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;
}
}
}
Restringir o acesso a arquivos locais autenticando contra um banco de dados SQL.
Módulos necessários (além do ngx_coolkit): - ngx_http_auth_request_module, - ngx_postgres (PostgreSQL) ou ngx_drizzle (MySQL, Drizzle, SQLite), - ngx_set_misc.
GitHub
Você pode encontrar dicas adicionais de configuração e documentação para este módulo no repositório do GitHub para nginx-module-coolkit.