NGINX: Cómo capturar/registrar IP visitando una ubicación determinada en un archivo de texto

NGINX: Cómo capturar/registrar IP visitando una ubicación determinada en un archivo de texto

Me gustaría poder registrar/capturar las IP de los visitantes de una ubicación determinada en mis sitios. La idea es tener 2 archivos conf para usarlos en listas blancas o negras.

  • Los malos podrían aparecer automáticamente en la lista y ser bloqueados por el servidor.
  • Los administradores podrían visitar una dirección secreta para incluir su IP en la lista blanca antes de acceder al área de administración.

El problema es que no puedo encontrar cómo hacer que nginx escriba IP en mis archivos de configuración.

Ejemplo:

location ~* ^/(trustme)/?$
    add "allow X.X.X.X;" to /etc/nginx/conf.d/trusted-ips.conf;
}

location ~* ^/(admin|wp-admin|control)/?$
    add "deny Y.Y.Y.Y;" to /etc/nginx/conf.d/blacklisted_ips.conf;
}

Gracias

Respuesta1

Según tengo entendido, ¿desea agregar la IP que es confiable en un archivo y luego permitirla en una ubicación específica y la IP que es sospechosa? ¿Quiere moverla a otro archivo y luego poner alguna limitación a esas IP?

Si entiendo correctamente, puedes consultar la IP de la página 1.

awk '$7 ~ /^\/page1?/ {print $1}' /path/to/access.log | sort -u > result.txt

y luego active la ip en la página 2 o el administrador usando el mismo comando y guárdelos en otra ubicación.

información relacionada