Centos 7 搭建Wpa认证服务

关键字 :freeradius wpa eap
参考: http://www.racksam.com/2017/03/02/centos7-install-freeradius

路由器设置为WPA/WPA2企业版模式之后,热点的security=SECURITY_EAP,设备再连接该wifi

1、 准备工作:

一台支持WPA/WPA2企业版的路由器
一台安装了centos7的电脑或者虚拟机

要保证电脑或虚拟机与路由器同一个网段。
注意:若使用虚拟机,网络不要使用共享网络模式,要用桥架wifi模式(保证同一网段,使路由器能够访问到freeradius)

2、安装数据库

2.1安装mariadb服务器

# yum -y update
# yum install -y mariadb-server mariadb

2.2开启mariadb服务

# systemctl start mariadb
# systemctl enable mariadb

2.3查看数据库状态

# systemctl status mariadb
# systemctl is-enabled mariadb.service
enabled

2.4初始化数据库安全设置

设置数据库密码,要记住,后面要用到。推荐选项:
Set root password? [Y/n] Y
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

3、创建FreeRadius数据库

创建radius数据库,并设置用户名及密码:
-u 用户名 。由于我们没有为数据库创建新用户,所以只能使用root账号登录, 密码就是上面设置的数据库密码

# mysql -u root -p

创建一个名为radiusdb的数据库

MariaDB [(none)]> CREATE DATABASE radiusdb;
MariaDB [(none)]> GRANT ALL ON radiusdb.* TO dbuser@localhost IDENTIFIED BY "mypass";
GRANT ALL ON radiusdb.* TO dbuser@'%' IDENTIFIED BY "mypass";
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> \q
Bye

4、安装FreeRadius

4.1 yum安装freeradius

yum -y install freeradius freeradius-utils freeradius-mysql

4.2导入数据库schema
schema.sql 里是创建数据表的sql语句

# mysql -u root -p radiusdb < /etc/raddb/mods-config/sql/main/mysql/schema.sql

4.3 配置FreeRadius使用mysql
启用sql模块

# ln -s /etc/raddb/mods-available/sql /etc/raddb/mods-enabled/
# chgrp -h radiusd /etc/raddb/mods-enabled/sql

4.4配置mysql数据库连接信息

vim /etc/raddb/mods-available/sql

主要修改内容

sql {(...省略...)driver = "rlm_sql_mysql"dialect = "mysql"# Connection info:#server = "localhost"port = 3306login = "dbuser"password = "mypass"radius_db = "radiusdb"(...省略...)
}

5、调整FreeRadius与MariaDB的启动顺序

5.1添加FreeRadius启动服务

# systemctl enable radiusd.service

FreeRadius服务必须在数据库正常启动后才能正常启动,否则会出错。为了确保这一点,按照以下方法强制指定radius服务启动的顺序

# vi /etc/systemd/system/multi-user.target.wants/radiusd.service
[Unit]
Description=FreeRADIUS high performance RADIUS server.
After=syslog.target network.target
After=mariadb.service

5.2添加客户端连接设置
编辑/etc/raddb/clients.conf文件,为允许连接的客户端设置相应的共享秘钥
允许所有客户端连接, secret 是在访问freeradius时要使用的秘钥,设置路由器时要使用

client all_client {ipaddr = 0.0.0.0/0secret = testing123require_message_authenticator = no
}

5.3启动服务

# systemctl start radiusd.service
# systemctl status radiusd.service

5.4调试radius
若要看在终端看日志
如果radius启动出现问题,可以将radius进程停止,然后以参数-X的方式临时启动调试模式, 就可以在终端实时看日志

# pkill radius
# radiusd -X

6、测试radius

连接mysql命令行mysql -p radiusdb,使用sql添加一条测试记录:
这条记录是使用手机、电脑等终端登录路由器的账号和密码

MariaDB [radiusdb]> INSERT INTO radcheck (id, username, attribute, op, value) VALUES (1,'testuser','Cleartext-Password',':=','mypass');

使用radtest命令测试:radtest [用户名] [密码] [radius服务器host/ip] 0 [对客户端设置的共享秘钥],例如

# radtest testuser mypass localhost 0 testing123

认证成功的输出如下

Sending Access-Request Id 143 from 0.0.0.0:51053 to 127.0.0.1:1812
User-Name = 'testuser'
User-Password = 'mypass'
NAS-IP-Address = 127.0.0.1
NAS-Port = 0
Message-Authenticator = 0x00
Received Access-Accept Id 143 from 127.0.0.1:1812 to 127.0.0.1:51053 length 26
Acct-Interim-Interval = 60

删除用户的指令:

MariaDB [radiusdb]> delete from radcheck where username = 'testuser';

7、防火墙配置radius相关规则

7.1配置防火墙,打开radius服务端口
如果已经打开firewalld的话,可以跳过该步骤, 若仅作为测试使用,可以关闭防火墙

