Opsætning af WiFi Roaming med wpa
Du får højest sandsynligt brug for non-free firmware tilgængeligt på en USB-nøgle for operativ systemet. Læs venligst her non-free firmware debs på en USB-nøgle.
Oversigt
wpa-roaming er en metode hvormed du kan browse og forbinde til trådløse netværk med eller uden en grafisk brugerflade.
Resultatet af det følgende set-up, er at hvis der ikke er forbundet et netværkskabel, så vil wlan0 få fortrinsret og forbinde til dit ønskede trådløse netværk, eller til et åbent tilgængeligt trådløst netværk, eller til et forudbestemt trådløst netværk. Hvis du forbinder et netværks kabel vil det øjeblikkeligt lukke det trådløse netværk ned og du bliver forbundet via kabel. Ved at trække stikket ud igen, vil den trådløse forbindelse øjeblikkeligt blive genskabt.
indstilling af netværks konfiguration
Som root skal du redigere din /etc/network/interfaces fil sådan at den ligner det følgende (det specifikke navn på netværksenheden kan variere):
# The loopback network interface auto lo iface lo inet loopback #Added by user allow-hotplug wlan0 iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa-roam.conf #this line must always be here iface default inet dhcp
Derefter skal wpa_supplicant have en .conf fil, wpa-roam.conf
cp /usr/share/doc/wpasupplicant/examples/wpa-roam.conf /etc/wpa_supplicant/wpa-roam.conf
Brug en teskteditor til at åben filen
<editor> /etc/wpa_supplicant/wpa-roam.conf
Afkommenter linje 30 (fjern #). Dette skal gøres, ellers vil konfigurationer ikke blive gemt til filen:
update_config=1
For at konfigurere en bærbar eller en stationær der kun skal have adgang til et enkelt sikkert netværk øjeblikkeligt, skal du afkommenterer linierne (fjern #) for WEP eller WPA-WPA2PSK efter behov:
WEP eksempel:
network={ ssid="debian" #Example WEP Network key_mgmt=NONE wep_key0=6162636465 wep_tx_keyidx=0 }
WPA eksempel:
network={ ssid="aptosid_Worldwide" #Example WPA Network psk="mysecretpassphrase" }
Det næste trin sikrer wpa-roam.conf fra uønsket tilgang. Dette er nødvendigt fordi hemmelige nøgler fra private netværk gemmes i denne fil:
chmod 600 /etc/wpa_supplicant/wpa-roam.conf
Aktiver den trådløse forbindelse med:
ifup wlan0
Se efter om du er forbundet til netværket:
wpa_cli status
Output fra den kommando bør ligne det følgende:
Selected interface 'wlan0' bssid=94:0c:6d:aa:f4:42 ssid=aptosid_Melbourne id=3 pairwise_cipher=CCMP group_cipher=CCMP key_mgmt=WPA2-PSK wpa_state=COMPLETED ip_address=192.168.1.102
Hvis du ikke kan se ip_address= numre, er du ikke forbundet, så gennemgå konfigurationen ved først at stoppe wlan0:
wpa_action wlan0 stop
Skulle du have brug for specielle netværks konfigurationsindstillinger, se her
Skift mellem trådløs netværk og kablet netværk
Først skal du læse her Skift mellem kablet og trådløs forbindelse , for hvis det ikke bliver korrekt konfigureret vil du ikke kunne skifte eller forbinde til andre netværk.
Efter opsætning af ifplugd, bør den endelige konfiguration ligne dette:
auto lo iface lo inet loopback # governed by ifplugd ... do not use allow-hotplug or auto options iface eth0 inet dhcp #Added by user allow-hotplug wlan0 iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa-roam.conf #this line must always be here iface default inet dhcp
Anvend wpa-roam.conf med manuelt angivne netværks konfigurationer
Med hjælp fra IDString og Priority kan du dirigere hvilket netværk din PC forbinder til ved opstart. Højeste prioritet er 1000, laveste prioritet er 0. Du skal ligeledes tilføje id_str til /etc/network/interfaces.
Syntaksen for /etc/network/interfaces.
Første eksempel er for forbindelse til DHCP server, det andet eksempel er for hvis du har en fast IP addresse. For at tilpasse dine indstillinger:
# id_str="home_dhcp" iface home_dhcp inet dhcp #this line must always be here iface default inet dhcp # id_str="home_static" iface home_static inet static address 192.168.0.20 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1
Praktiske eksempler
Hvis du vil forbindes automatisk med dit trådløse hjemmenetværk når du er hjemme, så giv det IDString "home" og prioritet "15". Hvis du rejser og vil have den bærbare til at forbinde til ethvert frit åbent netværk der er tilgængeligt, så giv det IDString "stalk" og prioriteten "1" (meget lavt). OBS: Du skal altid sikre dig at din forbindelse er legal, og husk at du skal afbryde forbindelsen hvis det åbentlyst ikke er et netværk der er beregnet til at være frit for alle.
Eksempler på /etc/network/interfaces:
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) # The loopback interface # automatically added when upgrading auto lo iface lo inet loopback allow-hotplug eth0 iface eth0 inet dhcp allow-hotplug wlan0 iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa-roam.conf #this line must always be here iface default inet dhcp iface home inet dhcp iface stalk inet dhcp
Eksempel /etc/wpa_supplicant/wpa-roam.conf (SSID og passwords er ændret eller bare forklaret):
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="my_ssid" scan_ssid=1 psk=123ABC ##here comes the passphrase in hexadecimal code!! # psk="password_in_ascii" ##you dont need to key_mgmt=WPA-PSK pairwise=TKIP group=TKIP auth_alg=OPEN priority=15 id_str="home" } network={ ssid="" scan_ssid=1 key_mgmt=NONE auth_alg=OPEN priority=1 disabled=1 ## no automatic connection, one needs wpa_cli or wpa_gui id_str="stalk" }
Med "disabled=1" vil du ikke automatisk forbinde til definerede netværksblokke (åbne WLANs). Du skal så initiere roaming gennem wpa_gui eller wpa_cli. For at roame automatisk skal du ikke bruge denne mulighed overhovedet, alternativt kan du så kommentere linien med "disabled" muligheden ud, ved at tilføje et # foran.
WEP kryptering
Hvis du vil tilføje WEP krypterede netværk til din wpa-roam.conf permanent, så er syntaksen:
network={ ssid="example wep network" key_mgmt=NONE wep_key0="abcde" wep_key1=0102030405 wep_tx_keyidx=0 }
Bemærkninger
1. Nemt at genbruge
Når først opsætningen er færdig er det nemt at genbruge den på andre PC'er med trådløst netkort. Bare kopier /etc/network/interfaces (juster navnet på interfacet hvis nødvendigt) og /etc/wpa_supplicant/wpa-roam.conf til din anden PC. Der er ikke noget der skal installeres derudover.
2. Backup
Det er en god ide at sikkerhedskopiere /etc/network/interfaces og /etc/wpa_supplicant/wpa-roam.conf, men krypter din sikkerhedskopi eftersom den indeholder sensitive informationer.
En god metode til at sikkerhedskopiere og kryptere konfig-filerne er med tar og gpg. Som root:
tar -cf- /etc/network/interfaces /etc/wpa_supplicant/wpa-roam.conf | gpg -c > backup_name.tar.gpg
A file has now been created in $ HOME:
backup_name.tar.gpg
To list the contents of the backup_name.tar.gpg file:
gpg -d -o - backup_name.tar.gpg | tar vtf -
To extract and decrypt the contents of the archive backup_name.tar.gpg file:
gpg -d -o - backup_name.tar.gpg | tar vxf -
3. Skjulte SSIDs
Skjulte SSIDs opdages når scan_ssid=1 er defineret for en netværksblok.
Basal trådløs modem/ router sikkerhed
Når du har kontrol over den trådløse router/ modem er der et par basale sikkerhedspolitikker du bør implementere for at sikre dig mod uønsket tilgang fra uvedkommende.
Basale muligheder for protokoller
- WPA2-PSK er den bedste løsning.
- krypteringsprotokollen bør sættes til AES.
- Kodeordet bør være virkeligt stærkt.
Passphrase / kodeord
For at få et kodeord/ passphrase der er stærkt og som ikke er nemt at huske, kan du anvende pwgen i en terminal eller en konsol (læs også: man pwgen):
$ pwgen -s 63 1 VltnfGmGKXovVv2rmrCFFXBZ55Mij5bA6WytVJnVoKUqRn6dfjldG6MBrRo0Cdi
- -s = sikker (ingen mnemoteknik)
- 63 = antal anslag
- 1 = generer kun et tilfældigt kodeord
Uden -s parametren får du altså kodeord af en type der kan udtales, men det er usandsynligt at du gerne vil have det:
$ pwgen 8 3 Sooxae2s Niew9ugh Hi7eeloo
Når du har generert passphrase/kodeordet gem det da i en tekstfil på en USB-nøgle og anvend kodeordet på de andre PC'er der skal bruge det trådløse netværk. Gem ikke kodeordet på din PC.
Eksempel på endelig router indstilling:
Version: WPA2-PSK Encryption: AES PSK Password: VltnfGmGKXovVv2rmrCFFXBZ55Mij5bA6WytVJnVoKUqRn6dfjldG6MBrRo0Cdi