为什么 radtest 不工作,并返回有关 radclient 的错误?

为什么 radtest 不工作,并返回有关 radclient 的错误?

我按照以下步骤安装了 Free Radius:

  1. sudo apt install freeradius freeradius-config
  2. sudo sed -i '1s/^/steve Cleartext-Password := "testing"\n/' /etc/freeradius/3.0/users
  3. sudo systemctl stop freeradius.service
  4. sudo usermod -a -G ssl-cert freerad
  5. sudo freeradius -X
  6. sudo chmod 744 /usr/local/etc/raddb/dictionary
  7. radtest -x steve testing 127.0.0.1 10 testing123

最后一次运行的命令(第 7 个,radtest)失败,输出如下:

$ radtest -x steve testing 127.0.0.1 10 testing123
radclient:: Unknown attribute "User-Name" requires a hex string, not "steve"
radclient: Nothing to send.

我已经在 Google 上搜索过这个问题,我能找到的最好的信息是一个邮件列表(https://freeradius-users.freeradius.narkive.com/pFaFTRpq/beginner-need-help),该问题已保存在多个网站上。用户遇到了与我相同的问题,但他分心了,并试图修复其余问题,而从未回到这个问题。读起来非常令人沮丧,我强烈建议您不要这样做。

我该如何修复我的设置以便可以测试 freeradius?

答案1

您之所以会收到上述错误,是因为 radclient 找不到字典,因此它将所有属性视为原始八位字节(二进制)类型。请检查字典是否确实存在,/usr/share/freeradius以及 radclient 是否具有访问它们的权限。

答案2

只是想补充一下

如果您使用带有 freeradius 版本 3 的 Ubuntu 22,则找不到 raddtest 二进制文件。

您必须首先安装 freeradius-utils。

apt install -y freeradius-utils

相关内容