Ubuntu 10.10下拨号上网 超强的Linux下8021x认证源码

学校使用的是8021x认证上网,在Linux下就悲剧了,没有类似Windows下的认证客户端。

下载地址在

打包下载在Linux公社FTP里

FTP地址:ftp://www.6688.cc/

用户名:

密码:

在2010年LinuxIDC.com\12月\Ubuntu 10.10下拨号上网 超强的Linux下8021x认证源码\

以下是学校某个大神写的源代码,先记下来以后研究/

#!/bin/bash

#电子科技大学清水河校区上网认证脚本#版本:1.01 Alaph#作者:LiLi#GPL Licence#2009年3月7日

#初始化默认文件路径和网络接口LAN_CONF=${HOME}/.lan.conf #默认的局域网配置文件路径INTERNET_CONF=${HOME}/.internet.conf #默认的外网配置文件路径NETWORK_INTERFACE=eth0 #默认的网络接口CONF=$LAN_CONF #脚本将要处理的配置文件,默认为局域网配置文件CONF_FLAG=0 #用0表示局域网配置文件,1表示因特网配置文件,2表示用户指定的配置文件LOG=${HOME}/.my-8021-net.log #简单的日志文件

#设定退出错误号OK=0 #正常退出SYNTAX_ERROR=1 #语法错误CANNOT_GET_IP=2 #无法获取IPNO_FILE=3 #找不到文件TEST_ERROR=4 #测试时的错误,在实际使用中不会遇到

#断开网络的函数logoff(){ wpa_cli logoff > /dev/null 2>&1 #下线 wpa_cli terminate > /dev/null 2>&1 #关闭进程 dhclient -r $NETWORK_INTERFACE > /dev/null 2>&1 #释放IP}

#帮助信息return_help(){ echo “这是LiLi写的清水河上网脚本” echo ” -h : 返回这个帮助信息” echo ” -i : 网卡接口,默认为eth0″ echo ” -l : 连接局域网,为默认方式” echo ” -w : 连接因特网” echo ” -c : 指定配置文件连网” echo ” -d : 断网” echo ” -L : 重新生成内网配置文件” echo ” -W : 重新生成外网配置文件” echo ” -s : 查询当前连接状态” echo ” -a : 查看通过此脚本上网的日志” echo ” -A : 清除日志文件” echo “以默认方式上内网可以不接任何选项参数”}

#初始化配置文件的函数,需要区分内网和外网的配置文件init_configure(){ echo “请输入你的用户名:” read USER_NAME echo “请输入密码:” read USER_PASSWD echo “正在初始化……” echo “ctrl_interface=/var/run/wpa_supplicant” > $1 echo “#ctrl_interface_group=wheel” >> $1 echo “ap_scan=0” >> $1 echo “network={” >> $1 echo ” key_mgmt=IEEE8021X” >> $1 echo ” eap=MD5″ >> $1 if [ $2 = 0 ] then echo ” identity=\”$USER_NAME@local\”” >> $1 else echo ” identity=\”$USER_NAME\”” >> $1 fi echo ” password=\”$USER_PASSWD\”” >> $1 echo ” eapol_flags=0″ >> $1 echo “}” >> $1 echo “初始化完成” chmod 000 $1 # 保证账号的安全}

show_state() #显示当前连接状态{ ps aux | grep wpa_supplicant | grep -v grep > /dev/null #有无认证进程 if [ $? = 0 ] then cIP=`ifconfig $NETWORK_INTERFACE | grep “inet ” | awk {‘print $2’} | awk -F: {‘print $2’}` echo “已向系统提交认证,$NETWORK_INTERFACE 的IP是$cIP ” else echo “未通过8021认证连接网络” fi}

while getopts “:hi:lwc:dLWsaA” Option #对选项的处理do case $Option in h ) return_help && exit $OK;; i ) NETWORK_INTERFACE=$OPTARG;; l ) CONF=$LAN_CONF && CONF_FLAG=0;; w ) CONF=$INTERNET_CONF && CONF_FLAG=1;; c ) CONF=$OPTARG && CONF_FLAG=2;; d ) logoff && echo “网络已断开” && exit $OK;; L ) init_configure $LAN_CONF 0 && exit $OK;; W ) init_configure $INTERNET_CONF 1 && exit $OK;; s ) show_state && exit $OK;; a ) cat $LOG && exit $OK;; A ) echo > $LOG && exit $OK;; esacdone

#是否已经提交wpa认证,如果是,将中断原有进程ps aux | grep wpa_supplicant | grep -v grep > /dev/nullif [ $? = 0 ]then logofffi

以管理员身份运行都行了,文件名保存为connet,先添加执行权限,然后管理员身份运行,sudo connet

具体参数源码里有,也可以sudo connet -h

Ubuntu加入域环境的无线网络的方法

,勇于接受自己的不完美,认清自己不足的地方,

Ubuntu 10.10下拨号上网 超强的Linux下8021x认证源码

相关文章:

你感兴趣的文章:

标签云: