Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Scroll Ignore
scroll-pdftrue
scroll-officetrue
scroll-chmtrue
scroll-docbooktrue
scroll-eclipsehelptrue
scroll-epubtrue
scroll-htmlfalse
Panel
titleSommaire

Table of Contents
stylenone

Problématique

NagVis est présenté par défaut aux utilisateurs

Problématique

Par défaut, NagVis est présenté à l'utilisateur via Apache sur le port 80 , via le protocole HTTP.

Il peut arriver dans certaines infrastructures de vouloir changer ce comportement par défaut pour des raisons de sécurité par exemple. Cette configuration s'effectue alors directement au niveau d'Apache qui est responsable de la disponibilité de NagVis.

Pour modifier cela, il faut éditer la configuration du serveur web apache, qui sert les pages de NagVis. 

Modifier les ports d'écoute d'Apache 
Anchor
ecouteapache
ecouteapache

Remplacer les ports d'écoute par défaut d'Apache

RHEL / CentOS 7 ou RHEL / Alma / Rocky 8 ou RHEL / Alma / Rocky 9

Plutôt que d'ajouter un nouveau port d'écoute à Apache, si on souhaite remplacer les ports d'écoute par défaut ( 80 pour HTTP, 443 pour HTTPS ), il faut modifier les directives Listen des fichiers :

  • /etc/httpd/conf/httpd.conf  pour remplacer le port 80 par la valeur souhaitée,
  • /etc/httpd/conf.d/ssl.conf pour remplacer le port 443 par la valeur souhaitée ( ce fichier est présent si le paquet mod_ssl est installé, pour l'activation du HTTPS ).

Debian 13

Plutôt que d'ajouter un nouveau port d'écoute à Apache, si on souhaite remplacer les ports d'écoute par défaut ( 80 pour HTTP, 443 pour HTTPS ), il faut modifier les directives Listen du fichier :

  • /etc/apache2/ports.conf ( pour remplacer le port 80 et les ports 443 par les valeurs souhaitées ). 

Ajouter un nouveau port d'écoute à Apache

Fichier à modifier

RHEL / CentOS 7 ou RHEL / Alma / Rocky 8 ou RHEL / Alma / Rocky 9

Pour ajouter un nouveau port d'écoute à Apache, il faut éditer le fichier /etc/httpd/conf/httpd.conf.

Debian 13

Pour ajouter un nouveau port d'écoute à Apache, il faut éditer le fichier /etc/apache2/ports.conf.

Écoute d'un nouveau port sur toutes les interfaces réseau du serveur

Pour mettre Apache en écoute sur un nouveau port, il faut ajouter une nouvelle directive Listen dans son fichier de configuration.

Après la directive par défaut :

Code Block
languagejs
themeConfluence
Listen 80                                                                               

ajouter la nouvelle directive.

Dans cet exemple, Apache va se mettre en écoute sur les ports 80 et 8080 :

Code Block
languagejs
themeConfluence
Listen 80
Listen 8080                                                                               

Écoute d'un nouveau port uniquement sur certaines interfaces réseau du serveur

Il est possible de préciser à Apache sur quelles interfaces réseau se mettre en écoute, pour ne pas ouvrir le port sur toutes les interfaces réseau du serveur. 

Pour mettre Apache en écoute sur un nouveau port, il faut ajouter une nouvelle directive Listen dans son fichier de configuration.

Après la directive par défaut :

Code Block
languagejs
themeConfluence
Listen 80                                                                               

ajouter la nouvelle directive.


Dans cet exemple, Apache ne répondra que sur les interfaces réseau ayant les adresses IP 1.2.3.4 et 127.0.0.1  pour le port 8080, et sur toutes les interfaces réseau  pour le port 80 :

Code Block
languagejs
themeConfluence
Listen 80
Listen 1.2.3.4:8080
Listen 127.0.0.1:8080

Limiter les ports d'accès à l'add-on

Sélection du fichier de configuration à éditer, en fonction de l'add-on à modifier
Anchor
addonselect
addonselect

Configuration du port

Le fichier de configuration à modifier dépend de l'addon add-on pour lequel on effectue la configuration :

RHEL / CentOS 7 ou RHEL / Alma / Rocky 8 ou RHEL / Alma / Rocky 9

Addon
  • Add-on
  • nagvis: /etc/httpd/conf.hd/nagvis_opt.conf
  • Add-on nagvis-shinken-architecture : /etc/httpd/conf.d/nagvis_etc.conf

Debian 13

  • Add-on nagvis: /etc/apache2/conf-available/nagvis_opt.conf
  • Add-on nagvis-shinken-architecture : /etc/apache2/conf-available/nagvis_etc.conf

Modification du port de l'add-on

Les fichiers de configuration des add-ons se présentent Ce fichier se présente de la façon suivante :

Code Block
languagejs
themeConfluence
title/etc/httpd/conf.d/nagvis_opt.confExemple: add-on nagvis
Alias /shinken-map "/opt/nagvis/share"
<Directory "/opt/nagvis/share">
  ...
  ...
  ...
</Directory>                                                                                                                                                                


Pour changer le port de l'add-on, et ne pas le rendre disponible sur tous les ports d'écoute d'Apache, il faut englober cette définition dans un élément VirtualHost Apache.

Par exemple, pour changer le port d'écoute 80 par 8080, le fichier de configuration sera comme suivantdevra être modifié ainsi :

Code Block
languagejs
themeConfluence
title/etc/httpd/conf.d/nagvis_opt.confExemple: add-on nagvis
Listen 8080
<VirtualHost *:8080>
    Alias /shinken-core-map "/opt/nagvis/share"
    <Directory "/opt/nagvis/share">
      ...
      ...
      ...
    </Directory>
</VirtualHost>                                                                                                   
La

Cette configuration

ci-dessus

rend disponible NagVis sur le port 8080 sur toutes les interfaces réseau pour lesquelles Apache écoute.

Info

Apache doit, au préalable, avoir été configuré pour écouter sur ce port, voir la section ci dessus Modifier les ports d'écoute d'Apache


Il est également Pour limiter l'écoute du port sur certaines interfaces, il est possible de spécifier une seule interface sur laquelle NagVis sera disponible exclusivement.

Dans l'exemple suivant, NagVis sera disponible sur le port 8080, mais uniquement sur l'interface dréseau avec l'adresse 1.2.3.4.

Code Block
languagejs
themeConfluence
Listen 8080
<VirtualHost 1.2.3.4:8080>

...

Appliquer les changements de configuration

RHEL / CentOS 7 ou RHEL / Alma / Rocky 8 ou RHEL / Alma / Rocky 9

Pour rendre ces changements effectifs, il faut ensuite redémarrer Apache:

Code Block
languagetext
themeEmacs
systemctl restart httpd

Debian 13

Pour rendre ces changements effectifs, il faut ensuite redémarrer Apache:

Code Block
languagetext
themeEmacs
systemctl restart apache2

Activation de SSL

Charger le module SSL de apache

RHEL / CentOS 7 ou RHEL / Alma / Rocky 8 ou RHEL / Alma / Rocky 9

Code Block
languagetext
themeEmacs
yum install mod_ssl

Debian 13

Code Block
languagetext
themeEmacs
a2enmod ssl

Servir NagVis en HTTPS uniquement

Comme pour la modification Comme pour le choix du port, le fichier de configuration à modifier dépend de l'addon add-on pour lequel on effectue la configuration :

Addon nagvis: /etc/httpd/conf.hd/nagvis_opt.conf

( voir la section ci dessus Sélection du fichier de configuration à éditer, en fonction de l'add-on à modifier )


On englobera également la configuration présente par défaut dans un élément VirtualHost si nécessaire, en y ajoutant les 3 instructions permettant d'activer SSL et de spécifier préciser les chemins d'accès au certificat.

Le fichier de configuration d'origine se présente comme suivant.ainsi :

Code Block
languagejs
themeConfluence
title/etc/httpd/conf.d/nagvis_opt.confExemple: add-on nagvis
Alias /shinken-core-map "/opt/nagvis/share"

<Directory "/opt/nagvis/share">
  Options FollowSymLinks
  AllowOverride None

  <RESTE DU CONTENU DU FICHIER>
</Directory>

Après modification, on obtient donc un fichier de la forme suivante :

Code Block
languagejs
themeConfluence
title/etc/httpd/conf.d/nagvis_opt.confExemple: add-on nagvis
<VirtualHost *:443>
    SSLEngine ON
    SSLCertificateFile /etc/shinken/certs/server.cert
    SSLCertificateKeyFile /etc/shinken/certs/server.key
 
    Alias /shinken-core-map "/opt/nagvis/share"

    <Directory "/opt/nagvis/share">
      Options FollowSymLinks
      AllowOverride None

      <RESTE DU CONTENU DU FICHIER>

    </Directory>
</VirtualHost>


L'exemple ci-dessus active le chiffrement SSL en utilisant les certificats livrés par Shinken ( autosignés ).

Il est donc recommandé d'utiliser ses propres certificats dans un véritable environnement de production.

Problèmes courants

Lors du redémarrage d'Apache, il est possible d'obtenir des erreurs. 

  • Cette section recense les cas d'erreur les plus communs ainsi que leur résolution.

Port déjà utilisé

Le problème le plus courant est d'essayer d'attribuer à NagVis un port qui est déjà utilisé par une autre application. Dans ce cas, Apache refuse de démarrer.

Pour résoudre l'erreur, il existe 2 solutions:

  • Changer de port utiliséà utiliser pour NagVis,
  • Changer de port utilisé sur par l'application qui utilise déjà le port tant convoitéautre application.


Il est possible de déterminer si un port "<NB_PORT>" est utilisé et le cas échéant le processus qui l'utilise avec la commande suivante:

Code Block
languagetext
themeEmacs
netstat -laputen | grep <NB_PORT>

SELinux

Il se peut que le port configuré ne soit pas utilisé, mais qu'Apache ne puisse toujours pas l'utiliser. Dans ce cas, le problème peut provenir de SELinux.


Par défaut, un certain nombre de ports sont autorisés par SELinux. La commande suivante permet de lister ces ports:

Code Block
languagetext
themeEmacs
semanage port -l | grep http


Si le port <NB_PORT> ne se trouve pas dans la liste, il est possible de l'ajouter comme suivant:

Code Block
languagetext
themeEmacs
semanage port -a -t http_port_t -p tcp <NB_PORT>