Odnosi się to do 12.04+, ponieważ są to te, które mogłem przetestować, ale mogą być również używane w starszych wersjach. Podzieliłem ten przewodnik na kilka części, na które składają się:
- Część 1 Routery bezprzewodowe bez hasła ani klucza WEP
- Część 2 Routery bezprzewodowe z kluczem bezpieczeństwa WPA lub WPA2
- Część 2.1 Podłączanie do routera WPA za pomocą wpa_supplicant
- Część 2.2 Podłączanie do routera WPA za pomocą Network Managera
- Część 3 Łatwe połączenie za pomocą nmcli
- Część 4 Odłączanie od routera bezprzewodowego
- Część 5 Usuwanie połączenia (w tym plik konfiguracyjny)
- Część 6 Automatyczne połączenie podczas logowania
- Bonus Jak znaleźć nazwę interfejsu sieciowego za pomocą GUI
Poniższych wierszy poleceń można używać do łączenia i rozłączania w zależności od karty sieci bezprzewodowej, zabezpieczeń sieci bezprzewodowej i ustawień routera bezprzewodowego. Przed kontynuowaniem upewnij się, że usługa sieciowa jest włączona (w przypadkach, w których możesz uruchomić Ubuntu w trybie odzyskiwania):
W zależności od wersji Ubuntu należy uruchomić go w jeden z następujących sposobów:
Jeśli używasz SystemD (od 14.10+):
sudo systemctl start networking
Jeśli używasz starszego sposobu init.d: sudo /etc/init.d/networking restart
Jeśli korzystasz ze starszej wersji: sudo service network-manager restart
Część 1: Routery bezprzewodowe bez hasła ani klucza WEP
W przypadkach, gdy router bezprzewodowy nie ma hasła ani zabezpieczeń WEP, wykonaj następujące czynności:
Otwórz terminal i wyszukaj połączenie bezprzewodowe:
iwlist wlan0 s
( S jest dla skanowania. Wlan0 to moja karta bezprzewodowa, ale może być różna dla każdego użytkownika. Niektóre mają eth0, inne wlan2 .. Musisz sudo
wykonać tę opcję. Aby znaleźć nazwę swojej karty bezprzewodowej, po prostu wpisz iwlist i naciśnij TAB. Powinno to automatycznie uzupełnić wiersz o nazwę karty sieciowej. Możesz także wpisać iwconfig
i znaleźć nazwę na liście, która się pojawi.)
Jeśli nie znasz nazwy swojego urządzenia bezprzewodowego, wpisz: urządzenia iwconfig
przewodowe / bezprzewodowe i ich nazwy. Mogą to być coś w rodzaju wlan0, wlan1, eth1, eth2 ..
Wyszukiwanie pokaże wszystkie możliwe punkty dostępu (AP) widoczne dla Ciebie. Gdy zobaczysz router na liście, spróbuj się z nim połączyć:
Jeśli nie ma hasła, wykonaj następujące czynności:
iwconfig wlan0 essid NAME_OF_ACCESS_POINT
Na przykład
iwconfig wlan0 essid CYREX
następnie upewnij się, że używasz, dhclient
aby uzyskać dynamiczny adres IP na wypadek, gdyby router nie przypisał go. To powinno dać ci połączenie z routerem CYREX.
Jeśli ma hasło, wykonaj następujące czynności:
iwconfig wlan0 essid CYREX key PASSWORD
To powinno połączyć się przy użyciu HASŁA, które tam podałeś.
Ponownie wykonaj dhclient
po podłączeniu, aby upewnić się, że masz przypisany adres IP.
Zapewnienie prawidłowego połączenia jest zawsze dobre, dlatego należy wykonać tę czynność, iwconfig
aby upewnić się, że karta bezprzewodowa jest podłączona do wspomnianego powyżej identyfikatora SSID. Powinien on pokazywać podłączone urządzenie i przypisany Ci adres IP. Jeśli nie i wyświetla błąd, taki jak Interfejs nie obsługuje skanowania, wypróbuj następujące 2 opcje:
- Sprawdź, czy Twój interfejs jest włączony:
sudo ifconfig wlan0 up
- Spróbuj dodać
sudo
podczas skanowania:sudo iwlist wlan0 s
Spróbuj obniżyć urządzenie, a następnie wykonać kopię zapasową:
sudo ifconfig wlan0 down
sudo ifconfig wlan0 up
Część 2: Routery bezprzewodowe z kluczem bezpieczeństwa WPA lub WPA2
W przypadkach, gdy router bezprzewodowy ma hasło WPA / WPA2, można to zrobić na kilka sposobów. Wspomnę o 2 najpopularniejszych:
Otwórz terminal i wyszukaj połączenie bezprzewodowe:
iwlist wlan0 s
( S jest dla skanowania. Wlan0 to moja karta bezprzewodowa, ale może być różna dla każdego użytkownika. Niektóre mają eth0, inne wlan2 .. Musisz sudo
wykonać tę opcję. Aby znaleźć nazwę swojej karty bezprzewodowej, po prostu wpisz iwlist i naciśnij TAB. Powinno to automatycznie uzupełnić wiersz o nazwę karty sieciowej. Możesz także wpisać iwconfig
i znaleźć nazwę na liście, która się pojawi.)
Jeśli nie znasz nazwy swojego urządzenia bezprzewodowego, wpisz: urządzenia iwconfig
przewodowe / bezprzewodowe i ich nazwy. Mogą to być coś w rodzaju wlan0, wlan1, eth1, eth2 ..
Wyszukiwanie pokaże wszystkie możliwe punkty dostępu (AP) widoczne dla Ciebie. Gdy zobaczysz router na liście, spróbuj się z nim połączyć:
Część 2.1 PRZEWODNIK DOSTAWCY WPA: Podłączanie do routera WPA za pomocą wpa_supplicant
Wpisz następujące polecenie w terminalu (zakładając, że masz wpasupplicant
zainstalowany pakiet, który instaluje wszystkie potrzebne polecenia, których tu użyjemy):
wpa_passphrase SSID PASSWORD > CONFIG_FILE
Przykład: wpa_passphrase Virus LinuxFTW > wpa.conf
Gdzie Virus to nazwa mojego routera, LinuxFTW to moje hasło i wpa.conf
plik, w którym chcę przechowywać wszystkie te informacje. Pamiętaj, że możesz zapisać plik w innym miejscu, w którym wielu użytkowników zapisuje plik /etc/wpa_supplicant.conf
zamiast wpa.conf
. Dane pliku wpa.conf powinny wyglądać mniej więcej tak:
network={
ssid="Virus"
#psk="LinuxFTW"
psk=1d538d505f48205589ad25b2ca9f52f9cbb67687e310c58a8dd940ccc03fbfae
}
Do tego momentu powinniśmy znać nazwę naszego interfejsu karty bezprzewodowej (np .: Wlan0, eth2, Wlan2 ...). Musimy teraz wiedzieć, który sterownik jest w użyciu. w tym celu wpisujemy:
wpa_supplicant
Powinno pokazać nam wiele informacji, ale będzie sekcja o nazwie ** Sterowniki *, która pokazuje wszystkie dostępne sterowniki (są one dostępne podczas kompilacji wpa_supplicant
). W moim przypadku wygląda to tak:
drivers:
wext = Linux wireless extensions (generic)
nl80211 = Linux nl80211/cfg80211
wired = Wired Ethernet driver
none = no driver (RADIUS server/WPS ER)
Cała lista to hostap, hermes, madwifi, wext, broadcom, przewodowy, roboswitch, bsd, ndis. Może się to zmienić w zależności od tego, jak wpa_supplicant
zostało skompilowane, ale ten, który dla mnie pokazuje, powinien być podobny do tego w twoim systemie. Większość użytkowników wybierze wext
sterownik.
Teraz, gdy mamy już nazwę karty interfejsu bezprzewodowego i nazwę sterownika, przystępujemy do łączenia się z nią przy użyciu już utworzonego pliku konfiguracyjnego w następującym formacie:
wpa_supplicant -iINTERFACE_NAME -cCONFIGURATION_FILE -DDRIVER_NAME
Na przykład:
wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf -Dwext
Gdzie -i
jest nazwa karty interfejsu, -c
gdzie znajduje się plik konfiguracji i -D
nazwa sterownika, którego będziesz używać do łączenia. Jeśli łączy się poprawnie, naciśnij CTRL+, Caby anulować, a następnie ponownie uruchomić linię, ale tym razem wysyłamy ją w tle -B
, abyśmy mogli nadal używać terminala:
wpa_supplicant -B -iwlan0 -c/etc/wpa_supplicant.conf -Dwext
Następnie po prostu wykonaj a, sudo dhclient wlan0
aby uzyskać adres IP z routera.
Niektórzy użytkownicy zgłosili usunięcie skrótu i pozostawienie tylko hasła w konfiguracji, na przykład:
network={
ssid="Virus"
psk="LinuxFTW"
}
Inni dodali ssid_scan do pliku konfiguracyjnego:
network={
ssid="Virus"
scan_ssid=1
#psk="LinuxFTW"
psk=1d538d505f48205589ad25b2ca9f52f9cbb67687e310c58a8dd940ccc03fbfae
}
Lub nawet dodanie typu klucza:
network={
ssid="Virus"
scan_ssid=1
key_mgmt=WPA-PSK
#psk="LinuxFTW"
psk=1d538d505f48205589ad25b2ca9f52f9cbb67687e310c58a8dd940ccc03fbfae
}
Więcej informacji na ten temat w man wpa_supplicant.conf
Część 2.2 PRZEWODNIK PO ZARZĄDZANIU SIECI: Podłączanie do routera WPA za pomocą Network Managera
Zaletą menedżera sieci jest to, że zawiera kilka ładnych skryptów i narzędzi. Dwa z nich to nmcli
i create_connection
(Neat Python 3 script), którego użyjemy w tym przypadku.
Po wykonaniu kroków wymienionych wcześniej, aby znaleźć nazwę SSID routera (pamiętaj o części iwlist
powyżej), wykonujemy następujące czynności:
sudo /usr/share/checkbox/scripts/create_connection -S SECURITY_TYPE -K PASSWORD SSID_NAME
Tam, gdzie BEZPIECZEŃSTWO jest rodzajem bezpieczeństwa, z którego korzysta router (WPA, WEP), HASŁO to ... no cóż ... hasło, a SSID_NAME to nazwa SSID routera. Na przykład:
sudo /usr/share/checkbox/scripts/create_connection -S wpa -K LinuxFTW Virus
Utworzy połączenie dla Network Managera, które powinno wyglądać mniej więcej tak:
$ sudo /usr/share/checkbox/scripts/create_connection -S wpa -K LinuxFTW Virus
[sudo] password for cyrex:
Connection Virus registered
Connection Virus activated.
Następnie powinieneś otrzymać adres IP z routera. Jeśli nie, po prostu zrób sudo dhclient wlan0
(Zakładając, że wlan0 to nazwa twojego interfejsu). Można również sprawdzić połączenia się z administratorem sieci w użyciu nmcli tak: nmcli c
co powinno pokazać coś takiego:
$ nmcli c
NAME UUID TYPE TIMESTAMP-REAL
Xcentral f51a5a64-8a91-47d6-897c-28efcd84d2b0 802-11-wireless Fri 22 Mar 2013 02:25:54 PM VET
Realtek 9ded7740-ad29-4c8f-861f-84ec4da87f8d 802-3-ethernet Tue 05 Mar 2013 01:18:31 AM VET
Intel e25b1fd8-c4ff-41ac-a6bc-22620296f01c 802-3-ethernet Fri 05 Apr 2013 10:04:05 PM VET
Virus 3f8ced55-507b-4558-a70b-0d260441f570 802-11-wireless Tue 09 Apr 2013 06:31:10 AM VET
Wspominam o sposobie menedżera sieci, ponieważ istnieje kilka przypadków, w których korzystanie wpa_supplicant
po prostu nie działa (problemy między routerem a kartą bezprzewodową, problemy z bezpieczeństwem itp.). W moim przypadku wszystkie próby użycia wpa_supplicant
na jednym komputerze nie działały, ale na innym działały za pierwszym razem. Zamieszczam więc obie metody, aby pomóc w każdej sprawie i ułatwić użytkownikom podejmowanie decyzji, które z nich chcą.
Część 3: Łatwe połączenie za pomocą nmcli
Chociaż rozmawialiśmy o sposobach łączenia się z nim bez menedżera sieci, zdarza się również, że stosuje nmcli (wersja menedżera sieci w wersji CLI). Aby to zrobić, wykonujemy następujące czynności:
Sprawdź, który ESSID możemy zobaczyć:
nmcli dev wifi
Sprawdź nazwę ESSID i kontynuujemy używanie go w następnym wierszu, w tym hasło do niego wymagane (w tym hasła typu WEP i WPA):
nmcli dev wifi connect ESSID_NAME password ESSID_PASSWORD
Oto przykład mojego połączenia z ESSID Linux5G
Jeśli masz na komputerze wiele urządzeń bezprzewodowych, możesz określić, którego z nich użyć, używając ifname
parametru w następujący sposób:
nmcli dev wifi connect ESSID_NAME hasło ESSID_PASSWORD ifname WIRELESS_DEVICE_NAME
Na przykład w moim przypadku nazwa urządzenia jest wlp9s0
taka, że użyłbym tego wiersza, aby określić urządzenie, którego będę używać do łączenia się z:
Więcej informacji o nmcli można uzyskać za pomocą parametru pomocy. Na przykład, jeśli chcesz wiedzieć o nmcli dev
sobie, pisz nmcli dev help
. Jeśli chcesz dowiedzieć się więcej nmcli dev wifi
, wpisz nmcli dev wifi help
i tak dalej.
Część 4: Odłączanie od routera bezprzewodowego
Można to osiągnąć na kilka sposobów:
Rozłącz przez „siłę”: sudo ifconfig wlan0 down
Spowoduje to wyłączenie interfejsu karty bezprzewodowej (sterownik wyłączy się). Aby włączyć, wystarczy wpisać ifconfig wlan0 up
a sudo dhclient wlan0
. Nadal będzie wyświetlany jako podłączony, jeśli zostanie wyświetlony przez Menedżera sieci, ale tak naprawdę nie będzie połączenia z routerem. Próba ping
spowoduje connect: Network is unreachable
błąd.
Zwolnij adres IP DHCP: sudo dhclient -r wlan0
Pamiętaj, aby zrobić, sudo dhclient wlan0
aby ponownie przypisać sobie adres IP.
Odłącz za pomocą Network Managera: nmcli nm enable false
Gdzie nm jest parametrem nmcli, który zarządza i ustawia stany Network Managera. Ta opcja enable
może mieć wartość true lub false , co oznacza, że jeśli zostanie ustawiona na false , wszystkie połączenia sieciowe zarządzane przez Network Managera zostaną rozłączone. zauważ, że nmcli nie potrzebuje uprawnień roota.
Aby zobaczyć status typu Menedżera sieci nmcli nm
, powinien pokazywać coś podobnego do tego:
$ nmcli nm
RUNNING STATE WIFI-HARDWARE WIFI WWAN-HARDWARE WWAN
running connected enabled enabled enabled enabled
Innym sposobem włączenia lub wyłączenia połączenia (Łączenie / Rozłączanie) jest wykonanie następujących czynności:
nmcli c down id NAME` - Will disconnect the connection NAME
nmcli c up id NAME` - Will connect the connection NAME
Część 5: Usuwanie połączenia
Usunięcie istniejącego połączenia jest dość łatwe. Pierwszy typ w terminalu:
nmcli c
Wyprowadzi coś takiego:
$ nmcli c
NAME UUID TYPE TIMESTAMP-REAL
Realtek 9ded7740-ad29-4c8f-861f-84ec4da87f8d 802-3-ethernet Tue 05 Mar 2013 01:18:31 AM VET
PrivateSys 86b2b37d-4835-44f1-ba95-46c4b747140f 802-11-wireless Sun 21 Apr 2013 07:52:57 PM VET
pepe 9887664b-183a-45c0-a81f-27d5d0e6d9d8 802-11-wireless Thu 18 Apr 2013 02:43:05 AM VET
Virus 3f8ced55-507b-4558-a70b-0d260441f570 802-11-wireless Tue 16 Apr 2013 11:33:24 AM VET
Intel e25b1fd8-c4ff-41ac-a6bc-22620296f01c 802-3-ethernet Sun 21 Apr 2013 08:12:29 PM VET
Xcentral f51a5a64-8a91-47d6-897c-28efcd84d2b0 802-11-wireless Fri 22 Mar 2013 02:25:54 PM VET
Powiedzmy, że chcemy usunąć Xcentral , a następnie kontynuujemy następującą komendę:
nmcli c delete id Xcentral
Po zrobieniu powinno to wyglądać mniej więcej tak:
$ nmcli c delete id Xcentral
$ nmcli c
NAME UUID TYPE TIMESTAMP-REAL
Realtek 9ded7740-ad29-4c8f-861f-84ec4da87f8d 802-3-ethernet Tue 05 Mar 2013 01:18:31 AM VET
PrivateSys 86b2b37d-4835-44f1-ba95-46c4b747140f 802-11-wireless Sun 21 Apr 2013 07:52:57 PM VET
pepe 9887664b-183a-45c0-a81f-27d5d0e6d9d8 802-11-wireless Thu 18 Apr 2013 02:43:05 AM VET
Virus 3f8ced55-507b-4558-a70b-0d260441f570 802-11-wireless Tue 16 Apr 2013 11:33:24 AM VET
Intel e25b1fd8-c4ff-41ac-a6bc-22620296f01c 802-3-ethernet Sun 21 Apr 2013 08:12:29 PM VET
Wszystkie połączenia są przechowywane w /etc/NetworkManager/system-connections/
Gdybym teraz zajrzał do tego folderu, zobaczyłbym następujące pliki:
$ ls /etc/NetworkManager/system-connections
Intel pepe PrivateSys Realtek Virus
Jest tak tylko w przypadku, gdy chcesz ręcznie edytować / usunąć / dodać połączenie.
Część 6: Automatyczne połączenie podczas logowania
W przypadkach, w których chcesz automatycznie zalogować się do routera bezprzewodowego, wykonaj następujące czynności:
Otwórz interface
plik:
sudo nano /etc/network/interfaces
Dodaj następujące informacje (Zakładając, że twój interfejs nazywa się wlan0):
auto wlan0
iface wlan0 inet static
address ASSIGNED_IP
netmask 255.255.255.0
gateway THE_GATEWAY
wireless-essid YOURSSID
wireless-key WIRELESSKEY_HERE
Zapisz plik i uruchom ponownie komputer. Pamiętaj, że zostanie to zapisane w zwykłym pliku tekstowym, do którego można uzyskać dostęp z tego samego komputera.
Bonus: znajdź nazwę swojego połączenia bezprzewodowego Styl GUI
Kliknij Network Manager i przejdź do Informacje o połączeniu
Przejdź do zakładki, w której znajduje się twoja karta bezprzewodowa
Na tym obrazie ta karta sieciowa nosi nazwę eth1 (wewnątrz nawiasu), ale może być różna dla każdego użytkownika. Zwykle byłby to wlan (jak wlan0, wlan1, wlan2 ...), ale może to być także eth1, eth2 itd. Więc musisz zobaczyć, jaką ma nazwę.
Innym sposobem szybkiego znalezienia nazwy jest wpisanie, iwconfig
która pokaże wszystkie dostępne karty sieci bezprzewodowej.