文章目录
概要
提示:本文使用docker环境部署Freeradius,默认你已经部署了docker
随着网络安全意识的提高,Radius(Remote Authentication Dial-In User Service)认证协议因其高度的安全性和灵活性,被广泛应用于企业网络环境中。FreeRadius作为一款开源的Radius服务器软件,具有强大的功能和良好的扩展性,能够满足不同场景下的认证需求。本文将通过详细的步骤和实例,引导读者完成FreeRadius及Radius全家桶的安装和配置,帮助读者快速掌握Radius认证协议的实际应用。
Docker安装Freeradius
拉取镜像
提示:使用freeradius/freeradius-server镜像
docker pull freeradius/freeradius-server:latest
启动Freeradius容器
docker run -d --name freeradius-server -p 1812-1813:1812-1813/udp freeradius/freeradius-server
# 注意
# 需要映射端口1812和1813,并且以udp的形式映射
查看容器是否正常启动
docker ps -f name=freeradius-server
Freeradius配置
配置文件简介
Freeradius的配置文件位置是在容器中 /etc/freeradius 下面
主要配置文件:
- 客户端配置文件(/etc/freeradius/clients.conf)
- 用户配置文件(/etc/freeradius/users)
- 证书目录(/etc/freeradius/certs)
docker安装工具
# 在docker运行linux命令,可能会出现命令不存在的情况,需要我们自行安装工具
# 进入docker容器命令
docker exec -it freeradius-server sh
# 更新apt
apt-get update
# 安装vim命令
apt-get install -y vim
# 安装make命令,用于后面生成证书
apt-get install -y make
配置文件目录
# 进入freeradius的配置目录
cd /etc/freeradius
# 查看
ls -l
客户端配置
# 编辑客户端配置
vim clients.conf
# 在文件中添加新的需要连接的客户端域名地址和密钥
client new_auth{
ipaddr = 192.168.101.80/24
secret = idzor123456
shortname = lan-w3pc
}
# ipaddr 是路由器RADIUS配置中的地址
# secret 是路由器RADIUS配置中的密码
用户配置
# 编辑用户文件
vim users
# 放开bob的注释,客户端的用户名密码,可以修改用户名和密码
# 也可以新增用户名和密码(选择)
这个时候配置完成了,可以重启一下docker容器测试一下配置成功没有
# 退出docker容器
exit
# 重启docker容器
docker restart freeradius-server
# 重启成功后进入容器
docker exec -it freeradius-server sh
# 执行测试命令
radtest bob hello localhost 0 testing123
# 如果出现 Access-Accept 说明成功了
证书配置
# 进入证书配置文件夹
cd /etc/freeradius/certs
# freeradius/freeradius-server镜像默认会执行一个测试的证书,需要我们修改证书配置
# 保留 README、bootstrap、ca.cnf、client.cnf、dh、inner-server.cnf、server.cnf、xpextenslons文件
# 其他默认的证书全部删掉
# 修改证书配置
vim ca.cnf
1).编辑 default_days 以设置 CA 证书所需的生命周期
2).将 input_password 和 output_password 字段编辑为 CA 证书的密码。
3).编辑 [certificate_authority] 部分以获得适合您所在国家/地区、州等的正确值。
# 修改服务器证书信息
vim server.cnf
1).编辑 default_days 以设置服务器证书的生命周期。为了与所有客户端设备兼容,该值的最大值为 825。
2).将 input_password 和 output_password 字段编辑为服务器证书的密码。
3).编辑 [server] 部分以获取您所在国家/地区、州等的正确值。请确保此处的 commonName 字段与 CA 的 commonName 字段不同证书。
# 修改客户端证书信息
vim client.cnf
1).编辑 default_days 以设置客户端证书的生命周期。
2).将 input_password 和 output_password 字段编辑为客户端证书的密码。您必须将这些密码提供给将使用证书的最终用户。
3).编辑 [client] 部分以获得适合您所在国家/地区、州等的正确值。请确保此处的 commonName 字段是将用于的 User-Name 登录!
# 修改完后执行make命令重新生成证书
make
# 证书生成成功后需要检测一下freeradius配置是否有问题,如果没有任何错误信息说明就修改成功了
freeradius -XC
# 退出容器,并且重启容器
exit
docker restart freeradius-server
拷贝客户端证书
# 把客户端证书和ca证书拷贝出来以供我们客户端连接使用
docker cp freeradius-server:/etc/freeradius/certs/client.p12 .
docker cp freeradius-server:/etc/freeradius/certs/ca.pem .
# client.p12和ca.pem就是我们连接wifi是需要的认证证书
配置路由器采用freeradius服务认证
提示:本文使用华硕路由器配置
登录华硕路由器管理界面,地址为 http://192.168.50.1
登录账户后,选择 无线网络 配置的 一般设置
选择需要使用认证的wifi,在选择授权方式为 WPA2-Enterprise,并且设置我们freeradius的服务地址和密码,密码就是上面 客户端配置 中的 secret
最后点击 应用本页面设置
至此docker部署freeradius就已经整个过程,后期有其他问题在进行补充