• Aucun article dans le panier.

Commandes utilisées

Mise à jour du système

$ sudo dnf update

Installons les dépendances pour GoAccess

$ sudo dnf install ncurses-devel libmaxminddb-devel openssl-devel 
$ sudo dnf groupinstall 'Development Tools'

Télécharger et installer GoAccess

$ wget https://tar.goaccess.io/goaccess-1.5.2.tar.gz

Extrayons les fichiers de l'archive.

$ tar -xzvf goaccess-1.5.2.tar.gz

Configurons et installons le package.

$ cd goaccess-1.5.2
$ autoreconf -fi
$ sudo ./configure --enable-utf8 --enable-geoip=mmdb --with-openssl
$ sudo make
$ sudo make install

Vérifions que GoAccess est en cours d'exécution.

[root@grandprof goaccess-1.5.2]# goaccess --version
GoAccess - 1.5.2.
For more details visit: https://goaccess.io/
Copyright (C) 2009-2020 by Gerardo Orellana
Build configure arguments:
--enable-utf8
--enable-geoip=mmdb
--with-openssl

Téléchargeons la base de données GeoIP

Téléchargeons le fichier zip du pays à partir de l'une des sources ci-dessus. Une fois téléchargés, extrayez-les et téléchargeons le fichier .mmdb sur le serveur dans un dossier personnalisé tel que /home/<user>/geoip.

Configurons GoAccess

$ goaccess --dcf
/usr/local/etc/goaccess/goaccess.conf

Ouvrons le fichier pour le modifier.

$ sudo nano /usr/local/etc/goaccess/goaccess.conf

Tout d'abord, activons l'option de format d'heure. Nous allons analyser les fichiers Nginx dans notre formation, alors activez l'option destinée aux journaux Apache/Nginx.

# The following time format works with any of the
# Apache/NGINX's log formats below.
#
time-format %H:%M:%S

Ensuite, activons l'option de format de date Nginx

# The following date format works with any of the
# Apache/NGINX's log formats below.
#
date-format %d/%b/%Y

Ensuite, activons l'option de format de journal. Dans notre formztion, nous utiliserons le format Combinedlog, qui est couramment utilisé par Nginx.

log-format COMBINED

Si nos fichiers journaux contiennent le champ Virtual Host, activons plutôt l'option suivante.

log-format VCOMBINED

Supposons que nous souhaitions davantage de contrôle sur le format du journal. Dans ce cas, nous pouvons activer la ligne suivante à la place (selon le journal auquel nous accédons) et ajouter ou supprimer des paramètres selon nos besoins.

log-format %v:%^ %h %^[%d:%t %^] "%r" %s %b "%R" "%u"

Pour activer le module GeoIP, activons l'option suivante en entrant le chemin d'accès à la base de données GeoIP.

# For GeoIP2 Country database:
# Download the GeoLite2-Country.mmdb.gz
# gunzip GeoLite2-Country.mmdb.gz
#
geoip-database /home/prof/dbip-country-lite-2021-11.mmdb

Enregistrons le fichier en appuyant sur Ctrl + X et en entrant Y lorsque vous y êtes invité une fois terminé.

Exécutons GoAccess

Installons d’abord Nginx

$ sudo dnf install nginx

Démarrons-le

$ sudo systemctl start nginx

Activons-le pour chaque démarrage du système

$ sudo systemctl enable nginx

Configurons le parefeu

$ sudo firewall-cmd --permanent --zone=public --add-service=http
$ sudo firewall-cmd --permanent --zone=public --add-service=https

Pour appliquer les modifications, rechargeons le service de pare-feu

$ sudo firewall-cmd --reload
$ sudo firewall-cmd --permanent --list-all

Normalement, si vous souhaitons exécuter GoAccess, nous devrons utiliser la commande suivante:

$ sudo /usr/local/bin/goaccess /var/log/nginx/access.log

Créons un lien symbolique

$ sudo ln -s /usr/local/bin/goaccess /usr/bin/goaccess

Maintenant, nous pouvons exécuter directement GoAccess.

$ sudo goaccess /var/log/nginx/access.log

Exécutons GoAccess sans privilège

Exécutons la commande suivante pour ajouter l'utilisateur actuel au groupe adm.

$ sudo usermod -aG adm $USER

Exécutons la commande suivante

$ su $USER

Nous devrions pouvoir exécuter GoAccess directement sans avoir besoin de sudo.

$ goaccess /var/log/nginx/access.log

Générons des rapports HTML

GoAccess peut être utilisé pour générer des rapports HTML que nous pouvons servir en ligne. Utilisons la commande suivante pour générer un rapport HTML.

$ goaccess /var/log/nginx/access.log -o stats.html

Nous devons ouvrir le port 7890 pour que GoAccess Websocket s'exécute. Ouvrons le port à l'aide de la commande suivante.

$ sudo firewall-cmd --permanent --add-port=7890/tcp

Rechargeons le pare-feu pour appliquer la modification.

$ sudo firewall-cmd --reload

Maintenant, exécutons la commande suivante pour générer un rapport HTML en temps réel.

$ goaccess /var/log/nginx/access.log -o /usr/share/nginx/html/livereport.html --real-time-html
© GoSukulu SARL. Tous droits réservés.
Ouvrir le chat
Besoin d'aide?
Salut👋,
Comment puis-je vous aider?