1.eap-pwd
部分android11机 无法使用 wpa1/2 企业级 的 peap ttls tls 界面逻辑上要求提供ca证书和 “域” 自签名证书 没有配置san段落 无法通过认证
使用eap-pwd 可以避免 ssl 证书认证
eap-pwd 使用明文密码认证 客户端的通过freeradius的 inner-tunnel 与密码后端进行明文匹配,密码后端 如 mysql files ldap 通常都是使用hash过的密码 这取决于 第二阶段的认证方式 如 mschapv2 使用的算法是 微软的 sambaNtpassword,pap gtc 则使用 hash算法
pwd 的密码就是明文存放 没有经过hash处理
2. freeradius 使用 files 进行pwd认证
mods-enabled/eap
pwd {
group = 19
fragment_size = 1020
virtual_server = "inner-tunnel“
}
pwd 仅配置 authorize 段落
sites-enabled/inner-tunnel
启动 files方式作为认证后端
authorize {
…
files
…
}
添加用户和密码 明文储存 限制访问权限
mods-config/files/authorize
在 bob 段落 默认是注释的
#bob Cleartext-Password := “hello”
#Reply-Message := “Hello, %{User-Name}”
添加 需要加入pwd认证的用户
user1 Cleartext-Password := “12345678”
Reply-Message := “Hello, %{User-Name}”
重启freeradius 就可以使用 eap-pwd认证了
3. freeradius 使用 openldap 进行pwd认证
1 .ldap 的userpassword 使用 hash验证密码 根据密码策略 password policy 的配置 可以将用户的userpassword改为明文储存 这个默认配置应用整个ldap的userpassword 当然也可以单独为每个用户配置特定密码策略
2.在ldap 的用户 创建一个 schema 或使用一个不使用的属性 如 drink
属性值设置为 该用户的明文密码
这里使用 不使用的属性 drink 作为 明文密码属性
在radius ldap
mods-enabled/ldap
添加
control:Password-With-Header += ‘drink’
重启freeradius
ldap 在 用户添加用户属性 drink 并将明文密码设置为该属性值