个人工具

神州数码802.1x、DCBA协议认证方案

来自Ubuntu中文

Pentie讨论 | 贡献2008年7月5日 (六) 00:26的版本 (新页面: = '''前言''' = 神舟数码的认证主要有两种,一是私有化的802.1x协议,基于链路层的认证,一是DCBA协议也是神州私有的,基于应用层的协议。...)

(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航, 搜索

前言

神舟数码的认证主要有两种,一是私有化的802.1x协议,基于链路层的认证,一是DCBA协议也是神州私有的,基于应用层的协议。国内常见高校采用其中一种或者联合使用。其中私有802.1x的认证官方没有提供Win平台以外的认证软件,但庆幸的是已经有人将其协议破解并写出了基于Java的认证软件(802.1x client for DigitalChina 软件作者:姚琦),至于DCBA的认证,官方提供了一个Console程序,虽不完美,但至少可以使用。本文将以Step by Step的方式介绍两种协议的认证方法和具体的步骤。


神州数码802.1x私有协议认证


准备工作:

Java软件运行需要jre,推荐使用jre6版本。考虑正在使用的电脑无法直接在Ubuntu上网,下面将介绍手动下载deb包安装Java运行环境的步骤:


下载文件:(在其他平台下载后再到Ubuntu使用)

http://mirrors.cn99.com/ubuntu/pool/main/j/java-common/java-common_0.30_all.deb
http://mirrors.cn99.com/ubuntu/pool/main/u/unixodbc/unixodbc_2.2.11-16build1_i386.deb
http://ubuntu.cn99.com/ubuntu/pool/multiverse/s/sun-java6/sun-java6-bin_6-06-0ubuntu1_i386.deb
http://ubuntu.cn99.com/ubuntu/pool/multiverse/s/sun-java6/sun-java6-demo_6-06-0ubuntu1_i386.deb
http://ubuntu.cn99.com/ubuntu/pool/multiverse/s/sun-java6/sun-java6-jdk_6-06-0ubuntu1_i386.deb
http://ubuntu.cn99.com/ubuntu/pool/multiverse/s/sun-java6/sun-java6-jre_6-06-0ubuntu1_all.deb
http://netresearch.ics.uci.edu/kfujii/jpcap/jpcap-0.7.deb


安装软件: 1.安装java-common、unixodbc(这两个是jre依赖的软件包,建议在新立得安装,DVD光盘自带,不用下载)

$sudo dpkg -i java-common_0.30_all.deb
$sudo dpkg -i unixodbc_2.2.11-16build1_i386.deb 

2.安装下载的Jre

$sudo dpkg -i sudo dpkg -i sun-java*
(安装过程中出现协议,按Tab移动光标)
3.安装libcap(这一步不确定,libpcap库Ubuntu 8.04 DVD版本默认安装了,但其他发行版最好自己用新立得检查一下) 

4.安装jpcap-0.7(认证软件的依赖软件包)

$sudo dpkg -i jpcap-0.7.deb 


下载认证软件:

802.1x_client_for_DigitalChina_0.6.1.tar.gz‎ (文件大小: 80 KB, MIME 类型: application/x-gzip)

这里提供的是简化版本,可到作者网站下载最新版:www.yaoqi.name

解压文件,例子中解压到~/DigiChina。
在桌面建立认证软件的起动器(相当于Win的快捷方式): 右击桌面-创建起动器 类型选择“应用程序”、名称填写DigiChina、命令中填入

gksu "java -jar /home/xxx/DigiChina/8021x_linux"

注意你的用户文件夹的名称,这里假设是xxx,确定即可。


第一次运行程序,注意Program菜单里面有个“中文界面”,点击了软件就变成中文了。按照提示在配置信息里面把东西填好,然后 保存配置信息,回到主界面,连接即可。


可以参照下图:

Sup2.png

本机IP可以在右上角托盘的连接处看:右键连接,“连接信息”(若显示IP地址0.0.0.0,可以先把“启动网络”的勾取消,再钩上,待一会连接DHCP成功了就应该能看到IP了,若依然看不到,就可能网络或者rp出问题了)

连接成功的界面:

Sup.jpg

在802.1x和DCBA双重认证的系统中,如果认证了802.1x后30秒内没有进行DCBA认证,则程序会提示掉线,此时需要退出程序重新运行、连接。




神州数码DCBA认证

DCBA的认证是基于应用层的,使用相对简单一些:

LinuxClient.tar.gz‎ (文件大小: 15 KB, MIME 类型: application/x-gzip)

下载附件到主文件夹,解压后有一个linuxClient文件夹。
运行终端cd进入linuxClient:

cd linuxClient
./upnet –h 192.168.28.5 –u username –p passowrd

(-h是认证主机的IP,-u是用户名,-p是密码,如果不清楚网络的认证主机,可以查看Win版本的客户端中的ini文件的信息)

之后程序会提示选择服务,按1,回车即可。屏幕提示如下:

PT@PT-desktop:~/linuxClient$ ./upnet -h 192.168.28.5 -u 0615200000 -p 0615200000(运行命令)
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html(这行提示不用理会)
select server:
1. servicename
please select(e-Exit):1(输入1选择服务器)
The attestation is successful, you can be then now internet access!(提示认证成功,可以上网了)

使用bash脚本保存账号密码的简便方法

1.把upnet程序复制到系统的程序文件夹:
cd ~
sudo cp ~/linuxClient/upnet /usr/bin

2.创建bash脚本文件:

echo "upnet -h 192.168.28.5 -u 0615200000 -p 0615200000" > up
(此命令相当于创建一个包含了引号内容的文件up,可以用gedit等软件编辑了然后保存,原理一样)
3.给脚本文件添加可执行属性

chmod +x up


4.运行:
./up 

Up.jpg
以后每次上网,打开终端敲./up就可以认证了!