最近需要搭个802.1x-EAP认证 WIFI环境,就研究了下Openwrt,
是参考一下博文搭建:
整个流程其实不难,但是遇到了几个问题记录一下:
1,找个ROM大一点的路由器,烧Openwrt的固件,ROM大于8Mb为好,因为要装插件。
固件使用的是: openwrt-ramips-mt7620-YK-L1-squashfs-sysupgrade.bin
2,在Openwrt里面修改 软件源,因为我使用的是优酷路由宝L1,所以配置软件源为:
http://archive.openwrt.org/chaos_calmer/15.05/ramips/mt7620/packages/
3,先卸载预装的wpad-mini,再装wpad ,因为只有wpad 支持EAP加密认证,
命令:
opkg update
opkg remove wpad-mini
opkg install wpad
4,安装好wpad之后,可以再Luci web界面里面看见 无线安全里面有 "WPA-EAP" "WPA2-EAP"
5,接下来就是搭建radius服务器,本来想在路由器里面搭的,因为看见软件包里面有个 freeradius3,但是使用 opkg install freeradius3 之后 发现还要安装很多 mods的包,最后运行 radius -X 还是 报错了,果断放弃,
决定使用 ubuntu(虚拟机)搭建,网络设置选择 桥接,这样和 路由器是一个网段的,ip是 192.169.1.154,路由器ip 192.169.1.1
6,在ubuntu里面使用
sudo apt-get install freeradius
7,安装好之后,需要按参考博文里面, 修改 /etc/freeradius/clients.conf /etc/freeradius/users
clients.conf里面添加:
client 192.169.1.1 {
secret = testing123
shortname = openwrttest
}
192.169.1.1 为路由器IP
testing123 为Radius认证密钥
shortname 随便 无影响
users 里面记录的是接入网络的用户信息
末尾添加:
123 Cleartext-Password:="123"
123 为用户名
"123" 为密码
8,配置好之后 输入命令启动radius服务
freeradius -X 并能输出结果
如果遇到一些错误:
Failed binding to authentication address * port 1812: Address already in use
/etc/freeradius/radiusd.conf[240]: Error binding to port for 0.0.0.0 port 1812
是说明 radius 服务已经开启,可以 输入 lsof -i:1812 查看占用 进程,如果看见就是freeradius 占用的,
打印如下:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
freeradiu 9633 freerad 7u IPv4 42707 0t0 UDP *:radius-acct
可以使用 "sudo service freeradius stop" 或"/etc/init.d/freeradius stop"停止后,再进行 freeradius -X 。
9,radius服务起来之后,就可以再 openwrt里面 配置wifi 参数了, 主要就是 :
10, 在pda上面可以看见 openwrt 的wifi, 进去 配置 :身份 密码 静态IP 网关