返回列表 发帖

Linux 的 802.1x 认证[转]

转自 http://net.sjtu.edu.cn/

  Linux支持的网卡肯定可以通过wep.net.sjtu 这个SSID使用无线网络。

    Linux 的802.1x客户端我们推荐open1x,这是一个开源(Open Source)的软件。目前稳定版本1.01,还可以通过CVS下载最新版。CVS版本的文档可能更新不够及时,部分设置与文档描述的稳定版有差异。

    建议配置ttls和peap的设置。

    商业化802.1x客户端我们测试过Meeting House的Aegis Linux Client 1.2.1版。

    Linux下的网卡驱动大都有一个动态WEP设置的问题,即使认证成功,在设置WEP密钥时会引起网卡Reset,这一般可以通过获得驱动程序的补丁来解决。经过我们测试,open1x程序至少可以支持迅驰1代、Cisco AIRO PCM352、Realtek TL-WN210 Ver:2.2、Linksys WPC11 ver.4等网卡。用户最好通过网络获取最新驱动程序。

    Cisco AIRO350的补丁 www.people.virginia.edu/~ghp5h/wirelesshowto/cisco350patches.html

    新的无线网卡很少带有Linux驱动,现在有软件可以帮助我们将Windows使用的NDIS标准驱动转为Linux所用,ndiswrapper是其中的一个开源软件,另外还有商业软件可供使用。经过测试ndiswrapper驱动可以支持多款网卡工作,部分驱动能成功配置支持802.1x。

    通过验证的ndiswrapper下能用的驱动有: TPLink主页TL-WN210驱动(可通用rtl8010芯片)。

相关中文文档

http://mercury.chem.pitt.edu/~sa ... 04/article361.shtml



外文文档

   1. NDIS wrapper project, http://ndiswrapper.sourceforge.net;
   2. IPW2100 project, http://ipw2100.sourceforge.net;
   3. Open1x project, http://open1x.sourceforge.net;
   4. Jean Tourrilhes, wireless tools, http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html.

[ 本帖最后由 wensuxin 于 2006-10-8 06:43 PM 编辑 ]
┣━━━━━━╋━━━━━━┫

linux下用802.1x客户端上网[转]

转自http://www.linuxeden.com

问题解决: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话,请先检查你的网络设置

[ 本帖最后由 wensuxin 于 2006-10-8 06:46 PM 编辑 ]
┣━━━━━━╋━━━━━━┫

TOP

Fedora Core 5下802.1X上网详细配置过程[转]

转自http://www.linuxfans.org

搬宿舍了,这边用的是华为的802.1X的东东。如果不能在LINUX里上网怎么行?搞了一个晚上,终于PASS了。呵呵,写下来,大家分享。
总觉得网上的教程不太详细,在这里力求写得详细些、傻瓜些~这里我只照顾FC5的用户,某天再扩展一下吧。

系统:LINUX FEDORA CORE 5

所需软件:
http://olpc.download.redhat.com/ ... 6-2.96-135.i386.rpm

http://forum.huawei-3com.com/thread-19936-1-1.html里面的H3C 8021XClient CH V220_0210-Linux.tar.rar

1.安装compat-libstdc++-296-2.96-135.i386.rpm。在X-WINDOWS里双击文件的图标就可以了。

2. 在X-WINDOWS里选择桌面->管理->网络,根据学校给的配置设定。我的是双击设备,在弹出的对话框里选择“静态设置的IP地址”,然后填好IP、子网掩码、网关,其他的不用改,然后点确定。再填好DNS选项卡,填上DNS。然后选择 文件->保存,再激活一下网卡。(不同的学校设置的方法可能会不同)

3.右键单击H3C 8021XClient CH V220_0210-Linux.tar.rar图标,选择“用归档管理器打开”,然后将其中的文件解压缩到某处,我们这里假定解压到“/online/”下

4.用 "cd /online/h3c802.1xClient"命令进入到"/online/h3c802.1xClient"文件夹下,使用"./pre.ps"命令安装客户端。

5.使用"./linuxlx -c"对客户端进行配置。
执行命令后会出现:
代码:

configure 802.1X network connection arguments
Current configuration is:

The way to initialize 802.1X authentication.......:multicast
Send all packets by multicast.....................:N
Refresh IP address after connecting...............:N
Save message and package to log...................:N
Continue to configure your network connection arguments?(Y/N)

我们学校的配置如下(其中有些参数是可以改的)


代码:

configure 802.1X network connection arguments
Current configuration is:

The way to initialize 802.1X authentication.......:multicast
Send all packets by multicast.....................:N
Refresh IP address after connecting...............:N
Save message and package to log...................:N
Continue to configure your network connection arguments?(Y/N)
y
There are two ways to initialize 802.1X authentication:
                1. Trap by broadcast.
                2. Trap by multicast.
Please choose the way to initialize the 802.1X authentication :
2
Send all packets by multicast? (Y/N):
n
Refresh your IP address after connecting? (Y/N):
n
Save message and package to log?(Y/N):
n
Configuration has finished, do you want to save it?(Y/N)
y
Save configuration sucessfully!





