Nous utilisons des services d'identité Powerbroker Ouvrir pour authentifier les utilisateurs Active Directory de Ubuntu hôtes avec succès pendant six mois.
Récemment, l'authentification AD a cessé de fonctionner sur plusieurs postes de travail après avoir effectué des utilisateurs apt-get upgrade
de plus de 200 packages à la fois. Les tentatives d'authentification donnent les erreurs "mot de passe invalide", "Le compte d'utilisateur a expiré" ou "Votre compte est verrouillé?"
Je n'ai pas été en mesure de lier le problème à une mise à niveau d'un package spécifique, mais les postes de travail construit à partir de zéro avec les mêmes versions de colis ne connaissent pas le problème. J'ai essayé de réinstaller PBIS et de valider tous les fichiers de configuration, mais je manque quelque chose ... Je suis à perte et j'aimerais que tout conseil a. Je préférerais ne pas avoir à reconstruire une autre boîte la prochaine fois que cela se produira!
J'ai d'abord vérifié que le compte d'utilisateur AD a été activé, n'a pas été verrouillé et n'avait pas expiré. L'authentification locale des utilisateurs fonctionne bien via LightDM et SSH.
lightdm
mot de passe incorrect
auth.log:
lightdm: [lsass-pam] [module:pam_lsass]pam_sm_authenticate error [login:username][error code:40022]
syslog:
lsass: [LwKrb5GetTgtImpl /builder/src-buildserver/Platform-8.0/src/linux/lwadvapi/threaded/krbtgt.c:276] KRB5 Error code: -1765328360 (Message: Preauthentication failed)
lsass: [lsass] Failed to authenticate user (name = 'username') -> error = 40022, symbol = LW_ERROR_PASSWORD_MISMATCH, client pid = 17768
ssh
critiques valides
auth.log:
sshd[18237]: error: PAM: User account has expired for DOMAIN\\USER from HOSTNAME
sshd[18237]: error: Received disconnect from IP_ADDRESS: 13: Unable to authenticate [preauth]
mot de passe incorrect
auth.log:
sshd[18276]: [lsass-pam] [module:pam_lsass]pam_sm_authenticate error [login:domain\username][error code:40022]
sshd[18272]: error: PAM: Authentication failure for domain\\username from hostname
syslog
lsass: [LwKrb5GetTgtImpl /builder/src-buildserver/Platform-8.0/src/linux/lwadvapi/threaded/krbtgt.c:276] KRB5 Error code: -1765328360 (Message: Preauthentication failed)
lsass: [lsass] Failed to authenticate user (name = 'domain\username') -> error = 40022, symbol = LW_ERROR_PASSWORD_MISMATCH, client pid = 18276
Juste essayer des éléments locaux fous (et non, le compte n'est pas enfermé en annonce)
root@hostname:~# su - domain\\username
su: Authentication failure
(Ignored)
reenter password for pam_mount:
DOMAIN\username@hostname:~$ Sudo cat /etc/fstab
[Sudo] password for DOMAIN\username:
Sudo: account validation failure, is your account locked?
DOMAIN\username@hostname:~$
/ opt/pbis/bin/config -dump
AllowDeleteTo ""
AllowReadTo ""
AllowWriteTo ""
MaxDiskUsage 104857600
MaxEventLifespan 90
MaxNumEvents 100000
DomainSeparator "\\"
SpaceReplacement "^"
EnableEventlog false
Providers "ActiveDirectory"
DisplayMotd false
PAMLogLevel "error"
UserNotAllowedError "Access denied"
AssumeDefaultDomain true
CreateHomeDir true
CreateK5Login true
SyncSystemTime true
TrimUserMembership true
LdapSignAndSeal false
LogADNetworkConnectionEvents true
NssEnumerationEnabled true
NssGroupMembersQueryCacheOnly true
NssUserMembershipQueryCacheOnly false
RefreshUserCredentials true
CacheEntryExpiry 14400
DomainManagerCheckDomainOnlineInterval 300
DomainManagerUnknownDomainCacheTimeout 3600
MachinePasswordLifespan 2592000
MemoryCacheSizeCap 0
HomeDirPrefix "/home"
HomeDirTemplate "%H/%D/%U"
RemoteHomeDirTemplate ""
HomeDirUmask "022"
LoginShellTemplate "/bin/bash"
SkeletonDirs "/etc/skel"
UserDomainPrefix "DOMAIN.COM"
DomainManagerIgnoreAllTrusts false
DomainManagerIncludeTrustsList
DomainManagerExcludeTrustsList
RequireMembershipOf "DOMAIN\\DOMAIN-GROUP"
Local_AcceptNTLMv1 true
Local_HomeDirTemplate "%H/local/%D/%U"
Local_HomeDirUmask "022"
Local_LoginShellTemplate "/bin/sh"
Local_SkeletonDirs "/etc/skel"
UserMonitorCheckInterval 1800
LsassAutostart true
EventlogAutostart true
/ opt/pbis/bin/statut
LSA Server Status:
Compiled daemon version: 8.0.1.2029
Packaged product version: 8.0.2029.67662
Uptime: 1 days 1 hours 4 minutes 26 seconds
[Authentication provider: lsa-activedirectory-provider]
Status: Online
Mode: Un-provisioned
Domain: DOMAIN.COM
Domain SID: S-1-5-21-3537566271-1428921453-776812789
Forest: domain.com
Site: NYC
Online check interval: 300 seconds
[Trusted Domains: 1]
[Domain: DOMAIN]
DNS Domain: domain.com
Netbios name: DOMAIN
Forest name: domain.com
Trustee DNS name:
Client site name: NYC
Domain SID: S-1-5-21-3537566271-1428921453-776812789
Domain GUID: 0b6b6d88-ea48-314a-8bad-a997a57bc1f4
Trust Flags: [0x001d]
[0x0001 - In forest]
[0x0004 - Tree root]
[0x0008 - Primary]
[0x0010 - Native]
Trust type: Up Level
Trust Attributes: [0x0000]
Trust Direction: Primary Domain
Trust Mode: In my forest Trust (MFT)
Domain flags: [0x0001]
[0x0001 - Primary]
[Domain Controller (DC) Information]
DC Name: dc2.nyc.domain.com
DC Address: 10.x.x.50
DC Site: NYC
DC Flags: [0x0000f1fc]
DC Is PDC: no
DC is time server: yes
DC has writeable DS: yes
DC is Global Catalog: yes
DC is running KDC: yes
[Global Catalog (GC) Information]
GC Name: dc1.nyc.domain.com
GC Address: 10.x.x.50
GC Site: NYC
GC Flags: [0x0000f3fd]
GC Is PDC: yes
GC is time server: yes
GC has writeable DS: yes
GC is running KDC: yes
/ opt/pbis/bin/trichelets-Objects --Utilisateur Nom d'utilisateur
User object [1 of 1] (S-1-5-21-3537566271-1428921453-776812789-1107)
============
Enabled: yes
Distinguished name: CN=USERNAME,OU=User,OU=User Accounts,DC=domain,DC=com
SAM account name: username
NetBIOS domain name: DOMAIN
UPN: [email protected]
Display Name: First Last
Alias: <null>
UNIX name: DOMAIN\username
GECOS: First LAst
Shell: /bin/bash
Home directory: /home/DOMAIN/username
Windows home directory: \\domain.com\dfs\NYC\Users\username
Local windows home directory:
UID: 1023411283
Primary group SID: S-1-5-21-3537566271-1428921453-776812789-513
Primary GID: 1023410689
Password expired: no
Password never expires: yes
Change password on next logon: no
User can change password: yes
Account disabled: no
Account expired: no
Account locked: no
/etc/pbis/pbis-krb5-ad.conf
[libdefaults]
default_tgs_enctypes = AES256-CTS AES128-CTS RC4-HMAC DES-CBC-MD5 DES-CBC-CRC
default_tkt_enctypes = AES256-CTS AES128-CTS RC4-HMAC DES-CBC-MD5 DES-CBC-CRC
preferred_enctypes = AES256-CTS AES128-CTS RC4-HMAC DES-CBC-MD5 DES-CBC-CRC
dns_lookup_kdc = true
pkinit_kdc_hostname = <DNS>
pkinit_anchors = DIR:/var/lib/pbis/trusted_certs
pkinit_cert_match = &&<EKU>msScLogin<PRINCIPAL>
pkinit_eku_checking = kpServerAuth
pkinit_win2k_require_binding = false
pkinit_identities = PKCS11:/opt/pbis/lib/libpkcs11.so
/etc/pam.d/common-session
session [default=1] pam_permit.so
session requisite pam_deny.so
session required pam_permit.so
session optional pam_umask.so
session required pam_unix.so
session optional pam_mount.so
session [success=ok default=ignore] pam_lsass.so
session optional pam_systemd.so
/etc/pam.d/common-auth
auth [success=2 default=ignore] pam_unix.so nullok_secure
auth [success=1 default=ignore] pam_lsass.so try_first_pass
auth requisite pam_deny.so
auth required pam_permit.so
auth optional pam_cap.so
auth optional pam_mount.so
/pro/pbis/share/pbis.pam-auth-update
Name: Likewise
Default: yes
Priority: 250
Conflicts: winbind
Auth-Type: Primary
Auth:
[success=end default=ignore] pam_lsass.so try_first_pass
Auth-Initial:
[success=end default=ignore] pam_lsass.so
Account-Type: Primary
Account:
[success=ok new_authtok_reqd=ok default=ignore] pam_lsass.so unknown_ok
[success=end new_authtok_reqd=done default=ignore] pam_lsass.so
Session-Type: Additional
Session:
sufficient pam_lsass.so
Password-Type: Primary
Password:
[success=end default=ignore] pam_lsass.so use_authtok try_first_pass
Password-Initial:
[success=end default=ignore] pam_lsass.so
/usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf
[SeatDefaults]
user-session=ubuntu
greeter-show-manual-login=true
/USR/Share/lightdm/lightdm.conf.d/50-unity-Greeter.conf
[SeatDefaults]
allow-guest=false
greeter-show-remote-login=false
greeter-show-manual-login=true
greeter-session=unity-greeter
La ligne clé est la suivante:
sshd[18237]: error: PAM: User account has expired for DOMAIN\\USER from HOSTNAME
Cela indique qu'un module PAM estime que le compte a expiré. Je me concentrerais moins sur auth
/session
et plus sur account
, qui est l'installation axée sur les propriétés de compte non liées à l'authentification. Votre première tâche consiste à identifier le module causant le problème. Une fois que vous le savez, il devrait être beaucoup plus facile d'identifier pourquoi Le module pense que l'utilisateur doit être bloqué.
Passez en revue les modules account
O1 un par un et essayez d'ajouter le drapeau debug
d'indicateurs individuels pour développer la sortie de journalisation si vous avez besoin de plus de notes. S'il est vraiment exclu et que cela ne violerait pas la sécurité d'un environnement critique, vous pouvez également essayer de commenter les lignes account
lignes une à la fois jusqu'à ce que vous identifiez votre coupable.
Quant à ce qui a changé, plus que probablement votre configuration PAM a été modifiée lorsque ces packages ont été installés. Il est probable que les utilisateurs en question étaient dans cet état, mais la base de données associée à la mauvaise conduite account
module a été contournée. (ignoré, commenté, pas du tout présent, etc.)
POUR VOTRE INFORMATION: domainjoin-cli configure --enable pam
ajoutera également ces lignes après une mise à niveau également. PBIS Ouvrir 8.x et plus correctement livrer correctement un /usr/share/pam-configs/pbis
Configuration pour que cela ne se produise pas à l'avenir.
De plus, PBIS enregistre des erreurs plus spécifiques sur la facilité Daemon de Syslog, vous pouvez donc les voir à Ubuntu dans /var/log/syslog
plutôt que /var/log/secure
.
J'ai vécu ce problème sur l'un de nos serveurs Ubuntu 14.04.4 pour un utilisateur. L'utilisateur avait un Ø dans le nom d'affichage en annonce. Quand j'ai remplacé le Ø avec O, il a pu se connecter. Pourquoi ceci était un problème sur un seul serveur, je n'ai pas encore chiffré.