Script d'analyse

bash
Tags: #<Tag:0x00007fa9308bea58>

#1

Bonjour je voudrais, analyser les fichiers logs de sécurité, de mon site web. J’ai compris qu’à chaque fois que l’on rafraîchie la page, une ligne d’information de l’utilisateur distant s’affiche. Je voudrais donc répertorier les ip dans une liste à pars. C’est faisable, mais ca m’a l’air costaud à faire.

Merci d’avance de l’aide que vous pourrez m’apporter. Cordialement.


#2

Au lieu de m’embêter à refaire un programme.
Il suffirais de modifier le programme, qui fait les logs, non ?

Je sais que apache utilises des modules
Touts ceci est issu d’une machine test, que j’essaye en local.

Le module de mon point de vue doit enregistrer toutes les informations pour les transmettes en fichier .log.
Le but serait de fournir un tableaux, aux lieux de la chose indigeste du fichier log.

Problèmes je ne connais pas le module d’origine :disappointed_relieved:


#3

Inutile de sortir l’artillerie lourde, peux-tu dans un premier temps poste ici même le fichier de configuration de ton vhost ainsi que de ton apache ?


#4

Désolé, j’étais perdus dans ma bêtise.
Je ne sais plus si j’étais sur apache et ce n’est même pas le cas.

Pour dire mon niveau de bêtise j’ai utiliser Yunohost à la vite.

Je vais, fermer le sujet.
Je veux aller plus vite que la musique, même plus vite que la lumière vus mon niveau d’optimisme.


#5

Effectivement apparemment c’est nginx le serveur web de Yunohost.
De façon plus générale, si tu veux analyser des logs et faire des trucs avec, il existe des solutions toute faites comme Elastic Search / Logstash / Kibana, ou Graylog, mais elles nécessitent des ressources de malade.
Si tu veux faire un petit tableau avec quelques informations issues des logs, quelques petits scripts dans le langage de ton choix seront plus adaptés.
Par exemple pour obtenir les IP de connexion au site, une petite ligne comme
grep -o -E "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}" fichier.log | sort -u
fait le travail