|
1.
Wstęp
Konfiguracja sieci bezprzewodowej w systemie Linux nie jest rzeczą łatwą.
Istnieją dwie drogi dzięki, którym można to osiągnąć: graficzne nakładki lub
linia komend.
Najłatwiejszym sposobem jest użycie graficznej nakładki w przypadku gdy
posiadamy już zainstalowane środowisko
graficzne. Większość z tych aplikacji, jak na przykład wicd czy NetworkManager jest
bardzo łatwa w konfiguracji. Wystarczy kilka kliknięć, żeby połączyć się z
dowolną siecią bezprzewodową.
Uwaga:
wicd oferuje narzędzie uruchamiane z linii komend jako dodatek
do głównego graficznego interfejsu. Aby uzyskać dostęp do tej dodatkowej
funkcjonalności należy wicd zainstalować z flagą USE ncurses.
Aplikacja wicd-curses jest w szczególności przydatna dla osób, które
pomimo braku środowiska graficznego bazującego na gtk, potrzebują łatwego i
nie wymagającego ręcznej edycji plików narzędzia.
|
W przypadku gdy nie chcemy używać graficznych aplikacji, konfiguracja sieci
bezprzewodowej opiera się na edycji kilku plików. Zajmuje to więcej czasu
jednak wymaga mniejszej ilości pakietów, które należy zainstalować. Ponieważ
graficzne aplikacje, są łatwe w obsłudze, skupimy się na metodzie konfiguracji
z linii komend.
Sieć bezprzewodową możemy skonfigurować instalując wireless-tools
bądź wpa_supplicant. Ważną rzeczą, którą należy zapamiętać jest fakt,
że konfiguracja sieci odbywa się w sposób globalny, a nie na konkretnych
interfejsie.
Najlepszym wyborem jest aplikacja wpa_supplicant. Listę wspieranych
sterowników znajdziemy na stronie domowej.
wireless-tools wspiera niemalże wszystkie karty oraz sterowniki, ale nie
potrafi połączyć się z access pointami, które korzystają tylko z WPA. Jeśli
nasza sieć zabezpieczona jest jedynie przy pomocy WEP, prostota
wireless-tools może być czynnikiem decydującym o jego wyborze.
Ostrzeżenie:
Sterownik linux-wlan-ng nie jest w chwili obecnej wspierany przez
baselayout. Spowodowane to jest tym, że linux-wlan-ng posiada zestaw
własnych ustawień i konfigurację która jest zupełnie inna od pozostałych.
Developerzy linux-wlan-ng są namawiani do przejścia na ustawienia zgodne
z wireless-tools - gdy to zostanie dokonane, baselayout pozwoli na
użycie linux-wlan-ng.
|
1.
WPA Supplicant
WPA Supplicant to
pakiet, który pozwala połączyć się do punktów dostępowych z włączonym WPA.
Listing 1.1: Instalacja wpa_supplicant |
# emerge net-wireless/wpa_supplicant
|
Ważne:
Należy mieć włączoną opcję CONFIG_PACKET w jądrze, aby
wpa_supplicant działało.
|
Uwaga:
W zależności od użytych flag USE wpa_supplicant może zainstalować
graficzny interfejs napisany w Qt4, który zintegruje się z KDE. Aby uzyskać
dostęp do tego interfejsu należy przed zainstalowaniem wpa_supplicant
uruchomić jako administrator polecenie echo "net-wireless/wpa_supplicant
qt4" >> /etc/portage/package.use.
|
Teraz należy skonfigurować /etc/conf.d/net i wskazać, że
wpa_supplicant ma być używany w pierwszej kolejności, przed
wireless-tools (jeśli obydwa są zainstalowane, w pierwszej kolejności
używany jest wireless-tools).
Listing 1.1: Konfiguracja /etc/conf.d/net dla wpa_supplicant |
modules=( "wpa_supplicant" )
wpa_supplicant_eth0="-Dmadwifi"
|
Uwaga:
Jeżeli używany jest sterownik host-ap, należy ustawić tryb zarządzania w karcie,
zanim zacznie poprawnie współpracować z wpa_supplicant. Aby to osiągnąć,
można użyć iwconfig_eth0="mode managed" w /etc/conf.d/net.
|
Nie było to trudne, prawda? Nadal jednak trzeba skonfigurować
wpa_supplicant samo w sobie, co jest dość trudne w zależności od tego
jak bezpieczne są access pointy, z którymi następuje połączenie. Poniższy
przykład jest uproszczoną wersją z pliku
/usr/share/doc/wpa_supplicant-<version>/wpa_supplicant.conf.gz,
który pochodzi z wpa_supplicant.
Listing 1.1: Przykładowy /etc/wpa_supplicant/wpa_supplicant.conf |
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
ap_scan=1
network={
ssid="proste"
psk="bardzo tajne hasło"
priority=5
}
network={
ssid="drugi ssid"
scan_ssid=1
psk="bardzo tajne hasło"
priority=2
}
network={
ssid="przykład"
proto=WPA
key_mgmt=WPA-PSK
pairwise=CCMP TKIP
group=CCMP TKIP WEP104 WEP40
psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb0106c72ac7bb
priority=2
}
network={
ssid="test-bez-szyfrowania"
key_mgmt=NONE
}
network={
ssid="test-statycznego-wep"
key_mgmt=NONE
wep_key0="abcde"
wep_key1=0102030405
wep_key2="1234567890123"
wep_tx_keyidx=0
priority=5
}
network={
ssid="test2-statycznego-wep"
key_mgmt=NONE
wep_key0="abcde"
wep_key1=0102030405
wep_key2="1234567890123"
wep_tx_keyidx=0
priority=5
auth_alg=SHARED
}
network={
ssid="test adhoc"
mode=1
proto=WPA
key_mgmt=WPA-NONE
pairwise=NONE
group=TKIP
psk="tajne hasło"
}
|
1.
Narzędzia do sieci bezprzewodowych
Wstępna konfiguracja i tryb zarządzany
Wireless Tools posiadają podstawowe metody na konfigurację podstawowych
interfejsów sieci bezprzewodowych aż do ustawień poziomu zabezpieczeń WEP. Mimo,
że WEP to dość słaba metoda zabezpieczeń, jest najczęściej stosowana.
Konfiguracje Wireless Tools są kontrolowane przy pomocy kilku głównych
zmiennych. Przykładowa konfiguracja poniżej powinna opisać wszystko co jest
potrzebne. Jedyne o czym należy pamiętać, to fakt, że dana konfiguracja nie
oznacza "połącz się z najlepszym nieszyfrowanym access pointem" - zawsze
nastąpi próba połączenia z czymkolwiek.
Listing 1.1: Instalacja wireless-tools |
# emerge net-wireless/wireless-tools
|
Uwaga:
Mimo że ustawienia sieci bezprzewodowych można trzymać w
/etc/conf.d/wireless, my radzimy przetrzymać je w
/etc/conf.d/net.
|
Ważne:
Koniecznie należy zajrzeć do dokumentacji opisującej (nazwy zmiennych).
|
Listing 1.1: Przykładowe ustawienia iwconfig w /etc/conf.d/net |
modules=( "iwconfig" )
key_ESSID1="[1] s:twojklucz key [1] enc open"
key_ESSID2="[1] aaaa-bbbb-cccc-dd key [1] enc restricted"
preferred_aps=( "ESSID1" "ESSID2" )
|
Konfiguracja wyboru punktów dostępu
Można dodać kilka opcji, aby lepiej skonfigurować wybór Access Pointów,
jednakże na ogół nie są one wymagane.
Można zdecydować czy łączymy się tylko z preferowanymi Access Pointami czy nie.
Domyślnie, jeśli żadne z ustawień nie zadziałają i można połączyć się do
nieszyfrowanego Access Pointa, to nastąpi połączenie. Można to kontrolować przy
pomocy zmiennej associate_order. Poniżej znajduje się tabela z
wartościami oraz jak wpływają na kontrolę.
| Wartość |
Opis |
| any |
Domyślne zachowanie |
| preferredonly |
Będzie można połączyć się jedynie z AP z listy preferowanych |
| forcepreferred |
Będą dokonywane połączenia z AP w preferowanej kolejności jeśli nie
zostały one odnalezione w skanowaniu
|
| forcepreferredonly |
Nie będzie skanowania w poszukiwaniu AP - w zamian nastąpi próba
połączenia się z każdym w kolejności
|
| forceany |
Podobnie jak forcepreferred + połącz się z dowolnym dostępnym AP
|
Ostatecznie, istnieje możliwość wyboru blacklist_aps oraz
unique_ap. blacklist_aps działa podobnie jak
preferred_aps. unique_ap to wartość tak lub nie które wskazuje
czy drugi interfejs bezprzewodowy może połączyć się do tego samego Access
Pointa co pierwszy interfejs.
Listing 1.1: przykład z blacklist_aps oraz unique_ap |
blacklist_aps=( "ESSID3" "ESSID4" )
unique_ap="yes"
|
Tryb Ad-Hoc oraz Zarządzany
Jeżeli zachodzi potrzeba ustawienia własnego węzła Ad-Hoc w przypadku braku
możliwości połączenia się z jakimkolwiek Access Pointem, to również jest to
możliwe.
Listing 1.1: Przenieś się na tryb ad-hoc |
adhoc_essid_eth0="Ten Węzeł Adhoc"
|
A co z połączeniami do sieci Ad-Hoc lub działaniem w trybie zarządcy, aby stać
się Access Pointem? Poniżej znajduje się konfiguracja do tego! Może zajść
potrzeba, aby ustawić klucze WEP pokazane powyżej.
Listing 1.1: Przykładowa konfiguracja ad-hoc/master |
mode_eth0="ad-hoc"
essid_eth0="Ten węzeł Adhoc"
channel_eth0="9"
|
Ważne:
Poniżej znajduje się dosłowny wycinek z BSD wavelan documentation, który
znajduje się w zasobach
dokumentacji NetBSD Jest 14 kanałów do wyboru. Kanały od 1 do 11 są
legalne w Północnej Ameryce, kanały od 1 do 13 w większości Europy, kanały od
10 do 13 we Francji, a kanał 14 jest przeznaczony dla Japonii. W przypadku
wątpliwości, należy odnieść się do dokumentacji znajdującej się przy karcie
bezprzewodowej lub access poincie. Należy upewnić się, że wybrany kanał jest
ten sam który jest obsługiwany przez access point (lub inna karta znajdująca
się w sieci typu ad-hoc). Domyślnym kanałem dla kart w Północnej Ameryce oraz
Europie jest kanał 3; domyślny dla kart francuskich jest 11, zaś dla tych
sprzedawanych w Japonii to 14.
|
Rozwiązywanie problemów z Wireless Tools
Jest kilka zmiennych, których można użyć do ustawienia i uruchomienia sieci
bezprzewodowej, pomimo napotkanych problemów. Poniżej znajduje się tabela,
która przedstawia zmienne do wypróbowania.
| Zmienna |
Domyślna wartość |
Opis |
| iwconfig_eth0 |
|
Szczegóły dotyczące iwconfig znajdują się w manualu iwconfig |
| iwpriv_eth0 |
|
Szczegóły dotycząca iwpriv znajdują się w manualu iwpriv |
| sleep_scan_eth0 |
0 |
Liczba sekund uśpienia przed rozpoczęciem skanowania. Jest to potrzebne dla
tych sterowników, które potrzebują więcej czasu na uruchomienie zanim mogą
zostać użyte.
|
| sleep_associate_eth0 |
5 |
Liczba sekund oczekiwania na połączenie się interfejsu z Access Pointem
przed przeniesieniem się na kolejny
|
| associate_test_eth0 |
MAC |
Niektóre sterowniki nie zerują adresów MAC przypisanych gdy zgubią adres
lub następuje próba połączenia. Niektóre sterowniki nie zerują poziomu
jakości gdy zgubią adres lub następuje próba połączenia. Prawidłowe
wartości to MAC, quality lub all.
|
| scan_mode_eth0 |
|
Niektóre sterowniki muszą dokonać skanowania w trybie ad-hoc, więc jeśli
skanowanie nie działa, należy ustawić tutaj ad-hoc.
|
| iwpriv_scan_pre_eth0 |
|
Wysyła polecenia iwpriv do interfejsu przed skanowaniem. Więcej informacji
znajduje się w man iwpriv.
|
| iwpriv_scan_post_eth0 |
|
Wysyła polecenia iwpriv do interfejsu po skanowaniu. Więcej informacji
znajduje się w man iwpriv.
|
1.
Definiowanie konfiguracji sieci w zależności od ESSID
Niekiedy po połączeniu do ESSID1, zachodzi potrzeba otrzymania statycznego
adresu IP, zaś w przypadku ESSID2 - dynamicznego przez DHCP. Większość zmiennych
może być ustawianych w zależności od ESSIDa. Poniżej jest opisane jak tego
dokonać.
Uwaga:
Poniższe działają jeśli używa się WPA Supplicant lub Wireless Tools.
|
Ważne:
Koniecznie należy zajrzeć do dokumentacji opisującej (nazwy zmiennych).
|
Listing 1.1: nadpisywanie ustawień sieciowych w zależności od ESSIDa |
config_ESSID1=( "192.168.0.3/24 brd 192.168.0.255" )
routes_ESSID1=( "default via 192.168.0.1" )
config_ESSID2=( "dhcp" )
fallback_ESSID2=( "192.168.3.4/24" )
fallback_route_ESSID2=( "default via 192.168.3.1" )
dns_servers_ESSID1=( "192.168.0.1" "192.168.0.2" )
dns_domain_ESSID1="some.domain"
dns_search_domains_ESSID1="szukaj.tej.domeny szukaj.tamtej.domeny"
config_001122334455=( "dhcp" )
dhcpcd_001122334455="-t 10"
dns_servers_001122334455=( "192.168.0.1" "192.168.0.2" )
|
|