← Toutes les règles
SOCLE-CLD-SYS-037// Kernel & network (sysctl)moyenneruntime effectif

Désactiver le paramètre noyau de transfert IPv4 par défaut

Force net.ipv4.conf.default.forwarding à 0 afin que les interfaces IPv4 nouvellement créées ne transfèrent pas de paquets entre réseaux par défaut.

Vérifié sur l’état résolu en cours d’exécution (ex. sshd -T, sysctl, systemctl show), attrape les drop-ins et Include qu’une lecture de fichier raterait. Réserve : runtime ≠ persistance ; une valeur correcte maintenant peut ne pas survivre à un redémarrage.

Un PASS prouve✓ actif maintenant✓ sur disque✓ survit au rebootle verdict qualifié →
FedoraRHEL 10 / Rocky 10 / AlmaLinux 10RHEL 8 / Rocky 8 / AlmaLinux 8CIS 4.0.0RHEL 9 / Rocky 9 / AlmaLinux 9CIS 2.0.0
Un seul check, mappé sur 1 norme

Pavois vérifie la configuration effective, l’état résolu et réellement appliqué, pas un fichier. Les scanners basés fichier (OVAL/SCAP, Lynis) ratent les Include, drop-ins et défauts runtime ; ce check voit ce qui est réellement en vigueur.

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 transfert IP permet au noyau de faire passer des paquets d'une interface à une autre, transformant l'hôte en routeur. Seuls les systèmes destinés à router du trafic devraient le faire. Sur un hôte ordinaire, le transfert peut permettre à un attaquant de faire rebondir du trafic au travers des frontières réseau, de contourner la segmentation et d'utiliser la machine comme point de pivot. Le modèle default doit valoir 0 afin que les interfaces nouvellement créées ne transfèrent pas de paquets, sauf si l'hôte est explicitement configuré comme routeur.

Ce que vérifie Pavois

Pavois lit la valeur d'exécution en direct de net.ipv4.conf.default.forwarding depuis le noyau (ressource InSpec kernel_parameter, équivalente à sysctl), et non un fichier /etc/sysctl.d/. Le transfert est fréquemment basculé à l'exécution par les moteurs de conteneurs, libvirt ou des logiciels VPN, donc un fichier de configuration peut diverger de la réalité. Seul le paramètre effectif révèle si le noyau routera réellement le trafic.

describe kernel_parameter('net.ipv4.conf.default.forwarding') do
  its('value') { should cmp 0 }
end
describe command("grep -hsE '^[[:space:]]*net.ipv4.conf.default.forwarding[[:space:]]*=[[:space:]]*0([[:space:]]|$)' /etc/sysctl.conf /etc/sysctl.d/*.conf /run/sysctl.d/*.conf /usr/lib/sysctl.d/*.conf /lib/sysctl.d/*.conf 2>/dev/null") do
  its('stdout') { should match(/\S/) }
end

Comment vérifier qu’elle est appliquée

Exécutez sysctl net.ipv4.conf.default.forwarding. Sortie attendue :

  • net.ipv4.conf.default.forwarding = 0

Inspecter et investiguer

Aucun journal dédié n'existe. Inspectez l'état avec sysctl net.ipv4.conf.default.forwarding et vérifiez le bascule global avec sysctl net.ipv4.ip_forward ; passez en revue toutes les valeurs de transfert avec sysctl -a | grep forwarding.

Remédiation

Le plan de durcissement de Pavois utilise la ressource sysctl pour définir net.ipv4.conf.default.forwarding à 0, en l'appliquant au noyau en cours d'exécution et en le persistant dans un drop-in géré par Pavois sous /etc/sysctl.d/ afin qu'il survive au redémarrage. Appliquez-le avec pavois harden apply.

Pavois applique ceci avec son propre moteur harden, le plan ci-dessous, pas un script shell :

keynet.ipv4.conf.default.forwarding
resourcesysctl
value0
pavois harden plan local

où la cible est local, un alias SSH user@hôte, ou un conteneur , Docs

Impact & précautions

À appliquer avec précaution sur les hôtes qui routent du trafic. Désactiver le transfert cassera toute machine agissant comme routeur, passerelle NAT, concentrateur VPN ou hôte de conteneurs/VM s'appuyant sur le transfert de paquets (Docker, Kubernetes, libvirt, WireGuard). Sur ces systèmes, laissez le transfert activé ou délimitez l'exception. Avant d'appliquer, confirmez que l'hôte n'est pas un routeur (sysctl net.ipv4.ip_forward et votre rôle réseau). Sur un simple serveur à rôle réseau unique, définir cette valeur à 0 est sûr et n'affecte pas l'accès distant entrant.

Mapping des normes

NormeRéférenceTypeVersionConfiance
CIS3.3.1.3directper OS, see the benchmark tablehaute

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.

Sources & références