Notice

As of 3/1/07 the UIC certificate has changed and the tarbal for the the quick hack has been updated. For any other situations - you are running wpa at boot, etc.- you can find the new certificate right here: http://lug.cs.uic.edu/downloads/ThawtePremiumServerCA.cer

Once you download the file to your computer move it to your wpa folder and change the name to thawte_server.pem. You can also update the certificate in your wpa folder from the “Pre-packaged solution” run the following:

mv ThawtePremiumServerCA.cer ~/wpa/thawte_server.pem

That command assumes that you unpacked the original hack in your home folder (~) and named it wpa.

Thanks!

Notes on drivers for WPA_Supplicant

Some packaged versions of wpa_supplicant for different distros do not include support for all wireless drivers (i.e., wpa_supplicant in pacman repos do not include support for broadcom-wl). The ”-D wext” option does not work for some drivers (i.e., broadcom-wl). In this case, it will be necessary to find an alternate binary with necessary driver support compiled, or to change to a driver that is supported by your installation of wpa_supplicant (i.e., ndiswrapper).

Gentoo

emerge -v ipw2100 emerge -v wpa_supplicant

Create this file with this content (Same as Joe Love config). wpa_supplicant.conf: ctrl_interface=/var/run/wpa_supplicant eapol_version=2 ap_scan=1 network={

      ssid="UIC-Wireless"
      scan_ssid=1
      mode=0
      key_mgmt=IEEE8021X
      eap=TTLS
      identity="YOURNETID"
      password="YOURPASSWORD"
      anonymous_identity="anonymous"
      ca_cert="/etc/cert/thawte_server.pem"
      phase2="auth=PAP"

}

Get the certificate here: http://lug.cs.uic.edu/downloads/ThawtePremiumServerCA.cer

Edit your /etc/conf.d/net and add the following lines:

modules=(“wpa_supplicant”) wpa_supplicant_wlan0=”-Dwext -c /etc/wpa_supplicant/wpa_supplicant.conf ” Assuming wext is the right driver for your card, and wlan0 is your wireless card.

/etc/init.d/net.wlan0 start; iwconfig wlan0 essid UIC-Wireless

You should have successfully authenticated and received an valid IP address. The Internet is accessible by using any browser out there.

Debian

Nothing automated available as in gentoo, but same general procedure, start wpa_supplicant in once console, wait for it to AUTHENTICATE, then start your favorite dhcp client to grab an ip.

See Ubuntu/Gentoo instructions. IPV6 instructions from Ubuntu can be omitted, pure Debian should work regardless.

Ubuntu

These instructions are out of date use these instead: http://tigger.uic.edu/~gadget/UIC-Wireless/NetworkManager.html

Unbuntu Instructions:

These are the instructions to what I had to do to get connected. Please update them if you find a better way.

First, you will need drivers for your wireless card and wpa_supplicant. To configure your wireless card, you'll probably want to start over in the [https://help.ubuntu.com/community/WifiDocs/WiFiHowTo Ubuntu Wireless Guide]. Once your wireless card works, you'll need to set up wpa_supplicant.

Again, installing wpa_supplicant is as simple (and tasy!) as pie sudo apt-get install wpasupplicant wpagui * For whatever reason, IPv6 causes UIC Wireless to not work, so we're simply going to disable IPv6 support in Ubuntu. To do so, we'll need to turn off IPv6 in modprobe. Simply run the next command…

sudo gedit /etc/modprobe.d/bad_list

… and then add the following piece of text on its own line, preferably at the end of the file.

alias net-pf-10 off

* Okay, now you'll need to create the wpa supplicant config. Fire up gedit with the following command:

sudo gedit /etc/wpa_supplicant.conf

And insert the following lines of text into the config file, making sure you change the YOURNETID and YOURPASSWORD to their correct values:

wpa_supplicant.conf:
ctrl_interface=/var/run/wpa_supplicant
eapol_version=2
ap_scan=1
network={
      ssid="UIC-Wireless"
      scan_ssid=1
      mode=0
      key_mgmt=IEEE8021X
      eap=TTLS
      identity="YOURNETID"
      password="YOURPASSWORD"
      anonymous_identity="anonymous"
      ca_cert="thawte.pem"
      phase2="auth=PAP"
}

* Now you'll need to grab the root Thawte certificates that UIC Wireless uses. Download the certificate [http://lug.cs.uic.edu/downloads/ThawtePremiumServerCA.cerl here].

Then run: ifconfig eth0 up *This line is key to get wpa_supplicant to quickly see UIC-Wireless iwconfig eth0 essid “UIC-Wireless” key 1234567890 open *This is in debugging, verbose mode… wpa_supplicant -dd -K -Dipw -ieth0 -c /etc/wpa_supplicant/wpa_supplicant.conf

