Print

Centos 6.4+freeradius实现简易802.1X认证环境

2017-09-21 发表

准备环境
1、centos 6.4 最小安装。
2、centos 已与外网调通,可以通过yum进行安装配置。
3、FAT AP或AC与centos三层网络可通。


操作步骤:
step1:
yum install freeradius
期间遇到Y/N选项 一直选Y
yum install freeradius-utils
期间遇到Y/N选项 一直选Y


step2:
执行radiusd -X
进入freeradius的调试模式。平时查看认证错误相关的日志也可以通过该模式进行log分析。
另开一个窗口或者另开一个ssh登录进程。执行
radtest steve test 127.0.0.1 0 testing123           (此步骤很重要)
此时正常情况会提示如下:
rad_recv: Access-Reject packet from host 127.0.0.1 port 1812, id=115, length=20     (该提示能证明radius服务已经开启)

step3:
centos 6.4环境下 安装完成之后的配置目录在 /etc/raddb/文件夹下
配置本地用户帐号:
 vi /etc/raddb/users     (编辑users文件,进入后按 i 进行编译)
在第一行输入test Cleartext-Password := "test"  (添加帐号为test密码为test的用户,其他用户只需要另起一行修改账户密码即可,修改完毕按esc键退出编译模式,输入:wq  保存)
1 Cleartext-Password := "1" 
2 Cleartext-Password := "2" 

添加radius client信息:
vi /etc/raddb/clients.conf     (编辑client.conf文件,进入后按 i 进行编译)
输入
client 172.20.50.253 {
    secret = h3cap
    shortname = Wireless-AP
}

client 172.20.94.241 {
    secret = h3cap
    shortname = Wireless-AP
}
client 172.20.94.180 {
    secret = h3cap
    shortname = Wireless-AP
}
其中client 172.20.50.253为AP的管理地址,可以写成网段模式代表该网段的AP,即172.20.50.0/24
其中secret = h3cap 代表ap当中与raidus server交互的密钥
其中shortname = Wireless-AP 代表作为配置的一个标记,仅用于方便记忆AP的作用,不起实际配置作用。
(修改完毕按esc键退出编译模式,输入:wq  保存)


step4:
关闭默认防火墙
/etc/init.d/iptables stop   
开启radius 服务
service radiusd start   或者 radiusd -X

在启动服务中关闭防火墙&开启radius服务;

chkconfig iptables off

chkconfig radiusd on



step5:
FAT AP或AC侧配置参考802.1X配合radius server典型配置

 

这样完成了简要的freeradius的1X认证基本配置,可以运行在虚拟机等轻量环境中,方便平时的测试或者问题对比排查。


终端认证方式:
以上述步骤的认证方式为主;
iPhone:在连入SSID时,输入帐号密码(服务器中配置的用户帐号和密码);完成之后 点击信任证书即可。
andriod:搜索到SSID,在连入SSID的时候 输入账号密码,即可完成认证。
windows电脑
以win7为例,其他系统大同小异;

 

每当需要连接不同的SSID名称时,都需要手动创建一个配置文件。

配置方法如下:

点击安全类型:选择WPA2-企业,加密类型选择AES

点击下一步,如下图所示

点击更改连接设置,如下图所示

选择网络身份验证方位为受保护的EAP(PEAP),点击安全标签:

去除勾选框“每次登录时记住此链接的凭据”,因为客户有可能修改密码,如果修改密码修改后,这里还是保存的以前的旧密码,这样连接无线网络就不能认证了。

点击高级设置按钮,选择指定身份验证模式为:用户或计算机身份验证

点击设置按钮,如下图所示

去除掉验证服务器证书 ,如下图所示

选择身份验证方法中的配置按钮,去除勾选框 如下图所示:

点击确定返回,创建完成。