我按照以下步骤安装了 Free Radius:
sudo apt install freeradius freeradius-config
sudo sed -i '1s/^/steve Cleartext-Password := "testing"\n/' /etc/freeradius/3.0/users
sudo systemctl stop freeradius.service
sudo usermod -a -G ssl-cert freerad
sudo freeradius -X
sudo chmod 744 /usr/local/etc/raddb/dictionary
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