Saturday, March 7, 2009

How to use a WiFi interface

Once your wireless device has an interface available (verifiable with iwconfig), it is required to be configured to access a network. If you do not have a wireless interface present, please refer to WiFi for information on providing a driver for your device.

Wireless network interface configuration can be performed using a connection manager (such as NetworkManager) or through Debian's /etc/network/interfaces file with a special purpose utility (such as wpa_supplicant). Examples of NetworkManager and wpa_supplicant configuration are described below.

" src="" title="" width="15" height="15"> The WEP algorithm is insecure and deprecated by WPA. Use of WEP is not recommended and is not covered within this document.

Network Manager

NetworkManager is configured by graphical interfaces, which are available for GNOME and KDE. Your wireless interface should not be referenced within Debian's /etc/network/interfaces file.

NetworkManager is also a front-end for wpa_supplicant.


  1. Install the network-manager-gnome package:

    $ su
    # aptitude update
    # aptitude install network-manager-gnome
  2. Right-click on a GNOME panel and select "Add to Panel...".
  3. From the list presented, select "Network Monitor" and click "Add". A new systray applet will appear. Click "Close".
  4. Right-click on the applet and select "Properties".
  5. From the dialog presented, click "Configure". You will be asked for the administrative (root) password.
  6. A list of network interfaces will be displayed. Select your wireless interface, then click "Properties".
  7. Tick "Enable this connection" and enter details regarding your wireless network. Click "OK" when finished.

See also NetworkManager for frequently asked questions, documentation and support references.


  1. Install the network-manager-kde package:

    $ su
    # aptitude update
    # aptitude install network-manager-kde
  2. From the K Menu, select "Run Command". Enter "knetworkmanager" and click "Run".
  3. A new systray applet will appear.

ToDo: Complete knetworkmanager procedure.

See also NetworkManager for frequently asked questions, documentation and support references.


wpa_supplicant is a WPA client and IEEE 802.1X supplicant.

The wpasupplicant package provides wpa-* ifupdown options for /etc/network/interfaces. If these options are specified, wpa_supplicant is started in the background when your wireless interface is raised and stopped when brought down.

  • {i} GNOME and KDE users shouldn't configure wpa_supplicant manually. Use NetworkManager as explained above.

Before continuing, install the wpasupplicant package:

  • $ su
    # aptitude update
    # aptitude install wpasupplicant


{i} Also known as "WPA Personal" and "WPA2 Personal" respectively.

  1. Restrict the permissions of /etc/network/interfaces, to prevent pre-shared key (PSK) disclosure:

    # chmod 0600 /etc/network/interfaces
  2. Open /etc/network/interfaces in a text editor:

    # sensible-editor /etc/network/interfaces
  3. Define appropriate stanzas for your wireless interface, along with the SSID and PSK. For example:

    auto wlan0
    iface wlan0 inet dhcp
    wpa-ssid mynetworkname
    wpa-psk mysecretpassphrase
    The "auto" stanza will bring your interface up at system startup. If not desired, remove or comment this line.
  4. Save the file and exit the editor.
  5. Bring your interface up. This will start wpa_supplicant as a background process.

    # ifup wlan0

Additional wpa-* options are described within /usr/share/doc/wpasupplicant/README.modes.gz. This should also be read if connecting to a network not broadcasting its SSID.

For general /etc/network/interfaces information, see the interfaces(5) man page.


For networks using EAP-TLS, you are required to establish a wpa_supplicant configuration file and provide the client-side certificate. An example WPA2-EAP configuration file can be found at /usr/share/doc/wpasupplicant/examples/wpa2-eap-ccmp.conf.

Once available, reference your configuration file in /etc/network/interfaces. For example:

  • auto wlan0
    iface wlan0 inet dhcp
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

More information can be found in the wpa_supplicant.conf(5) man page. A fully-commented wpa_supplicant configuration file example is at /usr/share/doc/wpasupplicant/README.wpa_supplicant.conf.gz.

Switching Connections

To switch between multiple distinct configurations:

See Also

No comments: