使用神州登陆接入校园网
发布时间:2009-04-24 16:24:33来源:红联作者:06314219
[i=s] 本帖最后由 06314219 于 2009-4-25 18:22 编辑 [/i]
先说明:由于本人之前苦于在fedora上通过神州登陆认证,所以在此分享一下建议。第一次发帖,高手请勿见笑。
本文原发表于http://hi.baidu.com/06314219
近来学习fedora,但从安装成功的那一刻起发现,原来linux对网络的依赖性很强(个人这么认为)。但是由于本校使用的神州登陆只有windows版而没有linux版,所以想上网变得非常麻烦,幸好姚琦兄弟写了个linux版的登录软件,通过认证接入校园网有希望了。但是,本人对linux并不了解,所以下了linux版的神州登陆后得物也无所用,上网搜索了若干天的教程无果,差点想放弃时,研究Ubuntu下的教程有了启发,并实验成功。
心得:从这次的探索过程中发现,要想实现进步,有不懂得地方不可一味的上网求教程,否则,若没找到完整的教程,那就死翘翘了。我们要学习其中了原理,然后再结合相关方法,问题就能解决。本人研究了很多其他版本的教程所得就是,在linux下使用姚琦兄弟的基于Java的神州登陆,无非是搞定一下四部:
1、 安装Java运行环境jre
2、 安装libpcap,以支持jpcap
3、 安装jpcap,实现数据包抓取
4、 设置ip并运行神州登陆
搞定了以上四部,便可在如Ubuntu,Suse,Gentoo,fedora成功使用姚琦兄弟的基于Java的linux版神州登陆,这具有通用性。
###################################################
进入正题:本文以fedora10 为具体例子介绍:
本文所需软件迅雷下载地址:
jdk:http://cds-esd.sun.com/ESD7/JSCDL/jdk/6u13-b03/jdk-6u13-linux-i586-rpm.bin?AuthParam=1239771053_76804d28b34c2783dfda154eed0501ff&TicketId=B%2Fw3lhWBRF1JQBZLPV9ekg%2Fh&GroupName=CDS&FilePath=/ESD7/JSCDL/jdk/6u13-b03/jdk-6u13-linux-i586-rpm.bin&File=jdk-6u13-linux-i586-rpm.bin
libpcap:http://down1.chinaunix.net/distfiles/libpcap-0.9.4.tar.gz
jpcap:http://netresearch.ics.uci.edu/kfujii/jpcap/jpcap-0.7-1.i386.rpm
神州登陆:http://www.yaoqi.name/source/802.1x%20client%20for%20DigitalChina%20V0.7.5.rar
上述神州登陆基于Java,是用java语言开发并具有收发数据包功能,所以只要配置好了它的运行环境,它便能正常工作。
JRE是java程序的运行环境,由于核心Java API不能访问底层的网络数据,所以需要Jpcap是提供在Windows或UNIX系统上进行这种访问的Java API。但是,Jpcap不是一种纯粹的Java解决方案;它依赖本地库的使用。在Windows 或 UNIX上,必须有必要的第三方库,分别是WinPcap或libpcap。
实际操作包括:
1、JRE (Java运行环境,当然JDK也行,Java开发必备)
2、libpcap (for linux。unix/linux平台下的网络数据包捕获函数包)
3、Jpcap (JPCAP调用libpcap,而给JAVA语言提供一个公共的接口API)
4、配置程序
一、安装JRE
其实使用Fedora-10-i386-DVD安装时会默认安装jdk,可在终端下输入java -version查询。若已安装,下面123步即可跳过。
下载时选择rpm.bin结尾的JRE(或jdk)安装包,在终端进入到其所在文件夹
1、执行以下命令(介绍我的jdk为jdk1.6.0_13-linux-i586-rpm.bin):
[root@LinuxServer rpm]# chmod 755 jdk1.6.0_13-linux-i586-rpm.bin
[root@LinuxServer rpm]# ./ jdk1.6.0_13-linux-i586-rpm.bin
2、这时会有一段Sun的协议,敲几次回车键,当询问是否同意的时候,输入yes并回车。
Do you agree to the above license terms? [yes or no]yes
Unpacking...
Checksumming...
0
0
Extracting...
UnZipSFX 5.40 of 28 November 1998, by Info-ZIP (Zip-Bugs@lists.wku.edu).
inflating: j2sdk-1_4_2_11-linux-i586.rpm
Done.
3、程序会自动生成一个j2sdk-1_4_2_11-linux-i586.rpm文件,这是主程序包,下面来安装。
[root@LinuxServer rpm]#rpm -ivh j2sdk-1_4_2_11-linux-i586.rpm
Preparing... ########################################### [100%]
1:j2sdk ########################################### [100%]
4、设置Java环境变量
这里通过更改/etc/profile来实现,不过不推荐这么做,因为这样的设置将对所以用户的shell都生效,对系统安全会产生影响(其它修改方法可从网上搜索,大把)。
在终端输入vi /etc/profile,就在这个文件的最后加上:
export JAVA_HOME=/usr/java/jdk1.6.0_13
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
注意:
a. jdk1.6.0_13 为Java安装目录,进入/usr/java/后可见,注意按实际路径名修改。一般后两行可照抄。
b. linux下用冒号“:”来分隔路径
c. $PATH / $CLASSPATH / $JAVA_HOME 是用来引用原来的环境变量的值
在设置环境变量时特别要注意不能把原来的值给覆盖掉了,这是一种常见的错误。
d. CLASSPATH中当前目录“.”不能丢,把当前目录丢掉也是常见的错误。
e. export是把这三个变量导出为全局变量。
f. 大小写必须严格区分。
二、安装libpcap
将libpcap-0.9.5.tar.gz复制到/usr/目录下,解压,更改文件名为libpcap,然后进入终端依次输入以下命令:
#cd /usr/libpcap/
#./configure
#make
#make install
三、安装jpcap
在终端下输入
rpm -ivh jpcap-0.7-1.i386.rpm
若jdk没安装正确,或Java环境变量没配置好,此处会出错。
四、配置ip
进入network manager填写静态的ip地址、dns、等信息。
Network Connections 在 Wried 标签下选 System eth0 后点编辑。在弹出的Editing System eth0窗口中设置IPv4 Settings。
上述方法配置的ip地址会自己改变,可按如下方法修改:
在终端执行如下命令:
# cd /etc/sysconfig/network-scripts/
# vi ifcfg-eth0
修改配置文件如下:
# Marvell Technology Group Ltd. 88E8001 Gigabit Ethernet Controller
DEVICE=eth0
HWADDR=00:16:e6:db:c2:96
ONBOOT=yes
BOOTPROTO=static //这个应该是“static”,而不是“dhcp”或“none”;
USERCTL=yes
PEERDNS=yes
IPV6INIT=no
NM_CONTROLLED=yes//这个应该是“yes”,如不修改,链接仍是disconnected;
TYPE=Ethernet
NETMASK=***.***.***.***
IPADDR=***.***.***.***
DNS1=***.***.***.***
DNS2=***.***.***.***
GATEWAY=***.***.***.***
保存退出后重启网络,命令如下
# service network restart
五、上网
在终端下:
1、给认证文件赋予可执行属性
chmod +x 8201x_linux
2、把软件安装到系统程序目录
cp 8201x_linux /usr/local/bin (实际是将8201x_linux复制cp到系统用户目录)
3、尝试运行认证软件
8201x_linux + javahome/usr/lib/jvm/j2sdk-1_4_2_11/jre (需要boot权限)
(注意后面的javahome要填写自己的jre路径,不同于前面的jdk路径)
此时,就能打开认证程序,填写好用户名,密码,ip等信息后就能通过认证上网了。
一些问题:
1. Java环境变量是必须正确配置的,这要在jpcap安装之前。
2. 本人测试过,在桌面新建启动器指向8201x_linux + javahome/usr/java/jdk1.6.0_13也能运行认证程序。但是,此时认证程序会找不到网络设备,也就上不了网。问题尚未解决,只能使用终端输入命令后启动。
3. 认证成功后,终端和认证程序都不能关闭。而且认证程序必须用窗口的最小化按钮最小化,程序本身的最小化会使程序窗口假死。
声明:本文由网上一些材料结合本人实际情况编写。感谢网上其它高人的帮助。
欢迎批评指正。
文章评论
共有 3 条评论
06314219 于 2009-04-24 23:28:11发表:
3# shmily-xu
当时是花了很多时间,没办法,本人新手,希望大家指教指教。
shmily-xu 于 2009-04-24 20:03:27发表:
楼主厉害,肯定下了不少功夫,鼓励鼓励!!
successor 于 2009-04-24 16:29:53发表:
校园网上网很不容易