在第一次使用AD创建用户时,”姓名”栏 后 即为cn值,一旦创建完就无法修改 

 
如上面创建的是 wu1jun2feng3
创建完成后,如下再修改后显示名称为wu1jun2feng3 modify4,实际改的是displayName,而cn值并没有变。

  
使用ldapbrowser 读取到AD服务器上的LDAP信息如下 

理解清楚这一点对于使用LDAP认证是至关重要的,我可是测试了三天才弄明白

接下来就可以参考《配置飞塔LDAP用户认证》,对FortiGate设备配置LDAP去验证windows2003 server上的用户名和密码了。

 

当飞塔***网关使用LDAP认证时,如果普通名称标示符使用默认的cn

在下面的***拨号客户端软件上,User name该设置成什么呢?

千万别再错误设成wujunfeng1 了

 如果将飞塔***网关的普通名称标示符修改为sAMAccountName,则此处Username就该设为wujunfeng1了

再解释一下在FortiGate3016B配置上LDAP的参数说明
依次展开设置用户→远程→LDAP并新建
  • 名称随意,这里是ldap-low
  • 服务器IP为DC的IP地址
  • 端口为默认389
  • 普通名称标示符默认为cn建议更换为sAMAccountName (邮箱帐号前缀)
  • 所谓“著名名称”即 查询的起点 base_DN,可以在这指定搜索路径,也可以只指定根。
    格式为DC=abc,DC=com,按照实际域名为准
    注:飞塔防火墙对中文支持不好,不能识别带有中文字的base_DN,但子OU包含中文字是可以进行搜索的。

    背景知识:
    查询是LDAP中最复杂的操作,它允许客户端指定查询的起点、查询的深度、属性需要满足的条件以及最终返回的目录条目所包含的属性。
    查询的起点是通过base DN来指定的,查询的深度即范围有三种baseObject, singleLevel, wholeSubtree。
  1. baseObject只对base DN指定的目录条目进行查询;
  2. singleLevel只对base DN的直接子节点进行查询;
  3.  wholeSubtree对base DN(包括base DN)的所有子节点查询。属性需要满足的条件是用search filter来表达的。
    此外,还可以指定别名的解析(Aliase Dereferrencing)和查询的结果集大小限定和查询时间限定。
  • 绑定类型为常规,支持RFC2251 的LDAP协议标准来验证用户名和密码
     
  1. 常规:使用用户名/密码直接连接到LDAP服务器,根据给定值搜索结果收到接受或拒绝的指令。
  2. 匿名:作为匿名用户连接到LDAP服务器,然后获取用户名/密码,且将用户名/密码与给定值比较。
  3. 简单:使用用户名/密码直接连接到LDAP服务器
     
  • 用户DN: 这里需要输入一个域中有可读权限的用户,并输入密码
  • 填写好后可点击搜索按钮图标 ,可以验证 LDAP是否连接成功,如果成功连接,可以查询出指定路径下的目录结构(即查看出AD服务器上的用户信息)

终于解决了这个棘手的ldap问题了, 突然想到今天是个特别的日子,真该小小庆贺一下了