freeradius+mysql搭建认证服务器

    科技2023-10-10  131

    1、关闭防火墙和SELinux

    systemctl stop firewalld setenforce 0

    2、安装软件。

    yum install -y freeradius freeradius-mysql freeradius-utils mariadb mariadb-server

    3、配置数据库。

    //开启数据库服务 systemctl restart mariadb //登录数据库修改登录用户root的密码 mysql -uroot -p SET password for 'root'@'localhost'=password('123456'); GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY '123456' WITH GRANT OPTION; flush privileges; #重新加载权限 create database radius;  #创建名字为radius的数据库,留后面给freeradius用。 quit;

    4、导入radius数据表。

    mysql -u root -p123456 radius < /etc/raddb/mods-config/sql/main/mysql/schema.sql

    5、修改radius配置文件,然后保存退出。

    cd /etc/raddb/mods-enabled //建立mysql调用 ln -s ../mods-available/sql vi /etc/raddb/mods-available/sql 修改:driver = “rlm_sql_mysql” 和 dialect = “mysql” 取消注释:server = "localhost" #数据库地址,如果radius和数据库在同一主机,默认localhost即可 port = 3306 #数据库端口号 login = "root" #数据库登录用户 password = "123456" #数据库登录用户密码

    6、修改认证用户信息,然后保存退出。

    vi /etc/raddb/users 最上方添加:zhangsan Cleartext-Password := "123456" #用户名:zhangsan 密码:123456

    7、修改认证客户端信息,默认只允许本机访问,然后保存退出。

    //允许192.168.121.38主机进行访问,密钥为123456 vi /etc/raddb/clients.conf 最下方添加:client 1 { ipaddr = 192.168.121.38 secret = 123456 }

    8、开启radius服务进行测试。

    //debug模式开启radius服务 radiusd -X //radtest 用户 密码 访问地址 0 密钥 本地客户端访问:radtest zhangsan 123456 127.0.0.1 0 testing123 其它客户端访问:radtest zhangsan 123456 192.168.121.48 0 123456 登录成功为Access-Accept,登录失败为Accept-Reject。 //正常模式开启radius服务 systemctl start radiusd

    9、查看数据库表记录。

    mysql -uroot -p123456 use radius; select * from radpostauth;

    认证通过与否,都会记录登录用户名和密码到radpostauth这个数据表中,所以查看数据表就可以查看所有登录认证信息。

    Processed: 0.009, SQL: 8