====== WLAN ====== ===== Materiały ===== Lista //historycznych// materiałów opisujących sieci bezprzewodowe ad-hoc: \\ http://www.cs.put.poznan.pl/mkalewski/files/adhoc.pdf \\ http://www.cs.put.poznan.pl/ddwornikowski/sieci/sieci2/adhoc.html \\ Lista //dodatkowych// materiałów opisujących sieci bezprzewodowe: \\ https://technet.microsoft.com/en-us/library/cc757419%28v=ws.10%29.aspx\\ https://www.cisco.com/c/en/us/td/docs/wireless/controller/8-5/Enterprise-Mobility-8-5-Design-Guide/Enterprise_Mobility_8-5_Deployment_Guide/wlanrf.html ====== Laboratoria 1 ====== ++++ Ćwiczenia / treści z pierwszych laboratoriów:| - //Wstęp "teoretyczny": pojęcia, wykorzystywane pasmo radiowe, kanały i szerokości kanałów, rola wielu anten, standardy 802.11a,b,g,n,ac,ax, rodzaje sieci bezprzewodowych.// - Wypisz karty bezprzewodowe - Włącz kartę bezprzewodową - Wykonaj skanowanie dostępnych sieci - Zmień kanał pracy karty - Ustaw tryb pracy IBSS / ad-hoc - Stwórz / dołącz do sieci ad-hoc (IBSS) - Wykonaj skanowanie dostępnych sieci, znajdź swoją sieć w wynikach - Dodaj adres IP do interfejsu bezprzewodowego - Sprawdź łączność bezprzewodową między dwoma komputerami ++++ ==== Podstawowe pojęcia ==== * **WLAN** (Wireless LAN) = idea, pomysł, nazwa rozwiązania technicznego \\ [[https://pl.wikipedia.org/wiki/Bezprzewodowa_sie%C4%87_lokalna]] \\ * IEEE **802.11** = rodzina standardów opisujących konkretne rozwiązania techniczne dla sieci bezprzewodowych * Wi-Fi® = znak towarowy (trademark) organizacji [[https://www.wi-fi.org/who-we-are/our-brands|Wi-Fi Alliance]], wystawiającej certyfikaty zgodności urządzeń ze swoją wizją sieci bezprzewodowej, która z kolei sprowadza się do standardów z rodziny 802.11 \\ Uwaga: Wi-Fi 4, Wi-Fi 5, Wi-Fi 6, Wi-Fi 6E to oznaczenia kolejnych "generacji" sieci bezprzewodowych certyfikowanych przez Wi-Fi Alliance Urządzenia w sieci: * **STA** - [[https://en.wikipedia.org/wiki/Station_(networking)|station]], **stacja**, adresowalne urządzenie sieci bezprzewodowej. * **AP** - [[https://en.wikipedia.org/wiki/Wireless_access_point|access point]], punkt dostępowy. AP umożliwia stacjom na dostęp do urządzeń w sieci przewodowej (i na odwrót)((Formalnie AP to urządzenie które zapewnia dostęp stacjom z tego samego BSS do systemu dystrybucji (DS). Medium systemu dystrybucji nie jest określone w standardzie 802.11)). Działa na warstwie 2 (łącza danych). ==== Pasmo i standardy określające możliwe prędkości działania sieci ==== ^ ^ marka ^ rok wyd. ^ 2.4GHz ^^ 5GHz ^^ 6GHz ^^ kodowanie ^ ^ ::: ^ ::: ^ ::: ^sz. kan.^max band.^ sz. kan.^max band.^ sz. kan.^max band.^ ::: ^ | 802.11 | | 1997 | 22| 2Mbps| — || — || DSSS/FHSS | | 802.11b| | 1999 | 22| 11Mbps| — || — || DSSS | | 802.11a| ::: | ::: | — || 20| 54Mbps| — || OFDM | | 802.11g| | 2003 | 20| 54Mbps| — || — || ::: | | 802.11n|Wi-Fi 4| (2006),\\ 2009 | HT20| 72.2Mbps| HT20| 72.2Mbps| — || ::: | | ::: | ::: | ::: | HT40| 150Mbps| HT40| 150Mbps| — || ::: | |802.11ac|Wi-Fi 5| wave 1:\\ 2013,\\ \\ wave 2: \\ 2016 | — || VHT20| 86.7Mbps| — || ::: | | ::: | ::: | ::: | — || VHT40| 200Mbps| — || ::: | | ::: | ::: | ::: | — || VHT80| 433.3Mbps| — || ::: | | ::: | ::: | ::: | — || VHT160| 866.7Mbps| — || ::: | |802.11ax|Wi-Fi 6, \\ Wi-Fi 6E| 2019,\\ 2020 | HE20| 143.4Mbps| HE20| 143.4Mbps| HE20| 143.4Mbps| OFDM/OFDMA| | ::: | ::: | ::: | HE40| 286.8Mbps| HE40| 286.8Mbps| HE40| 286.8Mbps| ::: | | ::: | ::: | ::: | — || HE80| 600.5Mbps| HE80| 600.5Mbps| ::: | | ::: | ::: | ::: | — || HE160| 1201Mbps| HE160| 1201Mbps| ::: | | 802.11ac i 802.11ax potrafią też używać dwóch kanałów 80MHz naraz (80+80) z przepustowością identyczną jak dla 160MHz \\ Podane prędkości to maksymalne **teoretyczne** prędkości dla **jednego** strumienia przestrzennego \\ 802.11ax z ODFMA ma niższe prędkości teoretyczne \\ 802.11ax bez wsparcia dla pasma 6GHz to Wi-Fi 6, a ze wsparciem to Wi-Fi 6E |||||||||| **Plan kanałów dla sieci bezprzewodowych**:\\ [[https://en.wikipedia.org/wiki/List_of_WLAN_channels]] \\
lab-sec-1:~ # iw dev phy#0 Interface wlan0 ifindex 5 wdev 0x1 addr 94:e6:f7:17:08:72 type managed txpower 0.00 dBm lab-sec-1:~ # iw wlan0 info Interface wlan0 ifindex 5 wdev 0x1 addr 94:e6:f7:17:08:72 type managed wiphy 0 txpower 0.00 dBm++++ ++++ iw phy |
lab-sec-1:~ # iw phy Wiphy phy0 max # scan SSIDs: 20 max scan IEs length: 422 bytes max # sched scan SSIDs: 20 max # match sets: 11 max # scan plans: 2 max scan plan interval: 65535 max scan plan iterations: 254 Retry short limit: 7 Retry long limit: 4 Coverage class: 0 (up to 0m) Device supports RSN-IBSS. Device supports AP-side u-APSD. Device supports T-DLS. Supported Ciphers: * WEP40 (00-0f-ac:1) * WEP104 (00-0f-ac:5) * TKIP (00-0f-ac:2) * CCMP-128 (00-0f-ac:4) * GCMP-128 (00-0f-ac:8) * GCMP-256 (00-0f-ac:9) * CMAC (00-0f-ac:6) * GMAC-128 (00-0f-ac:11) * GMAC-256 (00-0f-ac:12) Available Antennas: TX 0x3 RX 0x3 Configured Antennas: TX 0x3 RX 0x3 Supported interface modes: * IBSS * managed * AP * AP/VLAN * monitor * P2P-client * P2P-GO * P2P-device++++ ++++ zmiana tryby pracy i kanału / częstotliwości |Band 1: Capabilities: 0x19ef RX LDPC HT20/HT40 SM Power Save disabled RX HT20 SGI RX HT40 SGI TX STBC RX STBC 1-stream Max AMSDU length: 7935 bytes DSSS/CCK HT40 Maximum RX AMPDU length 65535 bytes (exponent: 0x003) Minimum RX AMPDU time spacing: 4 usec (0x05) HT Max RX data rate: 300 Mbps HT TX/RX MCS rate indexes supported: 0-15 Bitrates (non-HT): * 1.0 Mbps * 2.0 Mbps (short preamble supported) * 5.5 Mbps (short preamble supported) * 11.0 Mbps (short preamble supported) * 6.0 Mbps * 9.0 Mbps * 12.0 Mbps * 18.0 Mbps * 24.0 Mbps * 36.0 Mbps * 48.0 Mbps * 54.0 Mbps Frequencies: * 2412 MHz [1] (22.0 dBm) * 2417 MHz [2] (22.0 dBm) * 2422 MHz [3] (22.0 dBm) * 2427 MHz [4] (22.0 dBm) * 2432 MHz [5] (22.0 dBm) * 2437 MHz [6] (22.0 dBm) * 2442 MHz [7] (22.0 dBm) * 2447 MHz [8] (22.0 dBm) * 2452 MHz [9] (22.0 dBm) * 2457 MHz [10] (22.0 dBm) * 2462 MHz [11] (22.0 dBm) * 2467 MHz [12] (22.0 dBm) * 2472 MHz [13] (22.0 dBm) * 2484 MHz [14] (22.0 dBm)Band 2: Capabilities: 0x19ef RX LDPC HT20/HT40 SM Power Save disabled RX HT20 SGI RX HT40 SGI TX STBC RX STBC 1-stream Max AMSDU length: 7935 bytes DSSS/CCK HT40 Maximum RX AMPDU length 65535 bytes (exponent: 0x003) Minimum RX AMPDU time spacing: 4 usec (0x05) HT Max RX data rate: 300 Mbps HT TX/RX MCS rate indexes supported: 0-15 VHT Capabilities (0x039071f6): Max MPDU length: 11454 Supported Channel Width: 160 MHz RX LDPC short GI (80 MHz) short GI (160/80+80 MHz) TX STBC SU Beamformee MU Beamformee VHT RX MCS set: 1 streams: MCS 0-9 2 streams: MCS 0-9 3 streams: not supported 4 streams: not supported 5 streams: not supported 6 streams: not supported 7 streams: not supported 8 streams: not supported VHT RX highest supported: 0 Mbps VHT TX MCS set: 1 streams: MCS 0-9 2 streams: MCS 0-9 3 streams: not supported 4 streams: not supported 5 streams: not supported 6 streams: not supported 7 streams: not supported 8 streams: not supported VHT TX highest supported: 0 Mbps Bitrates (non-HT): * 6.0 Mbps * 9.0 Mbps * 12.0 Mbps * 18.0 Mbps * 24.0 Mbps * 36.0 Mbps * 48.0 Mbps * 54.0 Mbps Frequencies: * 5180 MHz [36] (22.0 dBm) * 5200 MHz [40] (22.0 dBm) * 5220 MHz [44] (22.0 dBm) * 5240 MHz [48] (22.0 dBm) * 5260 MHz [52] (22.0 dBm) * 5280 MHz [56] (22.0 dBm) * 5300 MHz [60] (22.0 dBm) * 5320 MHz [64] (22.0 dBm) * 5340 MHz [68] (22.0 dBm) * 5360 MHz [72] (22.0 dBm) * 5380 MHz [76] (22.0 dBm) * 5400 MHz [80] (22.0 dBm) * 5420 MHz [84] (22.0 dBm) * 5440 MHz [88] (22.0 dBm) * 5460 MHz [92] (22.0 dBm) * 5480 MHz [96] (22.0 dBm) * 5500 MHz [100] (22.0 dBm) * 5520 MHz [104] (22.0 dBm) * 5540 MHz [108] (22.0 dBm) * 5560 MHz [112] (22.0 dBm) * 5580 MHz [116] (22.0 dBm) * 5600 MHz [120] (22.0 dBm) * 5620 MHz [124] (22.0 dBm) * 5640 MHz [128] (22.0 dBm) * 5660 MHz [132] (22.0 dBm) * 5680 MHz [136] (22.0 dBm) * 5700 MHz [140] (22.0 dBm) * 5720 MHz [144] (22.0 dBm) * 5745 MHz [149] (22.0 dBm) * 5765 MHz [153] (22.0 dBm) * 5785 MHz [157] (22.0 dBm) * 5805 MHz [161] (22.0 dBm) * 5825 MHz [165] (22.0 dBm) * 5845 MHz [169] (22.0 dBm) * 5865 MHz [173] (22.0 dBm) * 5885 MHz [177] (22.0 dBm) * 5905 MHz [181] (22.0 dBm)Supported commands: * new_interface * set_interface * new_key * start_ap * new_station * new_mpath * set_mesh_config * set_bss * authenticate * associate * deauthenticate * disassociate * join_ibss * join_mesh * remain_on_channel * set_tx_bitrate_mask * frame * frame_wait_cancel * set_wiphy_netns * set_channel * set_wds_peer * tdls_mgmt * tdls_oper * start_sched_scan * probe_client * set_noack_map * register_beacons * start_p2p_device * set_mcast_rate * connect * disconnect * channel_switch * set_qos_map * add_tx_ts * Unknown command (121) Supported TX frame types: * IBSS: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 * managed: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 * AP: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 * AP/VLAN: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 * mesh point: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 * P2P-client: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 * P2P-GO: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 * P2P-device: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0 Supported RX frame types: * IBSS: 0x40 0xb0 0xc0 0xd0 * managed: 0x40 0xb0 0xd0 * AP: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0 * AP/VLAN: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0 * mesh point: 0xb0 0xc0 0xd0 * P2P-client: 0x40 0xd0 * P2P-GO: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0 * P2P-device: 0x40 0xd0 WoWLAN support: * wake up on disconnect * wake up on magic packet * wake up on pattern match, up to 20 patterns of 16-128 bytes, maximum packet offset 0 bytes * can do GTK rekeying * wake up on GTK rekey failure * wake up on EAP identity request * wake up on 4-way handshake * wake up on rfkill release * wake up on network detection, up to 11 match sets software interface modes (can always be added): * AP/VLAN * monitor valid interface combinations: * #{ managed } <= 1, #{ AP, P2P-client, P2P-GO } <= 1, #{ P2P-device } <= 1, total <= 3, #channels <= 2 HT Capability overrides: * MCS: ff ff ff ff ff ff ff ff ff ff * maximum A-MSDU length * supported channel width * short GI for 40 MHz * max A-MPDU length exponent * min MPDU start spacing Device supports TX status socket option. Device supports HT-IBSS. Device supports SAE with AUTHENTICATE command Device supports low priority scan. Device supports scan flush. Device supports per-vif TX power setting P2P GO supports CT window setting P2P GO supports opportunistic powersave setting Driver supports full state transitions for AP/GO clients Driver supports a userspace MPM Driver/device bandwidth changes during BSS lifetime (AP/GO mode) Device adds DS IE to probe requests Device can update TPC Report IE Device supports static SMPS Device supports dynamic SMPS Device supports WMM-AC admission (TSPECs) Device supports configuring vdev MAC-addr on create. Device supports VHT-IBSS.
lab-sec-1:~ # ip link set wlan0 down lab-sec-1:~ # iw wlan0 set type monitor lab-sec-1:~ # ip link set wlan0 up lab-sec-1:~ # iw wlan0 info Interface wlan0 ifindex 5 wdev 0x1 addr 94:e6:f7:17:0f:b1 type monitor wiphy 0 channel 1 (2412 MHz), width: 20 MHz (no HT), center1: 2412 MHz txpower 0.00 dBm lab-sec-1:~ # iw wlan0 set channel 1 HT40+ lab-sec-1:~ # iw wlan0 info Interface wlan0 ifindex 5 wdev 0x1 addr 94:e6:f7:17:0f:b1 type monitor wiphy 0 channel 1 (2412 MHz), width: 40 MHz, center1: 2422 MHz txpower 0.00 dBm lab-sec-1:~ # iw dev wlan0 set freq 5180 160 5250 lab-sec-1:~ # iw wlan0 info Interface wlan0 ifindex 5 wdev 0x1 addr 94:e6:f7:17:0f:b1 type monitor wiphy 0 channel 36 (5180 MHz), width: 160 MHz, center1: 5250 MHz txpower 0.00 dBm++++ ++++ iw
lab-sec-1:~ # iw wlan0 scan (…) BSS 94:9b:2c:09:86:10(on wlan0) last seen: 1707.440s [boottime] TSF: 7310209378470 usec (84d, 14:36:49) freq: 5180 beacon interval: 100 TUs capability: ESS Privacy SpectrumMgmt ShortSlotTime RadioMeasure (0x1511) signal: -76.00 dBm last seen: 0 ms ago Information elements from Probe Response frame: SSID: eduroam Supported rates: 6.0* 9.0 12.0* 18.0 24.0* 36.0 48.0 54.0 DS Parameter set: channel 36 Country: PL Environment: Indoor only Channels [36 - 64] @ 23 dBm Channels [100 - 140] @ 30 dBm BSS Load: * station count: 9 * channel utilisation: 15/255 * available admission capacity: 31250 [*32us] TPC report: TX power: 16 dBm Power constraint: 0 dB HT capabilities: Capabilities: 0x86f RX LDPC HT20/HT40 SM Power Save disabled RX HT20 SGI RX HT40 SGI No RX STBC Max AMSDU length: 7935 bytes No DSSS/CCK HT40 Maximum RX AMPDU length 65535 bytes (exponent: 0x003) Minimum RX AMPDU time spacing: No restriction (0x00) HT RX MCS rate indexes supported: 0-15 HT TX MCS rate indexes are undefined HT operation: * primary channel: 36 * secondary channel offset: above * STA channel width: any * RIFS: 0 * HT protection: no * non-GF present: 1 * OBSS non-GF present: 0 * dual beacon: 0 * dual CTS protection: 0 * STBC beacon: 0 * L-SIG TXOP Prot: 0 * PCO active: 0 * PCO phase: 0 Overlapping BSS scan params: * passive dwell: 20 TUs * active dwell: 10 TUs * channel width trigger scan interval: 300 s * scan passive total per channel: 200 TUs * scan active total per channel: 20 TUs * BSS width channel transition delay factor: 5 * OBSS Scan Activity Threshold: 0.25 % Extended capabilities: HT Information Exchange Supported, Extended Channel Switching, Proxy ARP Service, SSID List, 6 VHT capabilities: VHT Capabilities (0x33895832): Max MPDU length: 11454 Supported Channel Width: neither 160 nor 80+80 RX LDPC short GI (80 MHz) SU Beamformer SU Beamformee MU Beamformer RX antenna pattern consistency TX antenna pattern consistency VHT RX MCS set: 1 streams: MCS 0-9 2 streams: MCS 0-9 3 streams: not supported 4 streams: not supported 5 streams: not supported 6 streams: not supported 7 streams: not supported 8 streams: not supported VHT RX highest supported: 0 Mbps VHT TX MCS set: 1 streams: MCS 0-9 2 streams: MCS 0-9 3 streams: not supported 4 streams: not supported 5 streams: not supported 6 streams: not supported 7 streams: not supported 8 streams: not supported VHT TX highest supported: 0 Mbps VHT operation: * channel width: 0 (20 or 40 MHz) * center freq segment 1: 0 * center freq segment 2: 0 * VHT basic MCS set: 0xfffc WMM: * Parameter version 1 * BE: CW 15-1023, AIFSN 3 * BK: CW 15-1023, AIFSN 7 * VI: CW 7-15, AIFSN 2, TXOP 3008 usec * VO: CW 3-7, AIFSN 2, TXOP 1504 usec RSN: * Version: 1 * Group cipher: CCMP * Pairwise ciphers: CCMP * Authentication suites: IEEE 802.1X * Capabilities: 1-PTKSA-RC 1-GTKSA-RC MFP-capable (0x0080) BSS 94:9b:2c:0a:78:f0(on wlan0) last seen: 1887.729s [boottime] TSF: 8138126260614 usec (94d, 04:35:26) freq: 5220 beacon interval: 100 TUs capability: ESS Privacy SpectrumMgmt ShortSlotTime RadioMeasure (0x1511) signal: -85.00 dBm last seen: 12 ms ago Information elements from Probe Response frame: SSID: eduroam (…)++++ ++++ inny, przydługi wynik komendy 'iw
lab-sec-1:~ # iw wlan0 set type ibss
lab-sec-1:~ # ip l set dev wlan0 up
lab-sec-1:~ # iw wlan0 info
Interface wlan0
ifindex 5
wdev 0x1
addr 94:e6:f7:17:0f:b1
type IBSS
wiphy 0
txpower 0.00 dBm
lab-sec-1:~ # iw wlan0 ibss join ExampleIBSS 2472 HT40-
lab-sec-1:~ # iw wlan0 link
Not connected.
lab-sec-1:~ # iw wlan0 link
Joined IBSS 4a:65:c8:86:c3:6a (on wlan0)
SSID: ExampleIBSS
freq: 2472
lab-sec-1:~ # iw wlan0 info
Interface wlan0
ifindex 5
wdev 0x1
addr 94:e6:f7:17:0f:b1
ssid ExampleIBSS
type IBSS
wiphy 0
channel 13 (2472 MHz), width: 40 MHz, center1: 2462 MHz
txpower 22.00 dBm
lab-sec-2:~ # iw wlan0 scan
BSS 4a:65:c8:86:c3:6a(on wlan0)
last seen: 2195.057s [boottime]
TSF: 33016826 usec (0d, 00:00:33)
freq: 2472
beacon interval: 100 TUs
capability: IBSS (0x0002)
signal: -47.00 dBm
last seen: 0 ms ago
SSID: ExampleIBSS
Supported rates: 1.0* 2.0* 5.5* 11.0* 6.0 9.0 12.0 18.0
DS Parameter set: channel 13
IBSS ATIM window: 0 TUs Extended supported rates: 24.0 36.0 48.0 54.0
HT capabilities:
Capabilities: 0x19ef
RX LDPC
HT20/HT40
SM Power Save disabled
RX HT20 SGI
RX HT40 SGI
TX STBC
RX STBC 1-stream
Max AMSDU length: 7935 bytes
DSSS/CCK HT40
Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
Minimum RX AMPDU time spacing: 4 usec (0x05)
HT Max RX data rate: 300 Mbps
HT TX/RX MCS rate indexes supported: 0-15
HT operation:
* primary channel: 13
* secondary channel offset: below
* STA channel width: any
* RIFS: 0
* HT protection: no
* non-GF present: 0
* OBSS non-GF present: 0
* dual beacon: 0
* dual CTS protection: 0
* STBC beacon: 0
* L-SIG TXOP Prot: 0
* PCO active: 0
* PCO phase: 0
WMM: information: 01 00
++++
====== Laboratoria 2 ======
++++ Ćwiczenia / treści z drugich laboratoriów (stacjonarnych):|
- Podłączenie sprzętu (CISCO)
- Podłącz AP do prądu i do portu szeregowego swojego komputera
- Podłącz się z użyciem konsoli szeregowej do AP i jeśli trzeba, zmaż konfigurację i zresetuj go
- Podłączenie do AP
- Skonfiguruj na AP sieć bezprzewodową
- Z komputera wykonaj skanowanie sieci bezprzewodowych, znajdź nowo stworzoną sieć.
- Połącz się z komputera do swojej sieci bezprzewodowej
- Przełącz kabel sieciowy z karty em1 swojego komputera do AP
- Łączność IP
- Użyj dhcpcd / dhclient do ustawienia adresu IP, bramy, DNSów, …
- Przejrzyj konfigurację AP, zobacz które interfejsy są zmostkowane
- //Teoria: Skąd jest adres IP? Na jakiej warstwie pracuje AP? Jaką rolę w sieci pełni AP?//
- Zbieranie ramek potrzebnych później na zajęciach
- Dodaj interfejs monitora do swojej karty bezprzewodowej
- Nasłuchuj wiresharkiem na interfejsie monitora
- Zabezpieczenia
- Zabezpiecz sieć używając WPA-PSK
- //Teoria: zabezpieczenie sieci bezprzewodowych: WEP, WPA-PSK, WPA-EAP i 802.1X, WPS//
- Ponowne dołączenie do sieci używając wpa_supplicanta
- Ramki
- //Teoria: CSMA/CA, problem ukrytej stacji//
- Przeskanuj sieci, znajdź w wiresharku ramki odpowiadające za szukanie dostępnych sieci + //teoria// + airodump-ng
- Znajdź w wiresharku ramki podłączenia się do sieci + //teoria//
- [przy wątpliwym nadmiarze czasu] wiele sieci z jednego AP
++++
++++ Ćwiczenia / treści z drugich laboratoriów (zdalnych):|
- Podłączenie sprzętu (CISCO)
- Podłącz się z użyciem konsoli szeregowej do AP i jeśli trzeba, zmaż konfigurację i zresetuj go
- Podłączenie do AP
- Skonfiguruj na AP sieć bezprzewodową
- Z komputera wykonaj skanowanie sieci bezprzewodowych, znajdź nowo stworzoną sieć.
- Połącz się z komputera do swojej sieci bezprzewodowej
- Łączność IP
- Użyj dhcpcd / dhclient do ustawienia adresu IP
- Przejrzyj konfigurację AP, zobacz które interfejsy są zmostkowane
- //Teoria: Skąd jest adres IP? Na jakiej warstwie pracuje AP? Jaką rolę w sieci pełni AP?//
- Zabezpieczenia
- Zabezpiecz sieć używając WPA-PSK
- //Teoria: zabezpieczenie sieci bezprzewodowych: WEP, WPA-PSK, WPA-EAP i 802.1X, WPS//
- Ponowne dołączenie do sieci używając wpa_supplicanta
- Zbieranie ramek sieciowych
- Dodaj interfejs monitora do swojej karty bezprzewodowej
- Nasłuchuj wiresharkiem na interfejsie monitora
- W trakcie nasłuchiwania wykonaj skanowanie dostępnych sieci i połącz się z siecią
- Ramki
- //Teoria: CSMA/CA, problem ukrytej stacji//
- Przeskanuj sieci, znajdź w wiresharku ramki odpowiadające za szukanie dostępnych sieci + //teoria// + airodump-ng
- Znajdź w wiresharku ramki podłączenia się do sieci + //teoria//
- [przy wątpliwym nadmiarze czasu] wiele sieci z jednego AP
++++
===== Sieci bezprzewodowe w CISCO =====
Link do materiałów o poruszaniu się w konsoli CISCO z poprzedniego semestru: [[sk1:cisco_wstep]]
\\
Przypomnienie: komenda do obsługi portu szeregowego: ''picocom /dev/ttyS0'' (wyjście: ''ctrl+a ctrl+q'')
Uwaga: domyślne hasło do trybu uprzywilejowanego (''enable'') na AP używanych na zajęciach to **''Cisco''**
Na początku sprawdź komendą ''show startup-config'' wykonaną w trybie uprzywilejowanym czy na urządzeniu nie ma starej konfiguracji.
Jeśli jest - wykonaj ''erase startup-config'', a następnie ''reload''.
Komendy CISCO przydatne do obsługi sieci bezprzewodowych, część 1:
* tryb użytkownika (''>''):
* ''enable'' - przechodzi do trybu uprzywilejowanego
* tryb uprzywilejowany (''#''):
* ''show interfaces description'' - wyświetla stan interfejsów ((Komenda ''show ip interfaces brief'' też wyświetla stan interfejsów, ale tylko dla interfejsów na których może działać protokół IP; ''show interfaces description'' pokaże wszystkie interfejsy))
* ''show dot11 bssid'' - wyświetla listę aktywnych BSSID i ESSID, oraz informację czy sieci są ogłaszane
* ''show dot11 associations [all]'' - wyświetla listę podłączonych stacji
* ''show running-config'' - pokazuje bieżącą konfigurację
* ''configure terminal'' - wchodzi w tryb konfiguracji
* tryb konfiguracji (''(config) #''):
* ''dot11 ssid //nazwa_sieci//'' - wchodzi w konfigurację sieci. \\ W CISCO osobno konfiguruje się ustawienia sieci, osobno przypisuje się sieć do karty sieciowej. \\ Ustawienia sieci (''(config-ssid) #''):
* ''guest-mode'' - ustawienie rozgłaszania sieci; bez tego sieć nie pojawia się w wynikach skanowania
* ''authentication open'' - ustawia otwarte uwierzytelnianie
* ''authentication key-management wpa [version 2]'' - ustawia używanie WPA
* ''wpa-psk ascii //haslo_wpa//'' - ustawienie klucza (hasła) do sieci \\ jeśli wprowadzono dwie powyższe komendy (i nie skonfigurowano EAP), to sieć będzie używać zabezpieczeń WPA-PSK
* ''interface Dot11Radio //numer_karty//'' - wchodzi w konfigurację interfejsu bezprzewodowego. \\ Ustawienia interfejsu (''(config-if) #''):
* ''encryption mode ciphers aes-ccm'' - ustawia jak ma być szyfrowana transmisja \\ ''aes-ccm'' lub starsze ''tkip'' wymusza użycie WPA
* ''ssid //nazwa_sieci//'' - wskazuje którą sieć ma obsługiwać karta
* ''no shutdown'' - włącza interfejs
* ''channel //kanał/częstotliwość_w_mhz//'' - ustawia kanał / częstotliwość
++++ Przykładowa konfiguracja sieci o nazwie ''jakasNazwaSieci'' bez zabezpieczeń: |
dot11 ssid jakasNazwaSieci
authentication open
guest-mode
exit
interface Dot11Radio 1
ssid jakasNazwaSieci
no shut
++++
++++ Przykładowa konfiguracja sieci o nazwie ''innaNazwaSieci'' z zabezpieczeniami WPA-PSK z hasłem (kluczem) ''somePreSharedKey'': |
dot11 ssid jakasNazwaSieci
authentication open
authentication key-management wpa
wpa-psk ascii somePreSharedKey
guest-mode
exit
interface Dot11Radio 1
encryption mode ciphers aes-ccm
ssid jakasNazwaSieci
no shut
++++
Komendy CISCO przydatne do obsługi sieci bezprzewodowych, część 2 - wiele sieci z jednego interfejsu:
* tryb konfiguracji (''(config) #''):
* ''dot11 ssid //nazwa_sieci//'' (''(config-ssid) #''):
* ''mbssid guest-mode'' - ustawienie rozgłaszania sieci; bez tego sieć nie pojawia się w wynikach skanowania ((ustawienie ''guest-mode'' jest ignorowane jeśli karta rozgłasza wiele sieci))
* ''vlan //numer_vlanu//'' - ustawia numer vlanu z którego będą przychodzić dane na interfejsie bezprzewodowym; pozwala to rozróżnić dane z różnych sieci na tym samym interfejsie; (pomysł cisco - częstszy pomysł to osobne wirtualne interfejsy na każdą rozgłaszaną sieć)
* ''interface Dot11Radio //numer_karty//'' (''(config-if) #''):
* ''mbssid'' - zmienia działanie interfejsu tak, by akceptował wiele komend ''ssid'' naraz
* ''encryption vlan //numer_vlanu// mode ciphers //metodySzyfrowania//'' - ustawia jak dane której sieci (identyfikowana przez vlan!) mją być szyfrowane, np: \\ ''encryption vlan 50 mode ciphers aes-ccm'' - nakazuje sieci skonfigurowanej jako vlan 50 użycie WPA
* ''ssid //nazwa_sieci//'' - dodaje kolejną sieć do interfejsu; musi być wpisane po ''mbssid''
* ''interface Dot11Radio //numer_karty//.//numer_vlanu//'' - konfiguruje subintefejs odpowiedzialny za vlan //numer_vlanu//, np: \\ ''interface Dot11Radio0.60'' - vlan 60 na interfejsie Dot11Radio0 \\ Prompt (''(config-subif) #''):
* ''encapsulation dot1Q //numer_vlanu// [native]'' - wymagane, by dało się używać ssidu skonfigurowanego jako vlan //numer_vlanu//, np. \\ ''encapsulation dot1Q 60'' - pozwala włączyć na interfejsie ssid używający vlan 60, a pakiety z pasujących sieci będą pojawiać się na tym subinterfejsie \\ ''encapsulation dot1Q 1 native'' - jak wyżej, plus vlan 1 jest traktowany specjalnie: [[https://www.cisco.com/c/en/us/support/docs/wireless-mobility/wireless-lan-wlan/69773-vlan-ap-config.html#native|dokumentacja cisco]]
* ''bridge-group //numer_mostka//'' - dodaje subinterfejs do mostka; patrz niżej
* ''interface FastEthernet//numer_karty//.//numer_vlanu//'' - konfiguruje vlan na połączeniu ethernetowym, np: \\ ''interface FastEthernet0.60'' - vlan 60 na interfejsie FastEthernet0 \\ Prompt (''(config-subif) #''):
* ''encapsulation dot1Q //numer_vlan//'' - pakuje / rozpakowuje dane do podanego vlanu
* ''bridge-group //numer_mostka//'' - dodaje subinterfejs do mostka \\ połączenie mostkiem np. ''Dot11Radio0.60'' i ''FastEthernet0.60'' przekaże pakiety z sieci bezprzewodowej dla której ustawiono vlan 60 jako vlan 60 po kablu ethernetowym
++++ Przykładowa konfiguracja kilku sieci: |
dot11 ssid SiecZabezpieczona
authentication open
wpa-psk ascii AlaMaKota
authentication key-management wpa
mbssid guest-mode
vlan 1
dot11 ssid SiecOtwarta
authentication open
mbssid guest-mode
vlan 2
interface Dot11Radio0
mbssid
encryption vlan 1 mode ciphers aes-ccm
interface Dot11Radio0.1
encapsulation dot1Q 1 native
interface Dot11Radio0.2
encapsulation dot1Q 2
bridge-group 2
interface Dot11Radio0
ssid SiecZabezpieczona
ssid SiecOtwarta
interface FastEthernet0.2
encapsulation dot1Q 2
bridge-group 2
++++
===== Zabezpieczenia sieci bezprzewodowych =====
Zabezpieczenia sieci bezprzewodowych:
* WEP – nie zapewnia bezpieczeństwa
* WPA (Wi-Fi Protected Access) – implementacja 802.11i zanim powstało 802.11i, w tym szyfrowanie używając:
* [[https://pl.wikipedia.org/wiki/Temporal_Key_Integrity_Protocol|TKIP]]
* opcjonalnie CCMP AES
* [[https://en.wikipedia.org/wiki/IEEE_802.11i-2004|802.11i]] – standard opisujący skuteczne zabezpieczanie sieci bezprzewodowych
* **WPA2** – "handlowa" nazwa implementacji 802.11i, w tym szyfrowanie używając:
* opcjonalnie TKIP
* [[https://en.wikipedia.org/wiki/CCMP_(cryptography)|CCMP (AES)]]
* **WPA3** - ogłoszony w czerwcu 2018 standard, jego obsługa jest wymagana w nowych urządzeniach [[https://www.wi-fi.org/news-events/newsroom/wi-fi-alliance-introduces-wi-fi-certified-wpa3-security|[1]]] [[https://www.wi-fi.org/discover-wi-fi/security|[2]]] [[https://www.wi-fi.org/file/wpa3-security-considerations|[3]]]
* uniemożliwia znane ataki na WPA2 (m. inn. [[https://en.wikipedia.org/wiki/KRACK|KRACK]], lista innych na [[https://en.wikipedia.org/wiki/Wi-Fi_Protected_Access#Security_issues|Wikipedii]])
* uniemożliwia słownikowe ataki offline na sieci zabezpieczone hasłem ([[https://en.wikipedia.org/wiki/Simultaneous_Authentication_of_Equals|SAE]], [[https://www.rfc-editor.org/rfc/rfc7664.html|RFC 7664]])
* umożliwia użycie silniejszej kryptografii (dłuższe klucze i silniejsze protokoły – [[https://en.wikipedia.org/wiki/Galois/Counter_Mode|GCMP]] i oparte na krzywych eliptycznych)
* wymaga zabezpieczania ramkek typu management ([[https://en.wikipedia.org/wiki/IEEE_802.11w-2009|802.11w]])
* w WPA3 odkryto już podatności na inne rodzaje ataków ([[https://wpa3.mathyvanhoef.com/|dragonblood]])
* wraz z WPA3 próbowano wprowadzić rozwiązanie pozwalające tworzyć bezpieczne sieci nie wymagające hasła do połączenia ([[https://www.wi-fi.org/news-events/newsroom/wi-fi-certified-enhanced-open-delivers-data-protection-in-open-wi-fi-networks|Wi-Fi Enhanced-Open]], [[https://www.rfc-editor.org/rfc/rfc8110|RFC 8110]])
* Uwierzytelnianie:
* WPA-Personal
* w WPA i WPA2 – **PSK** ([[https://en.wikipedia.org/wiki/Pre-shared_key|Pre-shared Key]]) \\ znając PSK i słuchając pełnej komunikacji (od nawiązania połączenia) można deszyfrować transmisję
* w WPA3 – **SAE** ([[https://en.wikipedia.org/wiki/Simultaneous_Authentication_of_Equals|Simultaneous Authentication of Equals]])
* WPA-Enterprise – **[[https://en.wikipedia.org/wiki/Extensible_Authentication_Protocol|EAP]]**, [[https://en.wikipedia.org/wiki/IEEE_802.1X|EAPOL]]
* PSK
* TLS
* [[https://en.wikipedia.org/wiki/Protected_Extensible_Authentication_Protocol|PEAP]], TTLS, FAST
* Scentralizowane uwierzytelnianie – [[https://en.wikipedia.org/wiki/RADIUS|RADIUS]] [[http://wiki.freeradius.org/guide/WPA-HOWTO|konfiguracja przykładowego serwera]] \\ Otwarta dokumentacja dla sieci Eduroam – przykład wdrożenia sfederalizowanego uwierzytelniania: [[https://wiki.geant.org/pages/viewpage.action?pageId=121346286|en]], [[https://www.eduroam.pl/index.php?page=doc&lang=pl|pl]]
* **[[https://en.wikipedia.org/wiki/Wi-Fi_Protected_Setup|WPS]]** – rozwiązania mające ułatwić osobom nietechnicznym korzystanie z zabezpieczeń WPA-PSK \\ część implementacji WPS (np. //pin//) nie zapewnia bezpieczeństwa sieci
WEP, WPA{,2,3} dobrze opisuje artykuł: https://www.nastykusieci.pl/wpa3/ i https://www.cyberbajt.pl/raport/377/0/378/
===== Łączenie do AP w Linuksie =====
==== Sieci niezabezpieczone ====
Do sieci niezabezpieczonych, lub zabezpieczonych słabo (z WEP), wystarczy komena ''iwconfig'' / ''iw'':
* ''iwconfig''
* ''iwconfig //wlan0// essid //nazwa_sieci//'' - ustawia nazwę sieci (ESSID), np: \\ ''iwconfig wlan0 essid NiezabezpieczonaSiec''
* ''iwconfig //wlan0// ap {auto|//bssid//}'' - ustawia identyfikator sieci (BSSID), np: \\ ''iwconfig wlan0 ap auto'' - dowolna sieć \\ ''iwconfig wlan0 ap 00:60:1D:01:23:45'' - wybiera konkretny AP o podanym bssid
* ''iwconfig //wlan0// key //klucz_wep//'' - ustawia klucz WEP
* ''iw''
* ''iw [dev] //wlan0// connect //nazwa_sieci// [//bssid//] [key //klucz_wep//]'' - łączy się do sieci //nazwa_sieci//, opcjonalnie wbierając podany AP, opcjonalnie używając klucza WEP, np.: \\ ''iw wlan0 connect NiezabezpieczonaSiec'' - łączy się do sieci o nazwie NiezabezpieczonaSiec
==== Sieci zabezpieczone - wpa_supplicant ====
Do sieci zabezpieczonych z użyciem WPA potrzeba użyć właściwego programu – w Linuksie np. wpa_supplicant.
Suplikant [[http://sjp.pwn.pl/szukaj/suplikant.html|[sjp]]] (klient) w uwierzytelnianiu EAPOL (IEEE_802.1X) to strona która prosi o dostęp. \\ Stąd nazwa programu [[https://wireless.wiki.kernel.org/en/users/documentation/wpa_supplicant|wpa_supplicant]].
wpa_supplicant jest wykorzystywany w Linuksie przez praktycznie wszystkie programy zarządzające siecią (NetworkManager, wicd).
Poza głównym programem (wpa_supplicant), dostarczane jest CLI oraz GUI do zarządzania.
Typowe użycie samego wpa_supplicanta (foreground): \\
''wpa_supplicant -c //config_file// -i //iface// [-d]'' \\
Przykladowe użycie: \\
''wpa_supplicant -i wlan0 -c wpa_supplicant.conf''
Najprostszy plik konfiguracyjny dla WPA-PSK / WPA2-PSK ma postać:
network={
ssid="ssid"
psk="pass"
}
++++ Plik pozwalający na użycie wpa_cli i przykład dla sieci bez zabezpieczeń: |
# Pozwala na komunikację z programem wpa_cli:
ctrl_interface=/var/run/wpa_supplicant
# sieć z WPA-PSK:
network={
ssid="ssid"
psk="pass"
}
# sieć bez zabezpieczeń:
network={
ssid="ssid2"
key_mgmt=NONE
}
++++
++++ Użycie wpa_cli: |
* ''wpa_cli'' - nazwa programu, bez parametrów używa domyślnych ścieżek ((domyślnie szuka gniazda do komunikacji z wpa_supplicant w katalogu /var/run/wpa_supplicant)) \\ Komendy programu:
* ''log_level DEBUG'' - włącza więcej komunikatów
* ''status'' - wyświetla stan połączenia
* ''scan'' - nakazuje skanowanie sieci
* ''reconnect'' - nakazuje połączyć się (lub rozłączyć się i połączyć się ponownie)
* ''reconfigure'' - wczytuje zmiany w pliku konfiguracyjnym
* ''list_networks'' - pokazuje listę sieci wczytanych wcześniej z pliku konfiguracyjnego
++++
Więcej w ''man wpa_supplicant'' i ''man wpa_supplicant.conf''
==== Sieci zabezpieczone - iwd ====
Trwają prace nad nową, lepiej zorganizowaną obsługą bezpieczeństwa sieci bezprzewodowych w Linuksie: iwd (iNet Wireless Daemon). \\
Szczegóły: https://iwd.wiki.kernel.org/
====== Labolatoria 3 ======
===== Zadania, ramki, działanie =====
Zadania w WLAN, poza tymi które znacie z LAN, to:
* skanowanie (beacon, probe) – pasywne zbieranie informacji o dostępnych sieciach, pytanie o listę dostępnych sieci
* uwierzytelnianie (authentication) – w standardzie przewidziano tylko WEP, stąd zwykle używane otwarte; możliwa (choć w praktyce nie zapewniająca bezpieczeństwa) kontrola MAC
* przyłączenie (association)
* mechanizm wielodostępu
* szyfrowanie
* Poza tym: adresacja, fragmentacja, wykrywanie błędów transmisji, retransmisje
Wielodostęp:
* wykorzystywane jest podejście [[https://pl.wikipedia.org/wiki/Carrier_Sense_Multiple_Access|CSMA]]/[[https://en.wikipedia.org/wiki/Multiple_Access_with_Collision_Avoidance|CA]] (por. [[http://www.cs.put.poznan.pl/mkalewski/files/ap.pdf|[1]]] [[https://en.wikipedia.org/wiki/Multiple_Access_with_Collision_Avoidance_for_Wireless|[2]]])
* konkretne rozwiązanie to [[https://en.wikipedia.org/wiki/Distributed_coordination_function|DCF]] lub nowsze [[https://en.wikipedia.org/wiki/IEEE_802.11e-2005#802.11e_MAC_protocol_operation|HCF i EDCA]]
* problem [[https://en.wikipedia.org/wiki/Hidden_node_problem|ukrytej stacji]] i [[https://en.wikipedia.org/wiki/Exposed_node_problem|odkrytej stacji]]