openvpn-AD域认证提示密码错误故障排查.md

故障现象:

openvpn一直能用的密码突然无法使用,日志报错如下:AD认证失败 auth-failure

efa2429b2257c63121a480b78cbdd51e

故障排查:

AD域先看一下是否账户过期:

powershell输入dsa.msc进入Active Directory用户和计算机,查找问题用户huangweiqing,由下图可知账户还没过期

image-20260313094848210

查找huangweiqing密码是否过期

确认密码是否已过期。

确认密码是否处于临期状态。

确认是否被要求下次登录改密。

记录最近一次密码修改时间。

Get-ADUser huangweiqing -Properties PasswordExpired,PasswordLastSet,LockedOut,Enabled,AccountExpirationDate,badPwdCount,lastLogonTimestamp,userPrincipalName,memberOf | 
Select-Object Name,Enabled,LockedOut,PasswordExpired,PasswordLastSet,AccountExpirationDate,userPrincipalName,badPwdCount,lastLogonTimestamp
image-20260313095406543

上图中:PasswordExpired : True表示AD 侧把这个用户的密码判定为已过期

  • AD 当前认为这个账号的密码已过期
  • OpenVPN 用 LDAP 插件去做认证时,通常会把这种情况表现成:
    • invalid credentials
    • wrong username or password
    • AUTH_FAILED

所以表面看像“密码错了”,本质上很可能是:密码过期了,LDAP bind 被 AD 拒绝。

检查用户使用的密码策略

确认该用户最终应用的是哪套密码策略,而不是只看域默认策略。(Get-ADUserResultantPasswordPolicy huangweiqing 没有返回内容这通常表示 没有单独细粒度密码策略,也就是此用户使用的是域默认策略

Get-ADUserResultantPasswordPolicy huangweiqing

验证域密码策略

命令行:

#验证域默认策略
Get-ADDefaultDomainPasswordPolicy
#也可以只看最大密码期限:
(Get-ADDefaultDomainPasswordPolicy).MaxPasswordAge
#再确认一下这个用户有没有设置“密码永不过期”
Get-ADUser huangweiqing -Properties PasswordNeverExpires,PasswordExpired,PasswordLastSet |
Select-Object Name,PasswordNeverExpires,PasswordExpired,PasswordLastSet

image-20260313100113269由上图可知:

#1. 域默认密码策略是 365 天
MaxPasswordAge : 365.00:00:00
#2. 该用户上次设置密码时间是 2025/3/12 15:26:47
PasswordLastSet : 2025/3/12 15:26:47
#3. 当前 AD 明确判定该用户密码已过期
PasswordExpired : True
PasswordNeverExpires : False

页面检查域密码策略

  1. 打开 组策略管理 gpmc.msc
  2. 展开:
  • suitbim.com
  1. 找到并编辑:
  • Default Domain Policy
  1. 进入:
  • 计算机配置
  • 策略
  • Windows 设置
  • 安全设置
  • 账户策略
  • 密码策略
image-20260313100408414
image-20260313100510474

故障原因:

所以逻辑就是:

  • 域里默认密码有效期 = 365 天
  • huangweiqing 的密码最后设置时间 = 2025/3/12
  • 2026/3/12 左右正好满一年
  • 因为这个用户 没有勾选“密码永不过期”
  • 所以 AD 判定密码过期
  • OpenVPN 的 LDAP 插件去做认证时,被 AD 拒绝
  • 客户端就显示成“密码错误”

解决方案:

1. 重置密码解决

image-20260313100838046

2. 修改域密码策略的密码最大有效期

3. 修改用户密码策略为永不过期

image-20260313100957913

修改密码后成功登录:

滚动至顶部