0

我们已经设置了一个 samba4 服务器,并且 freeradius 通过 ldap 进行身份验证。

用radclient测试,域用户可以认证。

现在我们想将认证从我们的 MikroTik 路由器转发到 freeradius,从而转发到 ldap...

但是似乎 freeradius 需要明文密码,而 mikrotik 使用 CHAP

反正有没有使这个设置工作?

freeradius中ldap的配置:

ldap {
        server          = "10.100.100.4"
        identity        = "cn=pcmedic,cn=users,dc=fundao,dc=pcmedic,dc=pt"
        password        = xxxxxxxxxx

        basedn          = "cn=users,dc=fundao,dc=pcmedic,dc=pt"

        #password_attribute = "userPassword"

        #filter         = "(uid=%{%{Stripped-User-Name}:-%{User-Name}})"
        filter          = "(sAMAccountName=%{Stripped-User-Name:-%{User-Name}})"

        ldap_connections_number = 5
        timeout         = 4
        timelimit       = 3
        net_timeout     = 1
        tls {
                start_tls = no
        }
        #access_attr = "msNPAllowDialin"
        dictionary_mapping = ${confdir}/ldap.attrmap
        edir_account_policy_check = no
        keepalive {
                idle = 60
                probes = 3
                interval = 3
        }
}
4

1 回答 1

3

只有在 LDAP 中存储有明文密码时才有可能。

有关身份验证类型和散列方案的有效组合,请参见此处的矩阵。

问题是 CHAP 响应不是密码的加密版本,而是单向哈希。您需要明文版本,因此您可以应用相同的哈希并将密码的哈希值与 CHAP 响应进行比较。CHAP 响应也是加盐的,这意味着您不能只将密码的散列版本存储在 LDAP 中。

于 2014-05-26T12:49:13.997 回答