“神州数码802.1x、DCBA协议认证方案”的版本间的差异
来自Ubuntu中文
(→武汉大学) |
(802.1x部分改成ZDClient的教程) |
||
第1行: | 第1行: | ||
− | 本文作者:PT | + | 本文作者:PT |
− | 授权许可:[http://www.creativecommons.cn/licenses/by-nc-sa/1.0/ 创作共享协议] | + | 授权许可:[http://www.creativecommons.cn/licenses/by-nc-sa/1.0/ 创作共享协议] |
− | 测试平台:Ubuntu 8.04、8. | + | 测试平台:Ubuntu 8.04、8.10、9.04 |
− | + | ||
− | + | ||
= '''前言''' = | = '''前言''' = | ||
− | + | 神舟数码的认证主要有两种: | |
− | + | #802.1x EAPOL协议,基于链路层的认证; | |
+ | #DCBA-BAS,基于应用层的认证协议。 | ||
− | + | 常见采用其中一种或者两种联合使用。 | |
− | + | 其中802.1x的认证官方没有提供Win平台以外的软件,但有第三方分析出来版本如scut_supplicant,以及本文介绍的[http://code.google.com/p/zdcclient/ ZDClient]; 至于BAS的认证,官方提供了一个Linux的Console程序upnet,也有基于其反汇编后写出的开源客户端[http://gitorious.org/aecium aecium]。 | |
− | + | 本文介绍两种协议的认证方法和具体的步骤,在其他Linux发行版下应该也通用。 | |
− | = | + | = ZDClient 使用教程 = |
− | + | == 下载解压 == | |
− | + | 从[http://code.google.com/p/zdcclient/ ZDClient项目主页]下载最新的二进制包,下面以zdclient_0.4_i386_bin.tar.gz为例: | |
− | + | tar xvfz zdclient_0.4_i386_bin.tar.gz | |
+ | cd ZDClient_i386_bin | ||
− | + | <br> | |
− | == | + | == 启动脚本 == |
− | ''' | + | 现在目录里面有两个自动运行的脚本,dhcp_zdc_run.sh和st_zdc_run.sh,分别对应动态IP和静态IP模式使用……别慌,区别很简单:'''如果使用Win系统,在认证之前的提示“本地连接收限”的,就使用dhcp_zdc_run.sh''',其他的一律使用st_zdc_run.sh。 |
− | + | 好,下面假设大家已经选好了适用的'''xxx.sh''' | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | 现在假设大家用的是默认版本的ubuntu,系统里面有gedit编辑器: | |
− | + | gedit xxx.sh | |
− | + | 很明显大家看到一行 | |
− | + | ./zdclient -u username -p password -b | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | 当然,就是改上你的用户名和密码了,保存。 | |
− | + | == 运行认证 == | |
− | + | 回到终端下面: | |
− | + | sudo ./xxx.sh | |
− | + | 恩,会出现一系列的提示,不过完了之后看到类似 | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | &&Info: Authorized Access to Network. | |
+ | &&Info: ZDClient Forked background with PID: [12345] | ||
− | + | 如果是DHCP模式的话还有几行获取新IP的过程…… | |
− | + | '''~~理论上~~现在你就能上网了!''' | |
− | + | 以后每次都进来这个目录,重复'''运行认证'''这个步骤,就可以上网了! | |
− | + | == 能不能简单点 == | |
− | + | 能!如果你按上面的步骤已经能用ZDClient上网了,那么以后“一键上网”也不是什么难事: | |
− | + | 首先,重新用gedit打开刚才的xxx.sh,把行首的“./”去掉,保存。 | |
− | + | sudo cp zdclient xxx.sh /usr/local/bin | |
− | + | 然后在桌面新建一个启动器,名称自定,命令里面输入 | |
+ | |||
+ | gksu xxx.sh | ||
− | + | 这样之后每次只需双击这个图标,或者把它拉到面板上面,单击,就出现一个密码窗口,输入密码就可以上网了! | |
<br> | <br> | ||
− | = | + | = DCBA-BAS 使用教程 = |
− | + | DCBA-BAS的认证是基于应用层的:[http://wiki.ubuntu.org.cn/images/3/37/LinuxClient.tar.gz LinuxClient.tar.gz LinuxClient.tar.gz]下载附件到主文件夹,解压后有一个linuxClient文件夹。 | |
− | + | 运行终端进入linuxClient: | |
− | + | ./upnet -h host -u username -p password | |
− | + | ||
− | |||
− | |||
(-h是认证主机的IP,-u是用户名,-p是密码,如果不清楚网络的认证主机,可以查看Win版本的客户端中的ini文件的信息) | (-h是认证主机的IP,-u是用户名,-p是密码,如果不清楚网络的认证主机,可以查看Win版本的客户端中的ini文件的信息) | ||
之后程序会提示选择服务,按1,回车即可。屏幕提示如下: | 之后程序会提示选择服务,按1,回车即可。屏幕提示如下: | ||
− | |||
− | + | $ ./upnet -h 192.168.28.5 -u user -p password | |
− | + | Warning: bad ps syntax, perhaps a bogus '-'? See [http://procps.sf.net/faq.html 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!(提示认证成功,可以上网了) | ||
− | + | <br> | |
− | + | ||
− | + | == 使用shell脚本保存账号密码 == | |
− | + | ||
− | + | ||
− | + | 1.复制程序到系统本地程序目录 | |
− | + | $sudo cp upnet downnet /usr/local/bin | |
− | + | 2.在用户目录下运行完整运行一次认证(生成attrfile.ini自动应答文件) | |
− | + | $cd | |
+ | $upnet -h 192.168.28.5 -u user -p password | ||
+ | |||
− | + | '''若能成功上网,可运行downnet,再执行一次不带-h参数的upnet,应该能正常免应答认证。''' 3.创建认证脚本 | |
− | + | ||
− | + | ||
− | + | $sudo gedit /usr/local/bin/authupnet | |
− | + | 输入如下内容 | |
− | + | #!/bin/sh | |
+ | upnet -u username -p password | ||
− | + | 4.保存后给该文件赋予可执行权限 | |
+ | |||
+ | $sudo chmod +x /usr/local/bin/authupnet | ||
+ | |||
+ | 5.在终端里面直接执行authupnet,就可以上网了! | ||
+ | |||
+ | $authupnet | ||
+ | |||
+ | |||
+ | 或者然后为authupnet建立一个桌面启动器,以后双击即可。 | ||
=== 注意事项 === | === 注意事项 === | ||
− | + | ||
#至少在终端中命令方式运行一次upnet成功上网后,再配置脚本(第一次成功认证后程序会在当前目录下生成自动应答文件attrfile.ini)。 | #至少在终端中命令方式运行一次upnet成功上网后,再配置脚本(第一次成功认证后程序会在当前目录下生成自动应答文件attrfile.ini)。 | ||
#常见程序给出This procedure has Exsit!的错误提示,但是又不能上网,是因为之前错误运行了upnet,而进程又没有正常退出的缘故。使用killall upnet命令终止程序,重新执行upnet。若情况依旧,试试执行downnet或者重启系统(重启x upnet不会终止)。 | #常见程序给出This procedure has Exsit!的错误提示,但是又不能上网,是因为之前错误运行了upnet,而进程又没有正常退出的缘故。使用killall upnet命令终止程序,重新执行upnet。若情况依旧,试试执行downnet或者重启系统(重启x upnet不会终止)。 | ||
#upnet程序不会响应用户名密码是否正确,即使给与错误的帐号,其提示和正常认证一样。如发现不能上网,检查账户是否错误。 | #upnet程序不会响应用户名密码是否正确,即使给与错误的帐号,其提示和正常认证一样。如发现不能上网,检查账户是否错误。 | ||
− | |||
− | = | + | === 开源的aecium === |
− | + | [http://gitorious.org/aecium aecium]本来是针对“安腾通信”公司的认证系统的客户端,不过和神州数码的BAS兼容。上面所说的upnet的缺点是只能使用系统中的eth0设备,如果你的网卡是eth1或者其他,就别想用了,而aecium则支持使用不同的网卡设备。 aecium的用法和上述的upnet程序几乎完全一致。 | |
− | + | aecium的二进制版本可在这里下载 | |
− | + | <br> | |
− | + | ||
− | + | ||
− | + | = '''具体环境的认证过程细节''' = | |
− | + | ||
− | + | ||
− | + | ||
− | === | + | === 广州大学 大学城校区 === |
− | + | ||
− | + | 大学城校区使用的神州数码认证,具体到不同的宿舍,有不同的认证流程。(原Win下的认证都分成3个版本) | |
− | + | 其中B15宿舍楼使用的是802.1x和DCBA联合认证方法,故联网必须先按本文的方法先后验证。而其他宿舍,则只需使用DCBA-BAS验证。 | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | B1 ~B20使用的DCBA服务器 192.168.28.12 | |
+ | B22~B25、B15使用的DCBA服务器 192.168.28.4 | ||
− | + | 注意:服务器可能随时变动,请留意学校论坛网络版的相关帖子。 | |
− | + | === 武汉大学 === | |
+ | 推荐:武汉大学使用的是单802.1x的协议,使用DHCP模式,使用上文'''ZDClient使用教程'''的方法即可。 | ||
− | + | 或者使用以前姚琦的java版认证程序scut_supplicant 7.5版,在自定义版本号里面输入“3.5.04.1013fk”或者“3.5.04.1110fk”,即可认证。 |
2009年5月21日 (四) 19:14的版本
本文作者:PT
授权许可:创作共享协议
测试平台:Ubuntu 8.04、8.10、9.04
目录
前言
神舟数码的认证主要有两种:
#802.1x EAPOL协议,基于链路层的认证; #DCBA-BAS,基于应用层的认证协议。
常见采用其中一种或者两种联合使用。
其中802.1x的认证官方没有提供Win平台以外的软件,但有第三方分析出来版本如scut_supplicant,以及本文介绍的ZDClient; 至于BAS的认证,官方提供了一个Linux的Console程序upnet,也有基于其反汇编后写出的开源客户端aecium。
本文介绍两种协议的认证方法和具体的步骤,在其他Linux发行版下应该也通用。
ZDClient 使用教程
下载解压
从ZDClient项目主页下载最新的二进制包,下面以zdclient_0.4_i386_bin.tar.gz为例:
tar xvfz zdclient_0.4_i386_bin.tar.gz cd ZDClient_i386_bin
启动脚本
现在目录里面有两个自动运行的脚本,dhcp_zdc_run.sh和st_zdc_run.sh,分别对应动态IP和静态IP模式使用……别慌,区别很简单:如果使用Win系统,在认证之前的提示“本地连接收限”的,就使用dhcp_zdc_run.sh,其他的一律使用st_zdc_run.sh。
好,下面假设大家已经选好了适用的xxx.sh
现在假设大家用的是默认版本的ubuntu,系统里面有gedit编辑器:
gedit xxx.sh
很明显大家看到一行
./zdclient -u username -p password -b
当然,就是改上你的用户名和密码了,保存。
运行认证
回到终端下面:
sudo ./xxx.sh
恩,会出现一系列的提示,不过完了之后看到类似
&&Info: Authorized Access to Network. &&Info: ZDClient Forked background with PID: [12345]
如果是DHCP模式的话还有几行获取新IP的过程……
~~理论上~~现在你就能上网了!
以后每次都进来这个目录,重复运行认证这个步骤,就可以上网了!
能不能简单点
能!如果你按上面的步骤已经能用ZDClient上网了,那么以后“一键上网”也不是什么难事:
首先,重新用gedit打开刚才的xxx.sh,把行首的“./”去掉,保存。
sudo cp zdclient xxx.sh /usr/local/bin
然后在桌面新建一个启动器,名称自定,命令里面输入
gksu xxx.sh
这样之后每次只需双击这个图标,或者把它拉到面板上面,单击,就出现一个密码窗口,输入密码就可以上网了!
DCBA-BAS 使用教程
DCBA-BAS的认证是基于应用层的:LinuxClient.tar.gz LinuxClient.tar.gz下载附件到主文件夹,解压后有一个linuxClient文件夹。
运行终端进入linuxClient:
./upnet -h host -u username -p password
(-h是认证主机的IP,-u是用户名,-p是密码,如果不清楚网络的认证主机,可以查看Win版本的客户端中的ini文件的信息)
之后程序会提示选择服务,按1,回车即可。屏幕提示如下:
$ ./upnet -h 192.168.28.5 -u user -p password 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!(提示认证成功,可以上网了)
使用shell脚本保存账号密码
1.复制程序到系统本地程序目录
$sudo cp upnet downnet /usr/local/bin
2.在用户目录下运行完整运行一次认证(生成attrfile.ini自动应答文件)
$cd $upnet -h 192.168.28.5 -u user -p password
若能成功上网,可运行downnet,再执行一次不带-h参数的upnet,应该能正常免应答认证。 3.创建认证脚本
$sudo gedit /usr/local/bin/authupnet
输入如下内容
#!/bin/sh upnet -u username -p password
4.保存后给该文件赋予可执行权限
$sudo chmod +x /usr/local/bin/authupnet
5.在终端里面直接执行authupnet,就可以上网了!
$authupnet
或者然后为authupnet建立一个桌面启动器,以后双击即可。
注意事项
- 至少在终端中命令方式运行一次upnet成功上网后,再配置脚本(第一次成功认证后程序会在当前目录下生成自动应答文件attrfile.ini)。
- 常见程序给出This procedure has Exsit!的错误提示,但是又不能上网,是因为之前错误运行了upnet,而进程又没有正常退出的缘故。使用killall upnet命令终止程序,重新执行upnet。若情况依旧,试试执行downnet或者重启系统(重启x upnet不会终止)。
- upnet程序不会响应用户名密码是否正确,即使给与错误的帐号,其提示和正常认证一样。如发现不能上网,检查账户是否错误。
开源的aecium
aecium本来是针对“安腾通信”公司的认证系统的客户端,不过和神州数码的BAS兼容。上面所说的upnet的缺点是只能使用系统中的eth0设备,如果你的网卡是eth1或者其他,就别想用了,而aecium则支持使用不同的网卡设备。 aecium的用法和上述的upnet程序几乎完全一致。
aecium的二进制版本可在这里下载
具体环境的认证过程细节
广州大学 大学城校区
大学城校区使用的神州数码认证,具体到不同的宿舍,有不同的认证流程。(原Win下的认证都分成3个版本)
其中B15宿舍楼使用的是802.1x和DCBA联合认证方法,故联网必须先按本文的方法先后验证。而其他宿舍,则只需使用DCBA-BAS验证。
B1 ~B20使用的DCBA服务器 192.168.28.12 B22~B25、B15使用的DCBA服务器 192.168.28.4
注意:服务器可能随时变动,请留意学校论坛网络版的相关帖子。
武汉大学
推荐:武汉大学使用的是单802.1x的协议,使用DHCP模式,使用上文ZDClient使用教程的方法即可。
或者使用以前姚琦的java版认证程序scut_supplicant 7.5版,在自定义版本号里面输入“3.5.04.1013fk”或者“3.5.04.1110fk”,即可认证。