6..执行"./linux1x -u 用户名/密码 -n eth0 -d"

屏幕显示:
代码:
start 802.1X authentication
device check
server check
pass authentication




呵呵,成功了!

7.打开FIREFOX,上网啦~

还有其他的一些关于客户端的东东在/online/h3c802.1xClient/Readme.htm里。
┣━━━━━━╋━━━━━━┫

TOP

实达802.1x认证的linux官方版本[转]

转自http://www.stcore.com/

  很多学校都用实达-锐捷的802.1认证系统,现在(其实是上个月)锐捷出了linux客户端认证程序了,叫xrgsu.
  
  我下载了一个,可以用.不过需要libpcap.so,这个可有点麻烦,因为网上下载的多数编译出LIBPCAP.A,我搞了好久,最后看到一篇说明,转贴如下:
  -----------------------------------------------------
  2、编译安装libpcap库
  
  假设libpcap-0.7.2.tar.gz是放置在/home/andy目录下的。步骤如下:
  [root@t113 /]# cd /home/andy
  [root@t113 andy]#gunzip libpcap-0.7.2.tar.gz
  [root@t113 andy]# tar -xvf libpcap-0.7.2.tar
  [root@t113 andy]# cd libpcap-0.7.2
  [root@t113 libpcap-0.7.2]#
  
  注意了(大声的说~~),在这儿编译时是编译成静态函数库,但是等会儿你编译DNSTOP时却是需要共享函数库(动态函数库)。所以偶们要修改一下libpcap-0.7.2目录下的Makefile.in文件,打开文件找到如下语句:
  [code:1:248ab9a8fe]all: libpcap.a(第96行)
  
  libpcap.a: $(OBJ)
  @rm -f $@
  ar rc $@ $(OBJ)
  $(RANLIB) $@[/code:1:248ab9a8fe]
  修改为:
  [code:1:248ab9a8fe]all: libpcap.so
  
  libpcap.so: $(OBJ)
  @rm -f $@
  # ar rc $@ $(OBJ)
  gcc $(OBJ) -shared -o libpcap.so
  # $(RANLIB) $@[/code:1:248ab9a8fe]
  
  再找到如下语句:
  [code:1:248ab9a8fe]install:(第139行)
  [ -d $(DESTDIR)$(libdir) ] || (mkdir -p $(DESTDIR)$(libdir); chmod 755 $(DESTDIR)$(libdir))
  $(INSTALL_DATA) libpcap.a $(DESTDIR)$(libdir)/libpcap.a
  $(RANLIB) $(DESTDIR)$(libdir)/libpcap.a[/code:1:248ab9a8fe]
  
  修改为:
  [code:1:248ab9a8fe]install:
  # [ -d $(DESTDIR)$(libdir) ] || # (mkdir -p $(DESTDIR)$(libdir); chmod 755 $(DESTDIR)$(libdir))
  # $(INSTALL_DATA) libpcap.a $(DESTDIR)$(libdir)/libpcap.a
  # $(RANLIB) $(DESTDIR)$(libdir)/libpcap.a
  cp libpcap.so /usr/lib/[/code:1:248ab9a8fe]
  
  搞定!开始编译:
  [root@t113 libpcap-0.7.2]# ./configure --prefix=/usr
  [root@t113 libpcap-0.7.2]# make
  [root@t113 libpcap-0.7.2]# make install
  
  到这儿,偶们可以松口气了。
  ------------------------------------------------
  xrgsu则是二进制程序,复制到/usr/bin下就可以用了.
  
  下载连接http://seal.blogchina.com/
  
  下载后改后缀为.tar.gz
  
  500 多k,传不上来,单传一个文件,解压后替换原文件再编译,当然,如果你下载的本身就是可以编译出libpcap.so的,那就不用这么麻烦了.
  
  原文件可以很容易搜索到(libpcap-0.8.3),xrgsu在ftp://ftp.jnu.edu.cn/student
┣━━━━━━╋━━━━━━┫

TOP

我用的是hustauth,快一年了,挺好的。
┣━━━━━━╋━━━━━━┫

TOP

彻底解决 FreeBSD-6.0 下 802.1X 验证问题[转]

转自http://www.nixsky.com/

欢呼吧,热爱 FreeBSD 的人们!长久一来困扰我们的 802.1X 验证问题,今天终于得以彻底地解决。在 Linux 系统中这个问题已经被 Xsupplicant 完美地解决,但它对 *BSD 的支持始终未能完成,我们要不要继续对它心存幻想呢?我们已经不能再等了。wpa_supplicant 的出现为我们解决了这一个历史性难题。

一、准备性工作

1) 我们需要安装 FreeBSD-6.0 及其开发环境,此外还要安装 gmake 包。

gmake 在 FreeBSD-6.0 CD2 中,找到它 pkg_add 就行了。

2) 安装必要的库 libdnet libcap openssl。

1>安装 libdnet

