问题解决:Mandrake10.0下用802.1x客户端上网
搞了两天,终于搞出来了,下面说详细点:我们学校是用的实达的认证
1.你得让网管把你们寝室改为使用标准组播地址发送认证,因为实达自己的认证并不是使用的标准IEEE 802.1x协议
2.下载相关软件:mdc-ssd或者是xsupplicant
3.软件安装于设置
1>mdc-ssd.注意:它不支持kernel-2.6,我只把网上流传最广的一份说明书帖上来
>
1.下载免费的mdc-ssd 802.1x认证客户端软件。我的版本是:343649-mdc-ssd-01.1.2-1.i386.rpm.gz
2.安装mdc-ssd。由于mdc-ssd使用了TLS认证,所以需要一些SSL的库文件。如果您安装的时候提示需要安装libssl或libcrypto等软件包,请使用命令:
\"rpm -Uvh --nodeps mdc-ssd-01.1.2-1.i386.rpm\"
安装。同时在/usr/lib目录里,建立文件链接:
cd /us/lib
ln -s libssl.so libssl.so.1
ln -s libcrypto.so libcrypto.so.1
3.配置mdc-ssd。
cd /etc/mdc-ssd
修改文件ifcfg,将id对应一栏的内容改成您的用户名。
cd /etc/mdc-ssd/eth0
修改chap-secrets文件,将系统自动添加的一个栏改成您的用户名和密码,中间的\"*\"不要动。
您也可以只修改ifcfg文件,将id后面的默认口令设置为您的密码就可以了,chap-secrets文件就不需要修改了。
注 意:对于没有安装1.x版本SSL的系统,只能使用MD5-Challenge认证方法,不能使用TLS认证方法。如果您的接入系统是LAN或者VDSL 接入,应该没有问题。目前中国大陆基本上都使用MD5-Challenge认证。如果您使用的WLAN接入,则有可能采用TLS认证。TLS认证的配置比 较复杂,需要从运营商获取安全证书。本文的配置只针对MD5-Challenge认证。
已经验证的系统:Mandrake 8.2
如果您的内核版本低于2.4,可能会有问题,但是我没有实验过,没有环境。
如果您是自己编译的内核,那么请您确认是否将网络配置中的\"raw packet\"编译,否则需要重新编译。
使用方法:
mdc-ssd分成两部分,一个守护进程和一个管理进程.
首先起动守护进程,只有守护进程起动了,并且成功地与接入网络队接成功了,管理进程才能使用.
您可以在/etc/rc.d/rc5.d目录下建立守护进程的起动文本,如果是从明令行起动需要作为守护进程起动:\"mdc-ssd &\"
mdc-ssc为管理进程,有start login logout help四条命令,输入help命令了解详细信息.
2>由于mdc-ssd不支持kernel-2.6,所以我没有使用它,现在详细介绍xsupplicant的安装和使用:
我找到两份xsupplicant软件,一个tarball包和一个rpm包,rpm在我的Mandrake 10.0上成功安装.如果你用的别的系统,你可以试试,不行的话就装tarball包吧.
安装后就能直接运行了,用root输入:xsupplicant -i eth0 -u usrname -p password
这里的usrname和password是你的上网帐户和密码
成功认证的话会提示:
[root@LinuxME hiko]# xsupplicant -i eth0 -u XXXX -p XXXX
Username override! Using username XXXX
Password passed in from command line! (This isn\'t very secure!)
Setup on device eth0 complete
Specific Wireless Authenticator MAC not found, using default destination
Could not determine network name, assuming there is none
Using default network profile. (Network Name = default)
Done with init.
Connection Established, authenticating...
get_password returned a value!
Authentication Succeeded
注意不要关闭这个命令行窗口
然后就可以上网了
或者按如下使每次开机自动认证:
以root用户修改 /etc/rc.d/rc.local,在里面添加一句:
xsupplicant -i eth0 -u usrname -p password &
几点问题:
根据我的经验和猜测,开机自检eth0是通过连接网关来做的,所以开机自检的eth0项如果是failed话,请先检查你的网络设置