Ntlm_auth – peut se connecter en AD avec les anciens et les nouveaux mots de passe

J'ai un problème avec AD et ntlm_auth. J'utilise la commande suivante pour interroger le serveur AD pour vérifier l'existence de l'utilisateur:

ntlm_auth --use-cached-creds --username=SOME_USER --password=SOME_PASS --domain=SOME_DOMAIN 

Mais la chose est que, lorsque je change le mot de passe de l'utilisateur dans AD, les deux requêtes suivantes fonctionnent:

 ntlm_auth --use-cached-creds --username=SOME_USER --password=OLD_PASS --domain=SOME_DOMAIN ntlm_auth --use-cached-creds --username=SOME_USER --password=NEW_PASS --domain=SOME_DOMAIN 

Si je supprime les fichiers de dossier .tdb dans /var/cache/samba/ , je peux me connecter avec le NEW_PASS. Comment puis-je resoudre ceci? Existe-t-il un moyen de faire du serveur de ne pas mettre en cache les mots de passe? Ou n'importe quel drapeau pour ntlm_auth, que je peux utiliser pour ne pas prendre en compte le vieux_password?

J'utilise CentOS5 et ntlm_auth 3.3.8.

Merci d'avance.

On dirait que vous rencontrez une «fonctionnalité» introduite dans Server 2003 SP1 et présente encore au moins Server 2008 R2. Par défaut, les contrôleurs de domaine permettent maintenant d'utiliser le mot de passe précédent le plus récent pour l'authentification NTLM pendant une heure. Ce comportement peut être modifié en créant une valeur DWORD de OldPasswordAllowedPeriod à HKLM\SYSTEM\CurrentControlSet\Control\Lsa . La valeur est en minutes, une valeur de 0 la désactive et aucun redémarrage n'est nécessaire. Notez également que:

  1. Cela s'applique uniquement à NTLM, pas à l'authentification Kerberos.
  2. Cette modification doit être effectuée sur chaque contrôleur de domaine.
  3. La politique de mot de passe de l'utilisateur doit avoir l'historique des mots de passe activé ou cette fonctionnalité est effectivement désactivée.

Voir Windows Server 2003 Service Pack 1 modifie le comportement d'authentification réseau NTLM pour plus de détails.

EDIT: Donner du crédit, s'il vous plaît, je me suis trouvé à l'origine sur cet article à http://timstechnoblog.blogspot.com/2010/02/old-password-still-valid-for-hour.html et je me suis souvenu que cette question était sans réponse.

Ntlm_auth par défaut, utilisez /etc/samba/smb.conf. Essayez de configurer la balise ci-dessous dans smb.conf

 winbind offline logon = false