Désactiver l'authentification GSSAPI
Force GSSAPIAuthentication no afin que SSH ne propose pas le mécanisme d'authentification GSSAPI (généralement Kerberos).
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.
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
GSSAPI fournit une authentification enfichable (le plus souvent Kerberos) aux applications. L'exposer via SSH élargit la surface d'attaque : il atteint la pile GSSAPI/Kerberos du système depuis le réseau et a historiquement été source de vulnérabilités pré-authentification. Sur les hôtes ne participant pas à un domaine Kerberos, ce mécanisme est un poids mort et doit être désactivé pour garder un ensemble minimal de méthodes d'authentification activées.
Ce que vérifie Pavois
Pavois lit la valeur effective via sshd -T, après tous les Include, drop-ins de /etc/ssh/sshd_config.d/ et blocs Match. Sur la famille RHEL, les politiques crypto système injectent des réglages SSH par includes, seule la sortie résolue de sshd -T révèle si GSSAPI est réellement désactivé, ce qu'une lecture de /etc/ssh/sshd_config ne permet pas.
describe command('sshd -T') do
its('stdout') { should match(/^gssapiauthentication\s+no$/i) }
endComment vérifier qu’elle est appliquée
Exécutez sshd -T | grep -i '^gssapiauthentication'. La sortie attendue est gssapiauthentication no.
Inspecter et investiguer
La négociation des méthodes d'authentification est journalisée dans /var/log/auth.log (Debian/Ubuntu) ou journalctl -u sshd (famille RHEL), plus en détail avec LogLevel VERBOSE.
Remédiation
Le plan harden de Pavois écrit la directive sshd_setting GSSAPIAuthentication no dans un drop-in géré, valide avec sshd -t, puis recharge le service ssh. Appliquez-le avec pavois harden apply.
Pavois applique ceci avec son propre moteur harden, le plan ci-dessous, pas un script shell :
| directive | gssapiauthentication |
|---|---|
| notify | action: reload, service: ssh.service |
| resource | sshd_setting |
| value | no |
| verify | sshd -t -f %{path} |
pavois harden plan localoù la cible est local, un alias SSH user@hôte, ou un conteneur , Docs
Impact & précautions
Avant d'appliquer, vérifiez que l'hôte ne repose pas sur l'authentification unique Kerberos via SSH (fréquent dans les environnements Active Directory / FreeIPA / joints par SSSD). Si les utilisateurs se connectent avec des tickets Kerberos (ssh -K), désactiver GSSAPI les forcera vers les clés ou mots de passe. Sur les hôtes autonomes, aucun impact. Le rechargement préserve les sessions actives.
Mapping des normes
| Norme | Référence | Type | Version | Confiance |
|---|---|---|---|---|
| CIS | 5.1.9, 5.1.11 | direct | per OS, see the benchmark table | haute |
| NIST | 3.1.12, AC-17(a), 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.