systemctl enable firewalld 启用防火墙
systemctl start firewalld  打开防火墙
systemctl status firewalld  查看防火墙状态

7.2添加radius服务

cat /usr/lib/firewalld/services/radius.xml
firewall-cmd --add-service=radius --permanent
firewall-cmd --reload
firewall-cmd --list-services

8、路由器配置

Centos 7 freeradius 搭建企业wifi认证服务相关推荐

  1. 如何在CentOS 7系统搭建企业常用的远程yum仓库,详细教学!

    简介: Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器.基于RPM包管理,能够从指定的服务器 ...

  2. (转)搭建企业内部yum仓库(centos6+centos7+epel源)

    搭建企业内部yum仓库(centos6+centos7+epel源) 原文:https://www.cnblogs.com/nulige/p/6081192.html https://www.linu ...

  3. linux搭建虚拟化平台报告,CentOS 7中搭建KVM虚拟化平台的方法步骤

    什么是虚拟化 虚拟化就是把硬件资源从物理方式转变为逻辑方式,打破原有物理结构,使用户可以灵活管理这些资源,并且允许1台物理机上同时运行多个操作系统,以实现资源利用率最大化和灵活管理的一项技术. 虚拟化 ...

  4. 企业wifi统一认证怎样呀

    什么是无线wifi认证系统:是搭建无线热点认证系统的解决方案之一,他比nocat更适合互联网营销思路.目前支持openwrt系统,他实现了路由器和认证服 务器的数据交互,在路由器方是用C语言代码,通过 ...

  5. 渗透测试之地基服务篇:无线攻防之Kali自搭建钓鱼Wifi

    简介 渗透测试-地基篇 该篇章目的是重新牢固地基,加强每日训练操作的笔记,在记录地基笔记中会有很多跳跃性思维的操作和方式方法,望大家能共同加油学到东西. 请注意 : 本文仅用于技术讨论与研究,对于所有 ...

  6. 手把手搭建企业IT实战环境第三季:快速搭建SCCM1902服务器

    手把手搭建企业IT实战环境第三季:快速搭建SCCM1902服务器 ©Lander Zhang 专注外企按需IT基础架构运维服务,IT Helpdesk 实战培训践行者 博客:https://blog. ...

  7. 【转载】用开源软件搭建企业内部协作平台, Kill QQ MSN

    作为公司的一分子, 您可能忧心忡忡于通过 MSN, QQ 流入的各种名目繁多的病毒, 木马, 例如熊猫烧香, 以及通过 MSN 传播的导致公司网络瘫痪的蠕虫病毒. 换句话说, 我们需要企业内部协作平台 ...

  8. centos 6.5 搭建lnmp环境

    centos 6.5 搭建lnmp环境 建议安装顺序: mysql------->>编译php---->>编译nginx 最麻烦:编译php出各种错. 最简单:mysql 软件 ...

  9. CentOS 7下搭建LAMP并把MySQL单独分离

    CentOS 7下搭建LAMP并把MySQL单独分离 原文:http://www.linuxidc.com/Linux/2017-05/144037.htm 环境: 系统:CentOS-7-x86_6 ...

最新文章

  1. soap php 分开类,将请求处理到同一PHP SOAP服务器中的多个类
  2. ubuntu下用apt-get安装软件时网速太慢的解决办法
  3. Spark SQL来读取现有Hive中的数据
  4. .NET Core 如何禁止.resx文件自动生成Designer.cs
  5. css布局:块级元素的居中
  6. 5分钟入门Lindorm SearchIndex
  7. 《大数据》再获新荣誉——“综合性人文社会科学”学科最受欢迎期刊
  8. python中的异或操作_Python中的异或和位操作的反转
  9. 关于git push报403的问题
  10. 半导体行业半双工(HDX)低频工业RFID读写器|读卡器CK-S640-AP60E之MODBUS TCP 协议说明
  11. Linux离线安装rzsz
  12. MySQL集群Cluster
  13. Nutch 深入浅出
  14. 【测试表征】五分钟了解俄歇电子能谱仪(AES)
  15. 萤石开放平台 .net c# sdk
  16. java:布局方法(边界布局)
  17. 同步时序逻辑电路功能分析之同步五进制加法计数器
  18. 【Luogu】P8195 小智的疑惑
  19. 午夜分享女人的绝对隐私
  20. Android----------- Banner2 广告图片轮播ViewPager2实现

热门文章

  1. BZOJ 1050 旅行comf
  2. 19年深圳杯D题之爬取电视收视率排行榜
  3. 计算机结构体系-CISC与RISC
  4. ECCV2018论文RBNet:Receptive Field Block Net for Accurate and FastObject Detection
  5. JavaScript事件解析
  6. 穆大叔:18年生涯让我抬头挺胸 我是像士兵般离开
  7. SGU 111 Very simple problem 翻译 题解
  8. PHP自学教程之PHP语法基础
  9. Pumpkin Raising Walk Through
  10. 表达式运算(包含大整数加减乘)