提示
X
本案例来自tskb,请前往tskb修改源内容:立即前往
'>

进阶排查-步骤三:通过aTrust设备与LDAP服务器交互的数据包确认问题

|

问题描述

在检查配置没有异常后,还是存在用户认证不了的情况,那么就需要在atrust设备上抓取设备与LDAP服务器的交互数据包来确认问题原因。

有效排查步骤

一、在执行导入同步到设备本地时,同时在设备webconsole界面进行抓包,命令如下 tcpdump -i ethx(访问LDAP服务器的路由网口) host  xx.xx.xx.xx(ldap服务器地址) -nn -s0 -w,将数据包保存到本地进行分析。
二、抓包分析:

1、客户端发送绑定请求
这里可以使用匿名用户或默认用户来绑定,shterm中是用simple中填写的查询用户DN和查询用户密码
发送内容:(请求绑定Adimistrator)
  • 默认用户的绑定域realm:CN=Administrator,CN=Users,DC=com
  • 协议版本:3
  • 认证方式:Simple
  • 管理员账号的密码



服务器响应绑定结果

2、客户端发送filter,请求查询欲绑定的用户是否存在
如果抓包看没有发送用户过滤请求,可以检查下用户过滤条件是否配置正确,用户过滤条件需要有()框起来
  • 请求查询的用户域realm:CN=Users,DC=com
  • 查询范围:wholeSubtree(整个子树)
  • filter公式:(&(objectclass=person)(sAMAccountName=test6)),就是shterm中填写的用户filter,并用登录测试的用户名test6来替代
  • 登录名sAMAccountName:test6
  • 属性描述:dn






服务器返回查询结果
服务器会返回result,如果没有找到这个用户则result为0,找到了则为1;如果出现result>1的情况,则也是不正常的。
  • 查询到的匹配结果result:1
  • 查询到用户的域realm:CN=test6,CN=Users,DC=com
  • 查询过程结果:success(指的是本次查询是否成功,而不是是否查询到这个用户)






没有查询到用户的结果图:
  • 查询到的匹配结果results:0
  • 查询过程结果:success(指的是本次查询是否成功,而不是是否查询到这个用户)






3、查询到用户时,此时客户端使用新的realm申请绑定
客户端会在这时发送新的realm和test6的密码
发送内容:
  • 默认用户的绑定域realm:CN=test6,CN=Users,DC=com
  • 协议版本:3
  • 认证方式:Simple
  • 用户密码






服务器响应绑定结果



根据上述认证流程,确认问题出在个地方

解决方案

常见的数据包分析案例
1、ldap服务器直接返回DN错误的,此时需要返回步骤二检查下具体配置了
2、用户密码错误的结果图

Microsoft Active Directory(LDAP)连接常见错误代码https://blog.csdn.net/chaijunkun/article/details/23695001

我要分享
文档编号: 224609
作者: admin
更新时间: 2023-02-17 10:42
适用版本: