如何让 freeradius 使用 CHAP 而非 PAP 进行身份验证

问题描述 投票:0回答:1

我已经在服务器上安装了 freeradius 3,并且我尝试通过

测试 chap
radtest -t chap ahmed test localhost 1812 testing123 

我收到了“访问-接受”。

但是当我尝试使用相同的凭据通过强制门户进行连接时,它通过 PAP 进行身份验证,导致保存在 radpostauth 表中的密码保存为明文,这意味着 radius 是通过 PAP 进行身份验证的。

我还在文件 sites-enabled/defaultAuthentication 部分中阅读了该内容

本节列出了哪些模块可用于身份验证。 请注意,它并不意味着“按顺序尝试每个模块”。它的意思是 “授权”部分的模块添加了配置 属性“Auth-Type := FOO”。该身份验证类型是 用于从下面的列表中选择适当的模块。

当我尝试添加时

Auth-Type := CHAP

里面的身份验证是这样的

authenticate 
{
     Auth-Type := CHAP
}

它给了我一个错误

/etc/raddb/sites-enabled/default[452]: Entry is not a reference to a module
/etc/raddb/sites-enabled/default[444]: Errors parsing authenticate section.

那么我应该在哪里告诉 Radius 仅使用 CHAP 进行身份验证??

radius freeradius
1个回答
0
投票

因为您发明了语法,而不是遵循文件中已有的示例。

您只需列出:

authorize {
    chap
    ...
}

authenticate {
    chap
}

而且它会工作得很好。

如果你想从sql表中拉取记录

authorize {
    update control {
        Cleartext-Password := "%{sql:SELECT <query to get password>}"
    }
    chap
}
© www.soinside.com 2019 - 2024. All rights reserved.