Różnice między wybraną wersją a wersją aktualną.
sk2:wlan:sec_linux_commands [2023/12/06 23:45] jkonczak utworzono |
sk2:wlan:sec_linux_commands [2023/12/12 17:53] (aktualna) jkonczak |
||
---|---|---|---|
Linia 1: | Linia 1: | ||
- | |||
===== Łączenie do AP w Linuksie ===== | ===== Łączenie do AP w Linuksie ===== | ||
==== Sieci niezabezpieczone ==== | ==== Sieci niezabezpieczone ==== | ||
- | Do sieci niezabezpieczonych, lub zabezpieczonych słabo (z WEP), wystarczy komena ''iwconfig'' / ''iw'': | + | Do sieci niezabezpieczonych, lub "zabezpieczonych" przy użyciu z WEP, wystarczy komenda ''iwconfig'' / ''iw'': |
* ''iwconfig'' | * ''iwconfig'' | ||
* ''iwconfig //wlan0// essid //nazwa_sieci//'' - ustawia nazwę sieci (ESSID), np: \\ ''iwconfig wlan0 essid NiezabezpieczonaSiec'' | * ''iwconfig //wlan0// essid //nazwa_sieci//'' - ustawia nazwę sieci (ESSID), np: \\ ''iwconfig wlan0 essid NiezabezpieczonaSiec'' | ||
Linia 10: | Linia 9: | ||
* ''iwconfig //wlan0// key //klucz_wep//'' - ustawia klucz WEP | * ''iwconfig //wlan0// key //klucz_wep//'' - ustawia klucz WEP | ||
* ''iw'' | * ''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 | + | * ''iw [dev] //wlan0// connect //nazwa_sieci// [//bssid//] [key //klucz_wep//]'' - łączy się do sieci //nazwa_sieci//, opcjonalnie wybierają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 ==== | ==== Sieci zabezpieczone - wpa_supplicant ==== | ||
- | Do sieci zabezpieczonych z użyciem WPA potrzeba użyć właściwego programu – w Linuksie np. wpa_supplicant. | + | Do sieci zabezpieczonych z użyciem WPA potrzeba użyć właściwego programu – w Linuksie np. ''wpa_supplicant''. |
+ | <small> | ||
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]]. | 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]]. | ||
+ | </small> | ||
- | wpa_supplicant jest wykorzystywany w Linuksie przez praktycznie wszystkie programy zarządzające siecią (NetworkManager, wicd). | + | ''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 <html><small></html> oraz GUI <html></small></html> do zarządzania. | + | Poza głównym programem (''wpa_supplicant''), dostarczane jest CLI <html><small></html> oraz GUI <html></small></html> do zarządzania. |
- | Typowe użycie samego wpa_supplicanta (foreground): \\ | + | Typowe użycie samego ''wpa_supplicanta'' (foreground): \\ |
''wpa_supplicant -c //config_file// -i //iface// [-d]'' \\ | ''wpa_supplicant -c //config_file// -i //iface// [-d]'' \\ | ||
- | Przykladowe użycie: \\ | + | <small>np: ''wpa_supplicant -i wlan0 -c wpa_supplicant.conf''</small> |
- | ''wpa_supplicant -i wlan0 -c wpa_supplicant.conf'' | + | |
- | Najprostszy plik konfiguracyjny dla WPA-PSK / WPA2-PSK ma postać:<code> | + | **''wpa_supplicant'' musi działać bez przerwy** – nasłuchuje na i obsługuje |
- | network={ | + | żądania zmiany kluczy szyfrowania, oraz po rozłączeniu z siecią próbuje |
- | ssid="ssid" | + | ponownie podłączyć się do sieci (o ile nie został skonfigurowany inaczej). |
- | psk="pass" | + | |
- | } | + | |
- | </code> | + | |
- | <html><small></html> | + | Plik konfiguracyjny programu ''wpa_supplicant'' składa się z listy globalnych |
+ | ustawień oraz listy sieci. | ||
- | ++++ Plik pozwalający na użycie wpa_cli i przykład dla sieci bez zabezpieczeń: | <code> | + | <small> |
- | # Pozwala na komunikację z programem wpa_cli: | + | Dodanie do pliku linii: |
+ | <html><div style="margin-top:-1.2em"/></html> | ||
ctrl_interface=/var/run/wpa_supplicant | ctrl_interface=/var/run/wpa_supplicant | ||
- | + | <html><div style="margin-top:-1.2em"/></html> | |
- | # sieć z WPA-PSK: | + | pozwoli na użycie programu wpa_cli do kontroli programu wpa_supplicant. |
- | network={ | + | <html><div style="margin-top:-1.2em"/></html> |
- | ssid="ssid" | + | |
- | psk="pass" | + | |
- | } | + | |
- | + | ||
- | # sieć bez zabezpieczeń: | + | |
- | network={ | + | |
- | ssid="ssid2" | + | |
- | key_mgmt=NONE | + | |
- | } | + | |
- | </code> | + | |
- | ++++ | + | |
++++ Użycie wpa_cli: | | ++++ 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: | + | * ''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)) \\ Przykładowe komendy programu: |
* ''log_level DEBUG'' - włącza więcej komunikatów | * ''log_level DEBUG'' - włącza więcej komunikatów | ||
* ''status'' - wyświetla stan połączenia | * ''status'' - wyświetla stan połączenia | ||
Linia 62: | Linia 49: | ||
* ''list_networks'' - pokazuje listę sieci wczytanych wcześniej z pliku konfiguracyjnego | * ''list_networks'' - pokazuje listę sieci wczytanych wcześniej z pliku konfiguracyjnego | ||
++++ | ++++ | ||
+ | </small> | ||
- | <html></small></html> | + | Definicja sieci bez zabezpieczeń: |
+ | <html><div style="margin-top:-1.2em"/></html> | ||
+ | network={ | ||
+ | ssid="nazwasieci" | ||
+ | key_mgmt=NONE | ||
+ | } | ||
+ | Definicja szyfrowanej sieci bez uwierzytelniania – OWE / Wi-Fi Enhanced Open: | ||
+ | <html><div style="margin-top:-1.2em"/></html> | ||
+ | network={ | ||
+ | ssid="nazwasieci" | ||
+ | key_mgmt=OWE | ||
+ | } | ||
+ | |||
+ | Definicja sieci WPA-PSK / WPA2-PSK | ||
+ | <html><div style="margin-top:-1.2em"/></html> | ||
+ | network={ | ||
+ | ssid="nazwasieci" | ||
+ | psk="haslodosieci" | ||
+ | } | ||
+ | |||
+ | Definicja sieci WPA3-SAE: | ||
+ | <html><div style="margin-top:-1.2em"/></html> | ||
+ | network={ | ||
+ | ssid="nazwasieci" | ||
+ | key_mgmt=SAE | ||
+ | sae_password="haslo" | ||
+ | ieee80211w=2 | ||
+ | } | ||
- | Więcej w ''man wpa_supplicant'' i ''man wpa_supplicant.conf'' | + | <small> |
+ | Pełna składnia pliku konfiguracyjnego jest w | ||
+ | [[https://w1.fi/cgit/hostap/plain/wpa_supplicant/wpa_supplicant.conf|przykładowym pliku konfiguracyjnym]] | ||
+ | dystrybuowanym razem z programem wpa_supplicant. | ||
+ | \\ | ||
+ | Warto zajrzeć też do ''man wpa_supplicant'' i ''man wpa_supplicant.conf'' | ||
+ | </small> | ||
- | <html><small></html> | + | <small> |
==== Sieci zabezpieczone - iwd ==== | ==== Sieci zabezpieczone - iwd ==== | ||
Trwają prace nad nową, lepiej zorganizowaną obsługą bezpieczeństwa sieci bezprzewodowych w Linuksie: iwd (iNet Wireless Daemon). \\ | 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/ | Szczegóły: https://iwd.wiki.kernel.org/ | ||
- | <html></small></html> | + | </small> |