zoukankan      html  css  js  c++  java
  • CentOS搭建radius服务器用于wifi的wap2认证

      参考:https://www.dazhuanlan.com/2019/10/01/5d9313aa9a9a9/

        https://www.cnblogs.com/keephappy/p/7681695.html

        https://blog.csdn.net/qq_29056051/article/details/81066205

      1,网络拓扑

      IP规划

    明细 IP  备注
    路由器WAN口 192.168.1.10  
    路由器LAN口  192.168.0.0/24  
    Radius服务器  192.168.1.100  

      2,环境查看

       路由器型号为TP-Link TL-WAR1200L也可以使用其他支持WPA2认证的路由器

      3,安装FreeRadius

      安装

    yum -y install freeradius freeradius-utils freeradius-mysql
    

       启动radius

    systemctl start radiusd
    systemctl enable radiusd
    

       日志在

    /var/log/radius/radius.log 
    

       也可以使用调试模式启动,直接在当前页面显示日志

    radiusd -X
    

       FreeRADIUS 3.0的测试

      修改配置文件

    vim /etc/raddb/users
    

       把以下行的注释取消

       测试

    [root@localhost ~]# radtest steve testing localhost 0 testing123
    

       如果输出"Access-Accept"表示成功了,"Access-Reject"表示失败了。

       使用radius -X启动则在终端显示以下代表认证成功

       关闭radius测试会提示没有响应

      测试完把注释在加上

       4,安装mariadb

      安装

    yum install -y mariadb-server mariadb
    

       启动

    systemctl start mariadb
    systemctl enable mariadb
    

      运行安全设置

    mysql_secure_installation
    

     

       进入数据库

    [root@localhost ~]# mysql -uroot -p
    Enter password: 
    

       创建数据库并授权

    MariaDB [(none)]> create database radius;
    
    Query OK, 1 row affected (0.00 sec)
    
    MariaDB [(none)]> grant all on radius.* to radius@'localhost' identified by 'radius';
    Query OK, 0 rows affected (0.00 sec)
    
    MariaDB [(none)]> flush privileges;
    Query OK, 0 rows affected (0.00 sec)
    

       5, 配置radius和数据库

      导入数据库

    [root@localhost ~]# mysql -uroot -p radius < /etc/raddb/mods-config/sql/main/mysql/schema.sql 
    

       为/etc/raddb/mods-enabled创建软连接

    [root@localhost ~]# ln -s /etc/raddb/mods-available/sql /etc/raddb/mods-enabled/
    

       查看

    [root@localhost ~]# ll /etc/raddb/mods-enabled/sql 
    lrwxrwxrwx 1 root root 29 1月  19 14:09 /etc/raddb/mods-enabled/sql -> /etc/raddb/mods-available/sql
    

       配置SQL模块/ raddb/mods-available/ SQL,并更改数据库连接参数,以适合环境

    [root@localhost ~]# vim /etc/raddb/mods-available/sql
    

       设置以下项,其余项保持默认

    driver = "rlm_sql_mysql"
    dialect = "mysql"
    server = "localhost"
    port = 3306
    login = "radius"
    password = "radius"
    radius_db = "radius"
    
    read_clients = yes
    

       然后,将/etc/raddb/mods-enabled/sql所属组更改为radiusd

    #chgrp -h radiusd /etc/raddb/mods-enabled/sql
    

       添加客户端连接设置,添加允许所有用户接入,如需特定ip访问,ip可以自由更改。

    [root@localhost ~]# vim /etc/raddb/clients.conf 
    

       本次设置所有client都可以接入,生产中可设置特定ip

      密钥为testing123为需要在路由器配置的密钥

    client all_client {
    ipaddr = 0.0.0.0/0
    secret = testing123
    require_message_authenticator = no
    }
    

       建立组信息和用户

      建立组信息

      登录mysql创建

      建立组信息

    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');
    

       查看

      建立用户信息:(在此新建用户名为test,密码为testpwd)

    insert into radcheck (username,attribute,op,value) values ('test','Cleartext-Password',':=','testpwd');
    

       查看

       将用户加入组中

     insert into radusergroup (username,groupname) values ('test','user');
    

       重启radius测试

    systemctl restart radiusd
    

       测试

    radtest test testpwd localhost 1812 testing123
    

     

       6,路由器设置使用radius认证

      设置如下

      电脑连接wifi

       手机 连接

       注意:连接可以查看日志排错

     tail -f /var/log/radius/radius.log
    

       调试期间可以使用调试模式启动,显示详细日志信息

    radiusd -X
    

       



  • 相关阅读:
    dubbo里面的JavaBeanDescriptor是怎么进行序列化和反序列化的?
    为什么dubbo的调用重试不建议设置成超过1
    dubbo中registry、route、directory、cluster、loadbalance、route的关系以及一个引用操作和调用操作到底干了啥
    技术博客-1 DRF框架下的图片(文件)上传
    Scrum meeting 1
    beta设计和计划
    事后分析$alpha$
    项目展示$alpha$
    帮助文档
    发布声明α
  • 原文地址:https://www.cnblogs.com/minseo/p/14297831.html
Copyright © 2011-2022 走看看