使用LDAP为WPA2企业配置FreeRadius

使用LDAP为WPA2企业配置FreeRadius,ldap,freeradius,wpa,Ldap,Freeradius,Wpa,我需要通过LDAP使用WPA2 Enterprise配置freeradius的帮助 LDAP通常适用于其他服务,但不适用于WPA2E 我们还管理WPA2E使用硬编码用户名/密码。所以我们知道所有组件都是自己工作的,但不是一起工作的 我们对freeradius服务器进行了良好的配置,可以使用LDAP服务 谢谢你的帮助 以下是我对自由radius模块/ldap文件的ldap设置(与此问题基本无关) 还有以下eap.conf设置 eap { default_eap_type = peap timer_

我需要通过LDAP使用WPA2 Enterprise配置freeradius的帮助

LDAP通常适用于其他服务,但不适用于WPA2E

我们还管理WPA2E使用硬编码用户名/密码。所以我们知道所有组件都是自己工作的,但不是一起工作的

我们对freeradius服务器进行了良好的配置,可以使用LDAP服务

谢谢你的帮助

以下是我对自由radius模块/ldap文件的ldap设置(与此问题基本无关)

还有以下eap.conf设置

eap {
default_eap_type = peap
timer_expire     = 60
ignore_unknown_eap_types = no
cisco_accounting_username_bug = no
max_sessions = 4096

md5 {
}

leap {
}

gtc {
        auth_type = PAP
}

tls {
        certdir = ${confdir}/certs
        cadir = ${confdir}/certs
        private_key_password = whatever
        private_key_file = ${certdir}/server.key
        certificate_file = ${certdir}/server.pem
        CA_file = ${cadir}/ca.pem
        dh_file = ${certdir}/dh
        random_file = /dev/urandom
        CA_path = ${cadir}
        cipher_list = "DEFAULT"
        make_cert_command = "${certdir}/bootstrap"

        cache {
              enable = no
              max_entries = 255
        }

        verify {
        }
}

ttls {
        default_eap_type = md5
        copy_request_to_tunnel = no
        use_tunneled_reply = no
        virtual_server = "inner-tunnel"
}


peap {
        default_eap_type = mschapv2
        copy_request_to_tunnel = no
        use_tunneled_reply = no
        virtual_server = "inner-tunnel"
}

mschapv2 {
}}
还启用了两个站点,默认和内部隧道:

违约

authorize {
    preprocess
    suffix
    eap {
        ok = return
    }
    expiration
    logintime
    ldap
}
authenticate {
    eap
    ldap
}
内隧道

authorize {
    mschap
    update control {
           Proxy-To-Realm := LOCAL
    }
    eap {
        ok = return
    }
    expiration
    ldap
    logintime
}
authenticate {
    Auth-Type MS-CHAP {
        mschap
    }
    eap
    ldap
}
以下是我在调试日志中看到的示例日志:


您似乎删除了
可用站点/内部隧道
已启用站点/内部隧道

如果您查看日志,它会抱怨找不到内部隧道服务器,它需要在PEAP身份验证的TLS隧道中执行MSCHAPv2身份验证

server  {
  PEAP: Setting User-Name to emre@domain.com
Sending tunneled request
        EAP-Message = 0x0205001a01656d72654071756269746469676974616c2e636f6d
        FreeRADIUS-Proxied-To = 127.0.0.1
        User-Name = "emre@domain.com"
server inner-tunnel {
No such virtual server "inner-tunnel"
} # server inner-tunnel
重新添加符号链接,并在内部隧道服务器的authorize部分的顶部列出ldap模块。您还需要使用ldap attrmap文件将保存用户明文密码的属性映射到用户密码属性

如果目录中没有用户的明文密码(例如,如果已哈希),则应使用EAP-TTLS-PAP,并在内部隧道服务器的“身份验证”部分列出LDAP模块,然后添加:

if (User-Password) {
    update control {
        Auth-Type := LDAP
    }
}
到内部隧道服务器的授权部分

if (User-Password) {
    update control {
        Auth-Type := LDAP
    }
}