Désinstaller le paquet nginx
Supprime le paquet web/reverse-proxy nginx lorsque l'hôte n'a aucun besoin de servir du contenu web.
Vérifié sur ce qui est installé ou enregistré, paquets présents/absents, bases de comptes.
Un mapping est une référence croisée vers l’endroit où chaque norme situe cette exigence, ancrée et recoupée, pas une affirmation d’équivalence. Un check réussi est une preuve vers ces références, comment le lire.
Pourquoi cette règle
Le paquet nginx installe un serveur web/reverse-proxy qui, une fois démarré, écoute les connexions entrantes et expose un service réseau. Selon le principe de moindre fonctionnalité (NIST CM-7), un logiciel non requis ne devrait pas être présent. Si aucun serveur web n'est nécessaire sur cet hôte, le supprimer protège contre son activation, retire un service en écoute fréquemment ciblé, et élimine de la surface d'attaque toute une classe de vulnérabilités et d'erreurs de configuration web.
Ce que vérifie Pavois
Pavois interroge la base de paquets via la ressource InSpec package('nginx') et vérifie should_not be_installed, en s'appuyant sur dpkg/rpm. Lire l'inventaire effectif est plus fiable que de vérifier si nginx écoute actuellement sur le port 80/443 : un service arrêté reste installé et peut être réactivé, et la configuration sous /etc/nginx/ ne prouve pas la disparition du binaire. L'état du paquet est la vérité de terrain pour la conformité au principe de moindre fonctionnalité.
describe package('nginx') do
it { should_not be_installed }
endComment vérifier qu’elle est appliquée
RHEL : rpm -q nginx doit afficher package nginx is not installed. Debian/Ubuntu : dpkg -s nginx doit indiquer not installed. Confirmez qu'aucun service n'écoute sur les ports web avec ss -lntp | grep -E ':80|:443' (aucun processus nginx attendu).
Inspecter et investiguer
La suppression est journalisée dans /var/log/dpkg.log (Debian/Ubuntu) ou dnf history (RHEL). L'activité antérieure de nginx, accès et erreurs, apparaît dans /var/log/nginx/access.log, /var/log/nginx/error.log et journalctl -u nginx. Après suppression, aucune unité nginx ne doit subsister.
Remédiation
Le plan de durcissement de Pavois déclare une ressource package pour nginx avec l'action remove ; pavois harden apply le désinstalle via le gestionnaire de paquets natif (apt/dnf), ce qui arrête aussi le service nginx. Selon le packaging de la distribution, la configuration sous /etc/nginx/ peut subsister (par ex. apt sans purge) ; supprimez-la manuellement pour un état propre.
Pavois applique ceci avec son propre moteur harden, le plan ci-dessous, pas un script shell :
| action | remove |
|---|---|
| name | nginx |
| resource | package |
pavois harden plan localoù la cible est local, un alias SSH user@hôte, ou un conteneur , Docs
Impact & précautions
Si cet hôte sert réellement du contenu web ou fait office de reverse-proxy/répartiteur de charge, supprimer nginx met hors ligne ces sites et routes. Précautions : avant d'appliquer, confirmez que l'hôte n'a aucun rôle de serveur web, vérifiez ss -lntp pour des écoutes sur 80/443 et examinez /etc/nginx/. Si nginx est requis, ne le supprimez pas ; durcissez plutôt la configuration (désactiver les modules inutiles, restreindre les écoutes). Sur les hôtes sans rôle web, la suppression est sans danger et applique le principe de moindre fonctionnalité.
Mapping des normes
| Norme | Référence | Type | Version | Confiance |
|---|---|---|---|---|
| CIS | 2.1.18, 2.1.19 | direct | per OS, see the benchmark table | haute |
| NIST | CM-6(a), CM-7(a), CM-7(b) | support | 800-53 Rev 5 · 800-171 Rev 2 (pinned) | moyenne |
Chaque référence est une référence croisée ancrée dans le benchmark amont et recoupée avec le SCAP Security Guide et ansible-lockdown, pas une affirmation d’équivalence. Direct = une exigence prescriptive au niveau de la ligne ; support = une famille de contrôle abstraite (NIST) vers laquelle le check apporte une preuve. Comment lire un mapping.