-到 http://libdnet.sourceforge.net/ 下载 libdnet-1.10.tar.gz
-$tar xzvf libdnet-1.10.tar.gz
-$cd libdnet-1.10
-$./configure --prefix=/usr
-$make
-#make install (要超级用户权限执行)

2>安装 libpcap

-到 http://www.tcpdump.org/release/ 下载 libpcap-0.9.4.tar.gz
-$tar xzvf libpcap-0.9.4.tar.gz
-$cd libpcap-0.9.4
-$./configure --prefix=/usr
-$make
-#make install (要超级用户权限执行)

3>安装 opensslopenssl-0.9.7g.tar.gz

-到 http://www.openssl.org/source/ 下载 openssl-0.9.7g.tar.gz
-$tar xzvf openssl-0.9.7g.tar.gz
-$cd openssl-0.9.7g
-$./config --prefix=/usr
-$make
-$make test
-#make install (要超级用户权限执行)

二、安装 wpa_supplicant

1)获取 wpa_supplicant 源码

-到 http://hostap.epitest.fi/releases 下载 wpa_supplicant-0.4.0.tar.gz
注:1、FreeBSD-6.0 自带 wpa_supplicant 的 0.3.9版,但此版本不支持 wired 方式。
注:2、0.4.0版以上的也可能可以用,但0.4.6版有问题,编译不能通过。

2)配置并安装

-$tar xzvf wpa_supplicant-0.4.0.tar.gz
-$cd wpa_supplicant-0.4.0
-编辑生成 .config (可参看 defconfig 文件。下面是我的 .config 可供参考)
-------我的.config 文件---------

CONFIG_DRIVER_BSD=y
CONFIG_DRIVER_WIRED=y
CONFIG_IEEE8021X_EAPOL=y
CONFIG_EAP_MD5=y
CONFIG_EAP_MSCHAPV2=y
CONFIG_EAP_TLS=y
CONFIG_EAP_PEAP=y
CONFIG_EAP_TTLS=y
CONFIG_EAP_GTC=y
CONFIG_EAP_OTP=y
CONFIG_EAP_LEAP=y
CONFIG_PKCS12=y
CONFIG_SMARTCARD=y
CONFIG_DNET_PCAP=y
CONFIG_CTRL_IFACE=y

---------------------------

-修改 Makefile 文件,将第274行的 LIBS += -ldl 用#注释掉,注意,这很重要。

注:1、在 libdl 中有操纵动态连接库的函数,但在 FreeBSD 中这些函数已包含在 libc 中,因此没有 libdl。

-$gmake (注意是 gmake!)
-#gmake install (要超级用户权限执行)

三、wpa_supplicant 的基本应用

这里仅仅介绍它的基本使用方法,要完全了解它的用法请参看其文档。

1>清除系统中旧版本的 wpa_supplicant 的干扰

-#rm /usr/sbin/wpa_supplicant
-#rm /usr/sbin/wpa_cli

2>建立 wpa_supplicant 的配置文件 /etc/wpa_supplicant.conf

注:1、可参照源代码目录中的 wpa_supplicant.conf 文件,根据具体情况进行配置(有些繁琐)。
注:2、由于我们校园网用的是 eap_md5 验证方式,故我的 /etc/wpa_supplicant.conf 如下:

---------------------------

ctrl_interface=/var/run/wpa_supplicant

ctrl_interface_group=wheel

ap_scan=0

network={

key_mgmt=IEEE8021X

eap=MD5

identity="用户名"

password="密码"

eapol_flags=0

}

----------------------------

3>运行 wpa_supplicant 进行身份验证

-#ifconfig rl0 down (这里的 rl0 是网卡设备,根据你的实际情况填写,下同。)
-#ifconfig rl0 up (这里的 rl0 是网卡设备,根据你的实际情况填写,下同。)
-#wpa_supplicant -B -c /etc/wpa_supplicant.conf -i rl0 -D wired >& /var/log/wpa.log
-#cat /var/log/wpa.log (若没出错则不会有内容。)

4>用 DHCP 方式申请 IP 地址 (我们校园网 IP 是动态分配的,估计很多学校都是这样。)

-#dhclient rl0 (这里的 rl0 是网卡设备,根据你的实际情况填写。)


四、wpa_supplicant 的用法的进一步讨论

1>可以将整个过程写成一个脚本

-编辑生成 startnet1x.sh 内容如下

-----------------------------

#!/bin/csh

ifconfig rl0 down
ifconfig rl0 up

echo "Start Wpa_supplicant ..."
wpa_supplicant -B -c /etc/wpa_supplicant.conf -i rl0 -D wired >& /var/log/wpa.log
sleep 3
echo "Done."

dhclient rl0

------------------------------

-#chmod 755 startnet1x.sh
-#./startnet1x.sh (测试用)
-#cp startnet1x.sh /usr/local/sbin (备用)

(往后直接运行 startnet1x.sh 就行了。)

2>开机自动运行
┣━━━━━━╋━━━━━━┫

TOP

上面的办法不知在Kylin上行不行得通。
┣━━━━━━╋━━━━━━┫

TOP

返回列表