Buscar en Log Access y Error de Apache en Linux

Ubicación y consulta de los archivos log del servidor web HTTP Apache2
Uso de tail y grep

12/10/2022 18:07:47 Update:13/10/2022 23:35:16

Los archivos log de Apache se encuentran por defecto en los siguientes directorios :
 
RHEL / Red Hat / CentOS / Fedora Linux: /var/log/httpd
Debian / Ubuntu Linux : /var/log/apache2
FreeBSD Apache : /var/log

Para encontrar la ubicación exacta puedes usar las siguientes instrucciones

  grep ErrorLog /usr/local/etc/apache22/httpd.conf
  grep ErrorLog /etc/apache2/apache2.conf
  grep ErrorLog /etc/httpd/conf/httpd.conf
 
Directivas de Apache relaccionadas
Una vez tenemos la ruta al archivo que nos interesa podemos usar tail y combinarlo con grep de la siguiente manera

solamente tail 

tail /var/log/apache2/other_vhosts_access.log.1

el comando anterior imprime (por defecto) las 10 últimas líneas del archivo dado, para cambiar el número de líneas, se hace...
...donde -n25 es el múmero de líneas a mostrar, cámbiese 25 por el número deseado

tail -n25 /var/log/apache2/other_vhosts_access.log.1


Ahora combinaremos con grep haciendo por ejemplo..

tail /var/log/apache2/other_vhosts_access.log.1 | grep shell 

"shell" despues de grep es el patrón de búsqueda no una instrucción, para buscar con espacios debe "encerrarse entre comillas"

Lo que particularmente me arroja este resultado...
Que como puede observarse es un intento de ataque buscando vulnerabilidades vía url

Podemos también consultar el fichero en tiempo real de forma que el programa vaya volcando los cambios en el archivo dado, la forma es usando el parámetro -f , quedando así : 

tail -f /var/log/apache2/other_vhosts_access.log.1

y añadiendo grep filtraría la salida en tiempo real quedado por ejemplo así...

tail -f /var/log/apache2/other_vhosts_access.log.1 | grep 80.125.25.220

lo que haría el comando anterior es arrojar en tiempo real los accesos de la dirección IP dada en grep dentro del archivo indicado a tail

Para hacer lo contrario, es decir excluir la IP dada y mostrar el resto, usar el modificador -v
esto sería...

tail -f /var/log/apache2/other_vhosts_access.log.1 | grep -v 80.125.25.220

Como puede deducirse se pueden buscar por extensiones de archivo, tipos de archivo, etc..
por ejemplo....

Muestra solo archivos jpg...

tail -f /var/log/apache2/other_vhosts_access.log.1 | grep  .jpg

Muestra las entradas al archivo robots.txt...

tail -f /var/log/apache2/other_vhosts_access.log.1 | grep  robots.txt

...y así todas las combinaciones que necesitemos, para más información consultar desde la consola man grep  y man tail  así como la documentación de las variables de entorno de Apache y documentación relaccionada.

Podría ser de Interés...

Como establecerlas permanentemente y modificarlas facilmente
Bash - Gnu/Linux
Linux un Kernel para GNU
Caracas, 2 de abril de 2022 VTV
Administrar servicios Linux - Listar - Ver Servicios Activos En Linux - Listar Procesos - Árbol de Procesos
Correr la TV como servicio del sistema
Apache Netbeans IDE Application From Remote Server
¿Cuál es la diferencia entre Linux y Windows?
servidores web
El participante tiene implantados dos chips en el lado izquierdo del cerebro del tamaño de una aspirina infantil.
Nuevo paso hacia la internet cuántica
Vacúnate contra el Covid-19 ¡No seas tonto!
Bubles, Iteraciones, en Bash Linux


www.compostela21.com
diariocompostela21@gmail.com
21/12/2024