When you get authenticated just do: sudo dhclient eth0 *You will get an IP.

*'But I don not have wireless drivers installed??'

*Ubuntu should have this driver installed, but it is possible you might need a newer version. This is for Intel IPW2200 wireless card:

*This website has easy way of installing it on Debian, but it should be same for ubuntu. http://acm.cs.uic.edu/wiki/index.php/Debian#Intel_ipw2200_wireless_card_on_Debian.2C_instalation

*Otherwise if you need most recent drivers, IPW2200 specific instructions are on their websites.

*ipw2200 drivers: http://ipw2200.sourceforge.net/#downloads < – get v. 1.1.1 *Firmware for ipw2200: http://ipw2200.sourceforge.net/firmware.php < – get v. 3.0 *This you can apt-get but just in case: http://prdownloads.sourceforge.net/ieee80211/ < – get v. 1.1.12

*Make sure you have ubuntu's development stuff, and the appropiate headers for your kernel: sudo apt-get update sudo apt-get install build-essential sudo apt-get install linux-headers-$(uname -r) *If you need gcc: sudo apt-get install gcc

*I've got and updated kernel recently and I did not have the headers…so at least run: sudo apt-get install linux-headers-$(uname -r)

Then let's get with the drivers updated:

*First the firmware: tar xvzf ipw2200-fw-3.0.tgz sudo mv ipw2200-fw-3.0/ipw-3.0-*.fw /usr/lib/hotplug/firmware/

*then remove the old driver subsystem stuff: sudo tar xvzf ieee80211-1.1.12.tgz cd ieee80211-1.1.12 sudo sh remove-old

*and the old driver: cd .. tar -xvzf ipw2200-1.1.1.tgz cd ipw2200-1.1.1 sudo sh remove-old

*build and install subsystem: cd .. cd ieee80211-1.1.12 make sudo make install

*and driver: cd .. cd ipw2200-1.1.1 make sudo make install

*Final comments: At this point and as long as you have a recent enough wpa_supplicant the instructions originaly posted by Joe (freebsd once) should apply.

ifconfig eth0 up *This line is key to get wpa_supplicant to quickly see UIC-Wireless iwconfig eth0 essid “UIC-Wireless” key 1234567890 open *This is in debugging, verbose mode… wpa_supplicant -dd -K -Dipw -ieth0 -c /etc/wpa_supplicant/wpa_supplicant.conf

When you get authenticated just do: sudo dhclient eth0 *you will get an IP.

Enjoy!!

P.S.: Thanks to Nemik (your perssitence has been an inspiration), Joe (for you patience and help), Bob G and ACCC for all your hints and help.

Pre-Packaged Solution:

This is a self contained solution with binaries, configuration files, pem files, etc. It might not completely work, you might need to recompile it, or you can just use it to grab some of the files.

Let me know how it goes in the LUG's mailing list and I will change this as need arises.

Download this file: http://lug.cs.uic.edu/downloads/uicwifi.tar.gz

                  '''Or''' 

http://lug.cs.uic.edu/downloads/uicwifi_nosrc.tar.gz

Unpack it

tar -xzvf uicwifi.tar.gz # into your home folder, or where you put the downloaded file. cd uicwifi/ # Enter the uicwifi/ folder perl setup_uic.pl sudo bash uic.sh

open up a new terminal sudo /sbin/dhclient wlan0 #replace dhclient with the appropriate dhcp client (dhcpcd, pump)

Automatic UIC wifi python script

run this: `python uic.py` download it here but name it as uic.py, my webserver is teh suck.

BUT! change ath0 to be your wifi network interface

or the code is here:

import os
import threading
import time
import sys

down = "sudo ifconfig ath0 down"
up = "sudo ifconfig ath0 up"
init = "sudo iwconfig ath0 essid \"UIC-Wireless\""
wpa = "sudo wpa_supplicant -dd -Dwext -iath0 -c/etc/wpa_supplicant.conf"
dhclient = "sudo dhclient ath0"

class wpa_thread(threading.Thread):
	def run (self):
		os.system(down)
		os.system(up)
		os.system(init)
		os.system(wpa)

class ip_thread(threading.Thread):
	def run(self):
		os.system(dhclient)

#print "wpa \n"
wpa_thread().start()
raw_input("hit enter when authenticated") 
#time.sleep(7)
#print "ip\n"
ip_thread().start()
 
wifi.txt · Last modified: 2009/09/10 15:06 by hef
 
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki