« LINUX:HTTP: Informations et activités » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
(3 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 10 : | Ligne 10 : | ||
C'est un module installé d'office qui permet de consulter tous le paramétrage d'Apache sous forme d'un interface Web. | C'est un module installé d'office qui permet de consulter tous le paramétrage d'Apache sous forme d'un interface Web. | ||
En premier lieu, il faut vérifier | En premier lieu, il faut vérifier que la librairie "mod_info.so" est bien activée. | ||
Dans le répertoire "/etc/httpd/conf.modules.d" reprenant la configuration des modules, le fichier "00-base.conf" doit contenir la ligne: | Dans le répertoire "/etc/httpd/conf.modules.d" reprenant la configuration des modules, le fichier "00-base.conf" doit contenir la ligne: | ||
---- | ---- | ||
Ligne 48 : | Ligne 48 : | ||
C'est un module installé d'office qui permet de suivre l'activité d'Apache sous forme d'un interface Web. | C'est un module installé d'office qui permet de suivre l'activité d'Apache sous forme d'un interface Web. | ||
En premier lieu, il faut vérifier | En premier lieu, il faut vérifier que la librairie "mod_status.so" est bien activée. | ||
Dans le répertoire "/etc/httpd/conf.modules.d" reprenant la configuration des modules, le fichier "00-base.conf" doit contenir la ligne: | Dans le répertoire "/etc/httpd/conf.modules.d" reprenant la configuration des modules, le fichier "00-base.conf" doit contenir la ligne: | ||
---- | ---- | ||
LoadModule status_module modules/mod_status.so | LoadModule status_module modules/mod_status.so | ||
---- | |||
On vérifie ensuite que le paramètre 'ExtendedStatus" est bien activé dans le fichier de configuration général d'Apache "/etc/httpd/conf/conf.conf": | |||
---- | |||
ExtendedStatus On | |||
---- | ---- | ||
Ligne 82 : | Ligne 87 : | ||
==Forme graphique== | ==Forme graphique== | ||
On s'assure que le paquet suivant est installé: | |||
dnf install mod_lua | |||
car l'application Web est programmée en LUA. | |||
En second lieu, il faut vérifier que la librairie "mod_lua.so" est bien activée. | |||
Dans le répertoire "/etc/httpd/conf.modules.d" reprenant la configuration des modules, le fichier "00-lua.conf" doit contenir la ligne: | |||
---- | |||
LoadModule lua_module modules/mod_lua.so | |||
---- | |||
On crée un fichier de configuration d'un site Web qui se trouvera par défaut dans le répertoire "/etc/httpd/conf.d" que l'on nommera "server-status-lua.conf" par exemple. Voici un type de contenu: | |||
---- | |||
LuaMapHandler /apache/server-status$ /web/status/server-status.lua | |||
Alias /apache "/web/status" | |||
<Directory /web/status> | |||
AllowOverride None | |||
<IfModule mod_authz_core.c> | |||
Require all denied | |||
Require ip 192.168.1.2 | |||
</IfModule> | |||
</Directory> | |||
---- | |||
Il est important que les informations qui vont être affichées ne soient pas accessibles à partir d'Internet. Restreignez cet accès à votre réseau local. Dans l'exemple, seule la machine "192.168.1.2" y a accès. Le paramètre de "Location" peut être rempli selon vos désirs. C'est lui qui sera repris dans l'URL. | |||
Enfin on récupère le contenu du répertoire "/usr/share/httpd/server-status" que l'on place dans un répertoire de notre arborescence d'applications Web, dans l'exemple "/web/status". Le fichier "README.md" n'est pas nécessaire mais il explique les paramètres qui peuvent être adaptés. | |||
Par exemple, nous avons modifié les variables suivantes: | |||
---- | |||
local redact_ips = false | |||
local show_warning = false | |||
local show_modules = true | |||
---- | |||
Ne pas oublier d'adapter les droits et la propriété à l'utilisateur "apache". | |||
On relance le serveur Web: | |||
systemctl restart httpd | |||
Maintenant dans notre navigateur Internet, on lance l'URL suivante, par exemple vers le serveur "serverdb.home.dom": | |||
<nowiki>http://serverdb.home.dom/apache/server-status</nowiki> | |||
A gauche on peut accéder à divers onglets: | |||
* Un premier suit l'activité: thread, traffic, connexions, CPU,... | |||
* Le second donne quelques informations sur le serveur | |||
* Le troisième, le plus intéressant, affiche les différents threads par processeur avec, notamment, l'adresse IP du client et sa requête | |||
* Le quatrième donne la liste des modules actifs | |||
Dernière version du 24 avril 2025 à 10:42
→ retour au menu du serveur Web
But
Apache vient avec divers outils permettant de consulter sa configuration et son activité.
Mod_Info
C'est un module installé d'office qui permet de consulter tous le paramétrage d'Apache sous forme d'un interface Web.
En premier lieu, il faut vérifier que la librairie "mod_info.so" est bien activée. Dans le répertoire "/etc/httpd/conf.modules.d" reprenant la configuration des modules, le fichier "00-base.conf" doit contenir la ligne:
LoadModule info_module modules/mod_info.so
Ensuite on crée un fichier de configuration d'un site Web qui se trouvera par défaut dans le répertoire "/etc/httpd/conf.d" que l'on nommera "server-info.conf" par exemple. Voici un type de contenu:
<Location /apache/server-info> SetHandler server-info <IfModule mod_authz_core.c> Require all denied Require ip 192.168.1.2 </IfModule> </Location>
Il est important que les informations qui vont être affichées ne soient pas accessibles à partir d'Internet. Restreignez cet accès à votre réseau local. Dans l'exemple, seule la machine "192.168.1.2" y a accès. Le paramètre de "Location" peut être rempli selon vos désirs. C'est lui qui sera repris dans l'URL.
On relance le serveur Web:
systemctl restart httpd
Maintenant dans notre navigateur Internet, on lance l'URL suivante, par exemple vers le serveur "serverdb.home.dom":
http://serverdb.home.dom/apache/server-info
APACHETOP
Si on installe le logiciel:
dnf install apachetop
on peut exécuter en ligne de commande:
apachetop
Et nous aurons un équivalent de la commande "top" mais elle affiche l'activité du serveur Apache avec un rafraichissement régulier.
Mod_Status
C'est un module installé d'office qui permet de suivre l'activité d'Apache sous forme d'un interface Web.
En premier lieu, il faut vérifier que la librairie "mod_status.so" est bien activée. Dans le répertoire "/etc/httpd/conf.modules.d" reprenant la configuration des modules, le fichier "00-base.conf" doit contenir la ligne:
LoadModule status_module modules/mod_status.so
On vérifie ensuite que le paramètre 'ExtendedStatus" est bien activé dans le fichier de configuration général d'Apache "/etc/httpd/conf/conf.conf":
ExtendedStatus On
Son utilisation peut être faite de deux façon:
- sous forme de texte brut
- sous forme plus ludique, graphique à plusieurs onglets
Forme texte
On crée un fichier de configuration d'un site Web qui se trouvera par défaut dans le répertoire "/etc/httpd/conf.d" que l'on nommera "server-status-texte.conf" par exemple. Voici un type de contenu:
<Location "/apache/server-status-texte"> SetHandler server-status <IfModule mod_authz_core.c> Require all denied Require ip 192.168.1.2 </IfModule> </Location>
Il est important que les informations qui vont être affichées ne soient pas accessibles à partir d'Internet. Restreignez cet accès à votre réseau local. Dans l'exemple, seule la machine "192.168.1.2" y a accès. Le paramètre de "Location" peut être rempli selon vos désirs. C'est lui qui sera repris dans l'URL.
On relance le serveur Web:
systemctl restart httpd
Maintenant dans notre navigateur Internet, on lance l'URL suivante, par exemple vers le serveur "serverdb.home.dom":
http://serverdb.home.dom/apache/server-status-texte
Forme graphique
On s'assure que le paquet suivant est installé:
dnf install mod_lua
car l'application Web est programmée en LUA.
En second lieu, il faut vérifier que la librairie "mod_lua.so" est bien activée. Dans le répertoire "/etc/httpd/conf.modules.d" reprenant la configuration des modules, le fichier "00-lua.conf" doit contenir la ligne:
LoadModule lua_module modules/mod_lua.so
On crée un fichier de configuration d'un site Web qui se trouvera par défaut dans le répertoire "/etc/httpd/conf.d" que l'on nommera "server-status-lua.conf" par exemple. Voici un type de contenu:
LuaMapHandler /apache/server-status$ /web/status/server-status.lua Alias /apache "/web/status" <Directory /web/status> AllowOverride None <IfModule mod_authz_core.c> Require all denied Require ip 192.168.1.2 </IfModule> </Directory>
Il est important que les informations qui vont être affichées ne soient pas accessibles à partir d'Internet. Restreignez cet accès à votre réseau local. Dans l'exemple, seule la machine "192.168.1.2" y a accès. Le paramètre de "Location" peut être rempli selon vos désirs. C'est lui qui sera repris dans l'URL.
Enfin on récupère le contenu du répertoire "/usr/share/httpd/server-status" que l'on place dans un répertoire de notre arborescence d'applications Web, dans l'exemple "/web/status". Le fichier "README.md" n'est pas nécessaire mais il explique les paramètres qui peuvent être adaptés.
Par exemple, nous avons modifié les variables suivantes:
local redact_ips = false local show_warning = false local show_modules = true
Ne pas oublier d'adapter les droits et la propriété à l'utilisateur "apache".
On relance le serveur Web:
systemctl restart httpd
Maintenant dans notre navigateur Internet, on lance l'URL suivante, par exemple vers le serveur "serverdb.home.dom":
http://serverdb.home.dom/apache/server-status
A gauche on peut accéder à divers onglets:
- Un premier suit l'activité: thread, traffic, connexions, CPU,...
- Le second donne quelques informations sur le serveur
- Le troisième, le plus intéressant, affiche les différents threads par processeur avec, notamment, l'adresse IP du client et sa requête
- Le quatrième donne la liste des modules actifs
→ retour au menu du serveur Web