FreeRADIUS 是一种广泛使用的远程用户拨号认证系统(Remote Authentication Dial In User Service, RADIUS),它提供了对用户身份的集中管理和验证,下面将详细介绍 FreeRADIUS 客户端和服务器的配置步骤,并提供相关问题与解答。
FreeRADIUS 客户端和服务器配置
一、FreeRADIUS 服务器安装与配置
1、安装依赖库:
在 Ubuntu 上可以使用以下命令安装必要的依赖库:
sudo apt-get install libtalloc-devel openssl openssl-devel mysql-devel
2、获取并解压源码:
下载 FreeRADIUS 服务器源码并解压:
wget https://github.com/FreeRADIUS/freeradius-server/archive/freeradius-server-3.0.13.tar.gz tar -zxvf freeradius-server-3.0.13.tar.gz cd freeradius-server-3.0.13/
3、编译和安装:
使用以下命令进行编译和安装:
./configure make sudo make install
4、配置 FreeRADIUS:
修改配置文件/etc/raddb/users
,添加测试用户:
test Cleartext-Password := "123456"
修改防火墙配置以允许 FreeRADIUS 使用的端口(1812 用于认证,1813 用于计费):
iptables -A INPUT -p udp --dport 1812 -j ACCEPT iptables -A INPUT -p udp --dport 1813 -j ACCEPT
5、启动 FreeRADIUS:
使用调试模式启动 FreeRADIUS 服务器:
radiusd -X
6、测试认证:
在另一个终端使用radtest
命令测试认证:
radtest test 123456 localhost 1812 testing123
7、配置允许接入的客户端 IP 段:
修改/etc/raddb/clients.conf
文件,添加允许访问的 IP 段:
client 10.2.18.8/16 { secret = testing123 }
8、配置 MySQL 数据库:
创建数据库和数据表:
CREATE DATABASE radius; USE radius; SOURCE /etc/raddb/mods-config/sql/main/mysql/schema.sql;
建立组信息和用户信息:
INSERT INTO radgroupreply (groupname, attribute, op, value) VALUES ('user', 'Auth-Type', ':=', 'Local'); INSERT INTO radgroupreply (groupname, attribute, op, value) VALUES ('user', 'Service-Type', ':=', 'Framed-User'); INSERT INTO radgroupreply (groupname, attribute, op, value) VALUES ('user', 'Framed-IP-Address', ':=', '255.255.255.255'); INSERT INTO radgroupreply (groupname, attribute, op, value) VALUES ('user', 'Framed-IP-Netmask', ':=', '255.255.255.0'); INSERT INTO radcheck (username, attribute, op, value) VALUES ('test', 'Cleartext-Password', ':=', 'testpwd'); INSERT INTO radusergroup (username, groupname) VALUES ('test', 'user');
9、修改 FreeRADIUS 的 MySQL 配置文件:
编辑/etc/raddb/mods-available/sql
文件,修改以下内容:
driver = "rlm_sql_mysql" dialect = "mysql" server = "localhost" port = 3306 login = "radius" password = "radpass" read_clients = yes
10、重启 FreeRADIUS:
radiusd -X
11、再次验证用户认证:
radtest test testpwd localhost 1812 testing123
二、FreeRADIUS 客户端安装与配置
1、安装 FreeRADIUS 客户端:
下载并解压 FreeRADIUS 客户端源码:
wget ftp://ftp.freeradius.org/pub/freeradius/freeradius-client-1.1.7.tar.bz2 tar -jxvf freeradius-client-1.1.7.tar.bz2 cd freeradius-client-1.1.7/
2、编译和安装:
使用以下命令进行编译和安装:
./configure make sudo make install
3、配置 FreeRADIUS 客户端:
打开/usr/local/etc/radiusclient/servers
文件,添加服务器配置:
localhost testing123
在/usr/local/etc/radiusclient/radiusclient.conf
文件中添加以下内容:
auth_order radius,local login_tries 1 login_timeout 5 nologin /etc/nologin issue /usr/local/etc/radiusclient/issue authserver localhost acctserver localhost servers /usr/local/etc/radiusclient/servers dictionary /usr/local/etc/radiusclient/dictionary login_radius /usr/local/sbin/login.radius seqfile /var/run/radius.seq mapfile /usr/local/etc/radiusclient/port-id-map default_realm #radius_timeout 5 #radius_retries 1 radius_deadtime 0 bindaddr * #local_login_program login_local /bin/login
4、测试客户端:
使用radlogin
命令测试客户端连接:
radlogin -h localhost -u test -p test
如果成功,将会显示认证成功的信息。
相关问题与解答
问题1:如何更改 FreeRADIUS 服务器的认证方式?
答:要更改 FreeRADIUS 服务器的认证方式,可以修改/etc/raddb/mods-config/modules.conf
文件,注释掉不需要的模块,启用需要的模块,要使用 PAP 认证,可以启用pap
模块,然后重新启动 FreeRADIUS 服务器以应用更改。
问题2:FreeRADIUS 客户端无法连接到服务器怎么办?
答:FreeRADIUS 客户端无法连接到服务器,首先检查网络连接是否正常,确保客户端和服务器之间的网络通信无障碍,检查服务器上的防火墙设置,确保允许 FreeRADIUS 使用的端口(默认为1812和1813)通过,查看服务器和客户端的日志文件,查找错误信息,根据错误信息进行相应的故障排除。
以上就是关于“freeradius客户端和服务器配置”的问题,朋友们可以点击主页了解更多内容,希望可以够帮助大家!
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/743659.html