天天看点

linux h3c 802.1客户端,OH3C 的安装及使用 H3C 802.1x Client for OpenWrt

OH3C是基于Openwrt路由器固件平台的H3C 802.1x兼容客户端,基于YaH3C开发。

目前已经实现的功能有:H3C 802.1x认证

多用户管理

mac绑定设置及自动修改mac

前提

首先要会用ssh登录路由器,但是如果是首次将路由器刷成openwrt或者复位过设置,那么路由器是没有密码,也不会允许ssh登录的,解决方法是使用telnet登录或者web登录设置密码。在windows下面telnet和ssh登录可以使用Putty。

linux h3c 802.1客户端,OH3C 的安装及使用 H3C 802.1x Client for OpenWrt
linux h3c 802.1客户端,OH3C 的安装及使用 H3C 802.1x Client for OpenWrt

你还可以在Saved Sessions下面填上一个名称,然后点击保存,以后直接在下面点击这个名称,再点Load、Open就可以登录了。 需要注意的是登录ssh是需要输入你设置的密码,但是密码不会显示,对,连星号都不会显示,只管输入就是了。

linux h3c 802.1客户端,OH3C 的安装及使用 H3C 802.1x Client for OpenWrt

依赖python-mini

或者使用python-mini-oh3c代替,python-mini-oh3c在本项目下载页面下载。 下面是快速下载链接:

python-mini-oh3c_2.6.4-4_ar71xx.ipk

python-mini-oh3c_2.6.4-4_brcm63xx.ipk

python-mini-oh3c_2.7.3-1_ar71xx.ipk

一般的openwrt固件不包含python的支持,所以你可以自行编译一个带python-mini的固件,或者直接在路由器里面利用包管理软件安装python-mini(路由器须联网):opkg update

opkg install python-mini

如果无法联网,可以下载python-mini或者python-mini-oh3c,上传到路由器的/tmp目录,建议windows用户使用Winscp上传文件!再ssh登录路由器安装:opkg install /tmp/python-mini*.ipk

安装时如果提示依赖zlib而无法安装,请下载zlib上传到路由器/tmp目录。 先安装zlib,再安装python-mini或python-mini-oh3c:opkg install /tmp/zlib*.ipk

opkg install /tmp/python-mini*.ipk

安装OH3C

OH3C目前有两个版本,一个web界面控制版,需luci支持:luci-app-oh3c,还有一个命令行版,没有web界面,两个版本不能共存,只能任选其一。

如果你使用的是trunk版的openwrt,建议使用luci-app-oh3c:

luci-app-oh3c_2013-2-6_all.ipk

带Web界面的版本可以使用命令传递参数使用,用法是:python /usr/oh3c/oh3c.py

如果不绑定mac,mac一项可以使用default,下面是自启脚本,只适用于带web界面的版本:#!/bin/sh /etc/rc.common

# Copyright (C) 2012 OpenWrt.org

# Copyright (C) 2013 [email protected]

START=90

current=`uci get [email protected][0].current`

ifname=`uci get [email protected][0].ifname`

for i in `seq 0 10`;do

username=`uci get [email protected][$i].username`;

if [ $username = $current ];then

password=`uci get [email protected][$i].password`

macaddr=`uci get [email protected][$i].macaddr`

break

fi;

done

start() {

python /usr/oh3c/oh3c.py $current $password $ifname $macaddr >> /tmp/log/oh3c

}

stop() {

pid=`ps | grep /usr/oh3c/oh3c.py | grep -v grep | awk '{printf $1}'`

if [ -n "$pid" ];then

kill $pid

fi

}

restart() {

stop

start

}

将脚本保存为/etc/init.d/oh3c,运行/etc/init.d/oh3c enable启用自启动。

dreambox由于暂时有兼容性问题,所以不能使用带luci界面支持的,请下载下面命令行版本包:

oh3c_2013-2-6_all.ipk

在Linux下使用命令行上传文件想来对于Linux用户不是难事,就略过了。

使用OH3C

安装luci-app-oh3c的童鞋,使用浏览器从web端登录路由器,OH3C控制入口在Network[网络]——OH3C。 另外建议使用主题bootstrap:opkg update

opkg install luci-theme-bootstrap

点击Add[添加]添加用户,设置好用户名、密码,如果有需要,切换到Advanced Settings[高级设置]标签设置连网设备及mac。 然后点击Save[保存],要注意的是,新添加的用户要点两次Save[保存]才能在下面的Current user中选择。 点击Save&Appy[保存&应用]连网。 目前无法显示连网状态,如果再次点击Save&Appy[保存&应用]会断网。

linux h3c 802.1客户端,OH3C 的安装及使用 H3C 802.1x Client for OpenWrt

要切换用户,只需要在Current user中选择相应的用户,依次点击Save[保存]和Save&Appy[保存&应用]即可。

linux h3c 802.1客户端,OH3C 的安装及使用 H3C 802.1x Client for OpenWrt

需要注意的是,如果你使用的mac绑定功能,这时会修改路由器wan口的mac地址,所以相应时间会久一些,还有极少数情况连接失败,这时请再次点击Save&Appy[保存&应用]。 web版的OH3C连接时不会有屏幕输出信息,但是所有输出信息都保存在/tmp/log/oh3c中,重启路由器后消失,如果使用中遇到问题,可以将此文件中的内容贴出来。

使用命令行版本的童鞋,先使用ssh登录路由器,输入命令:oh3c

然后按提示操作即可。

从V0.2开始,OH3C加入了mac设置项,以方便mac绑定的情况,如果你不需要设置mac,命令行版本请在设置帐号要求输入mac时直接回车,web版请保持默认的default,这样该帐号联网时就不会更改mac,而保持之前的mac设置。

另外,如果你的路由器仅有4M flash,建议自己编译固件,你可以在编译openwrt时去掉和PPP和PPPOE相关的包,这样固件体积会缩小很多。