Điều này áp dụng cho 12.04+ vì đây là những cái tôi có thể kiểm tra nhưng cũng có thể được sử dụng trong các phiên bản cũ hơn. Tôi đã tách hướng dẫn này thành nhiều phần, bao gồm:
- Phần 1 Bộ định tuyến không dây không có mật khẩu hoặc Khóa WEP
- Phần 2 Bộ định tuyến không dây có khóa bảo mật WPA hoặc WPA2
- Phần 2.1 Kết nối với Bộ định tuyến WPA bằng wpa_supplicant
- Phần 2.2 Kết nối với Bộ định tuyến WPA bằng Trình quản lý mạng
- Phần 3 Kết nối dễ dàng qua nmcli
- Phần 4 Ngắt kết nối với Bộ định tuyến không dây
- Phần 5 Xóa kết nối (Bao gồm tệp cấu hình)
- Phần 6 Tự động kết nối khi đăng nhập
- Phần thưởng Cách tìm tên giao diện mạng của bạn thông qua GUI
Các dòng lệnh sau có thể được sử dụng để kết nối và ngắt kết nối tùy thuộc vào Thẻ không dây, bảo mật không dây và cài đặt bộ định tuyến không dây. Trước khi tiếp tục, hãy đảm bảo dịch vụ mạng được bật (Đối với trường hợp bạn có thể khởi động Ubuntu bằng chế độ Khôi phục):
Tùy thuộc vào Phiên bản Ubuntu của bạn, bạn sẽ cần khởi động nó bằng một trong những cách sau:
Nếu sử dụng SystemD (kể từ 14.10+):
sudo systemctl start networking
Nếu sử dụng cách init.d của Legacy: sudo /etc/init.d/networking restart
Nếu sử dụng cách bắt đầu kế thừa: sudo service network-manager restart
Phần 1: Bộ định tuyến không dây không có mật khẩu hoặc khóa WEP
Đối với trường hợp bộ định tuyến không dây không có mật khẩu hoặc bảo mật WEP, hãy làm như sau:
Mở thiết bị đầu cuối và tìm kiếm kết nối không dây:
iwlist wlan0 s
(Các s là cho Scan. Wlan0 là card không dây của tôi, nhưng có thể là khác nhau cho mỗi người dùng. Một số có eth0, những người khác wlan2 .. Bạn cần sudo
để thực hiện điều này option.To tìm ra tên của card không dây của bạn chỉ cần gõ iwlist và nhấn TAB. Điều này sẽ tự động hoàn thành dòng với tên của card mạng. Bạn cũng có thể nhập iwconfig
và tìm tên trong danh sách sẽ hiển thị.)
Nếu bạn không biết tên loại thiết bị không dây của mình: loại iwconfig
này sẽ hiển thị cho bạn các thiết bị có dây / không dây và tên của chúng. Chúng có thể là một cái gì đó như wlan0, wlan1, eth1, eth2 ..
Việc tra cứu sẽ hiển thị cho bạn tất cả các Điểm truy cập (AP) có thể hiển thị cho bạn. Sau khi bạn thấy bộ định tuyến của mình trong danh sách, hãy thử kết nối với nó:
Nếu nó không có mật khẩu, hãy làm như sau:
iwconfig wlan0 essid NAME_OF_ACCESS_POINT
Ví dụ
iwconfig wlan0 essid CYREX
sau đó, đảm bảo sử dụng dhclient
để bạn có thể nhận được IP động trong trường hợp bạn không được gán bởi bộ định tuyến. Điều đó sẽ khiến bạn kết nối với bộ định tuyến CYREX.
Nếu nó có mật khẩu thì làm:
iwconfig wlan0 essid CYREX key PASSWORD
Điều đó sẽ kết nối bằng cách sử dụng PASSWORD mà bạn đã đưa ra ở đó.
Một lần nữa, làm dhclient
sau khi kết nối để đảm bảo bạn được gán IP.
Đảm bảo rằng bạn được kết nối chính xác luôn tốt, vì vậy hãy thực hiện iwconfig
để đảm bảo thẻ không dây của bạn được kết nối với SSID mà bạn đã đề cập ở trên. Nó sẽ hiển thị thiết bị của bạn được kết nối và IP được gán cho bạn. Nếu không và cung cấp cho bạn một lỗi như Giao diện không hỗ trợ quét, hãy thử 2 tùy chọn sau:
Phần 2: Bộ định tuyến không dây có khóa bảo mật WPA hoặc WPA2
Đối với trường hợp bộ định tuyến không dây có mật khẩu WPA / WPA2, có một số cách để thực hiện việc này. Tôi sẽ đề cập đến 2 cái phổ biến nhất ::
Mở thiết bị đầu cuối và tìm kiếm kết nối không dây:
iwlist wlan0 s
(Các s là cho Scan. Wlan0 là card không dây của tôi, nhưng có thể là khác nhau cho mỗi người dùng. Một số có eth0, những người khác wlan2 .. Bạn cần sudo
để thực hiện tùy chọn này. Để tìm hiểu tên của card không dây của bạn chỉ cần gõ iwlist và nhấn TAB. Điều này sẽ tự động hoàn thành dòng với tên của card mạng. Bạn cũng có thể nhập iwconfig
và tìm tên trong danh sách sẽ hiển thị.)
Nếu bạn không biết tên loại thiết bị không dây của mình: loại iwconfig
này sẽ hiển thị cho bạn các thiết bị có dây / không dây và tên của chúng. Chúng có thể là một cái gì đó như wlan0, wlan1, eth1, eth2 ..
Việc tra cứu sẽ hiển thị cho bạn tất cả các Điểm truy cập (AP) có thể hiển thị cho bạn. Sau khi bạn thấy bộ định tuyến của mình trong danh sách, hãy thử kết nối với nó:
Phần 2.1 HƯỚNG DẪN CUNG CẤP WPA: Kết nối với Bộ định tuyến WPA bằng wpa_supplicant
Nhập nội dung sau vào thiết bị đầu cuối (Giả sử bạn đã wpasupplicant
cài đặt gói cài đặt tất cả các lệnh cần thiết, chúng tôi sẽ sử dụng ở đây):
wpa_passphrase SSID PASSWORD > CONFIG_FILE
Thí dụ: wpa_passphrase Virus LinuxFTW > wpa.conf
Trong đó Virus là tên của bộ định tuyến của tôi, LinuxFTW là mật khẩu của tôi và wpa.conf
là tệp tôi muốn lưu trữ tất cả thông tin này. Lưu ý rằng bạn có thể lưu tệp ở nơi khác, nhiều người dùng lưu tệp /etc/wpa_supplicant.conf
thay vì wpa.conf
. Dữ liệu của tệp wpa.conf phải giống như thế này:
network={
ssid="Virus"
#psk="LinuxFTW"
psk=1d538d505f48205589ad25b2ca9f52f9cbb67687e310c58a8dd940ccc03fbfae
}
Cho đến thời điểm này, chúng ta nên biết tên của giao diện thẻ không dây của mình (ví dụ: Wlan0, eth2, Wlan2 ...). Bây giờ chúng ta cần biết Driver nào đang được sử dụng. Đối với điều này, chúng tôi gõ:
wpa_supplicant
Nó sẽ hiển thị cho chúng tôi rất nhiều thông tin, nhưng sẽ có một phần có tên ** Trình điều khiển * hiển thị tất cả các trình điều khiển khả dụng (Chúng có sẵn khi biên dịch wpa_supplicant
). Trong trường hợp của tôi nó là như thế này:
drivers:
wext = Linux wireless extensions (generic)
nl80211 = Linux nl80211/cfg80211
wired = Wired Ethernet driver
none = no driver (RADIUS server/WPS ER)
Toàn bộ danh sách là hostap, hermes, madwifi, wext, broadcom, Wired, roboswitch, bsd, ndis. Điều này có thể thay đổi tùy thuộc vào cách wpa_supplicant
biên dịch, nhưng cái được hiển thị cho tôi phải giống với cái trên hệ thống của bạn. Hầu hết người dùng sẽ chọn wext
trình điều khiển.
Vì vậy, bây giờ chúng tôi có tên thẻ giao diện không dây và tên trình điều khiển, chúng tôi tiến hành kết nối với nó bằng tệp cấu hình đã được tạo bằng định dạng sau:
wpa_supplicant -iINTERFACE_NAME -cCONFIGURATION_FILE -DDRIVER_NAME
Ví dụ:
wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf -Dwext
Trong trường hợp -i
là name card giao diện của bạn, -c
là nơi tập tin cấu hình của bạn là gì và -D
là tên của người lái xe, bạn sẽ được sử dụng để kết nối. Nếu nó kết nối chính xác, sau đó chúng tôi nhấn CTRL+ Cđể hủy nó và sau đó thực hiện lại dòng nhưng lần này chúng tôi gửi nó xuống nền -B
để chúng tôi có thể tiếp tục sử dụng thiết bị đầu cuối:
wpa_supplicant -B -iwlan0 -c/etc/wpa_supplicant.conf -Dwext
Sau đó, chỉ cần làm một sudo dhclient wlan0
để có được một IP từ bộ định tuyến.
Một số người dùng đã báo cáo xóa Hash và chỉ để lại mật khẩu trong cấu hình, ví dụ:
network={
ssid="Virus"
psk="LinuxFTW"
}
Những người khác đã thêm ssid_scan vào tệp cấu hình:
network={
ssid="Virus"
scan_ssid=1
#psk="LinuxFTW"
psk=1d538d505f48205589ad25b2ca9f52f9cbb67687e310c58a8dd940ccc03fbfae
}
Hoặc thậm chí thêm loại Khóa:
network={
ssid="Virus"
scan_ssid=1
key_mgmt=WPA-PSK
#psk="LinuxFTW"
psk=1d538d505f48205589ad25b2ca9f52f9cbb67687e310c58a8dd940ccc03fbfae
}
Thêm thông tin về điều này trong man wpa_supplicant.conf
Phần 2.2 HƯỚNG DẪN QUẢN LÝ MẠNG: Kết nối với Bộ định tuyến WPA bằng Trình quản lý mạng
Điều tốt về quản lý mạng là nó đi kèm với một vài kịch bản và công cụ hay. Hai trong số này là nmcli
và create_connection
(Neat Python 3 script) mà chúng ta sẽ sử dụng trong trường hợp này.
Sau khi thực hiện các bước được đề cập trước đó để tìm tên SSID của bộ định tuyến của bạn (Hãy nhớ phần iwlist
bên trên), chúng tôi thực hiện như sau:
sudo /usr/share/checkbox/scripts/create_connection -S SECURITY_TYPE -K PASSWORD SSID_NAME
Trong đó AN NINH là loại bảo mật mà Bộ định tuyến sử dụng (WPA, WEP), PASSWORD là .. tốt .. mật khẩu và SSID_NAME là Tên SSID của Bộ định tuyến. Ví dụ:
sudo /usr/share/checkbox/scripts/create_connection -S wpa -K LinuxFTW Virus
Sẽ tạo một kết nối cho Trình quản lý mạng trông giống như thế này:
$ sudo /usr/share/checkbox/scripts/create_connection -S wpa -K LinuxFTW Virus
[sudo] password for cyrex:
Connection Virus registered
Connection Virus activated.
Sau này, bạn sẽ nhận được IP được gán từ bộ định tuyến. Nếu không chỉ đơn giản là làm sudo dhclient wlan0
(Giả sử wlan0 là tên giao diện của bạn). Bạn cũng có thể kiểm tra các kết nối của người quản lý mạng của mình bằng cách sử dụng nmcli như thế này: nmcli c
sẽ hiển thị một cái gì đó như thế này:
$ 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
Tôi đề cập đến cách của Trình quản lý mạng vì có một số trường hợp sử dụng wpa_supplicant
sẽ không hoạt động (Sự cố giữa bộ định tuyến và thẻ không dây, vấn đề bảo mật, v.v.). Trong trường hợp của tôi, tất cả các lần thử sử dụng wpa_supplicant
trên một PC đều không hoạt động, nhưng trong một lần khác, nó đã hoạt động ngay lần đầu tiên tôi thử. Vì vậy, đang đăng cả hai phương pháp để trợ giúp cho từng trường hợp và để giúp người dùng dễ dàng quyết định cái nào họ muốn.
Phần 3: Kết nối dễ dàng qua nmcli
Mặc dù chúng tôi đã nói về các cách để kết nối với nó mà không cần người quản lý mạng, nhưng cũng có trường hợp sử dụng nmcli (phiên bản CLI của trình quản lý mạng) khi áp dụng. Để làm điều này, chúng tôi làm như sau:
Kiểm tra xem ESSID nào chúng ta có thể thấy:
nmcli dev wifi
Xác minh tên của ESSID và chúng tôi tiếp tục sử dụng nó trên dòng tiếp theo bao gồm mật khẩu cần thiết cho nó (Điều này bao gồm mật khẩu loại WEP và WPA):
nmcli dev wifi connect ESSID_NAME password ESSID_PASSWORD
Đây là một ví dụ về việc tôi kết nối với ESSID Linux5G
Nếu bạn có nhiều thiết bị không dây trên máy tính của mình, bạn có thể chỉ định sử dụng thiết bị nào bằng cách sử dụng ifname
tham số như vậy:
nmcli dev wifi kết nối mật khẩu ESSID_NAME ESSID_PASSWORD ifname WIRELESS_DEVICE_NAME
Ví dụ: trong trường hợp của tôi, tên của thiết bị là wlp9s0
vì vậy tôi sẽ sử dụng dòng này để chỉ định thiết bị mà tôi sẽ sử dụng để kết nối với:
Thông tin thêm về nmcli có thể thu được bằng cách sử dụng tham số trợ giúp. Ví dụ nếu bạn muốn biết về nmcli dev
bạn sẽ gõ nmcli dev help
. Nếu bạn muốn biết thêm về nmcli dev wifi
, bạn sẽ gõ nmcli dev wifi help
và như vậy.
Phần 4: Ngắt kết nối với Bộ định tuyến không dây
Có một số cách để thực hiện điều này:
Ngắt kết nối bằng "lực lượng": sudo ifconfig wlan0 down
Điều này sẽ tắt giao diện thẻ không dây của bạn (Trình điều khiển tắt). Để bật, chỉ cần gõ ifconfig wlan0 up
theo sau là a sudo dhclient wlan0
. Nó vẫn sẽ hiển thị dưới dạng được kết nối nếu được xem bởi Trình quản lý mạng nhưng thực tế sẽ không có kết nối với bộ định tuyến. Cố gắng ping
sẽ ném một connect: Network is unreachable
lỗi.
Phát hành IP DHCP: sudo dhclient -r wlan0
Hãy nhớ làm sudo dhclient wlan0
để tự gán lại IP.
Ngắt kết nối bằng Trình quản lý mạng: nmcli nm enable false
Trong đó nm là tham số của nmcli quản lý và thiết lập trạng thái của Trình quản lý mạng. Tùy chọn enable
có thể đúng hoặc sai , nghĩa là nếu được đặt thành false , tất cả các kết nối mạng được quản lý bởi Network Manager sẽ bị ngắt kết nối. lưu ý rằng nmcli không cần quyền root.
Để xem trạng thái của loại Trình quản lý mạng nmcli nm
, nó sẽ hiển thị một cái gì đó tương tự như sau:
$ nmcli nm
RUNNING STATE WIFI-HARDWARE WIFI WWAN-HARDWARE WWAN
running connected enabled enabled enabled enabled
Một cách khác để bật hoặc tắt kết nối (Kết nối / ngắt kết nối) là bằng cách thực hiện như sau:
nmcli c down id NAME` - Will disconnect the connection NAME
nmcli c up id NAME` - Will connect the connection NAME
Phần 5: Xóa kết nối
Để xóa một kết nối hiện có là khá dễ dàng. Loại đầu tiên trong thiết bị đầu cuối:
nmcli c
Nó sẽ xuất ra một cái gì đó như thế này:
$ 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
Bây giờ hãy để chúng tôi nói rằng chúng tôi muốn xóa Xcentral , sau đó chúng tôi tiến hành lệnh sau:
nmcli c delete id Xcentral
Sau khi làm nó sẽ trông giống như thế này:
$ 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
Tất cả các kết nối được lưu trữ trong /etc/NetworkManager/system-connections/
Nếu tôi tìm trong thư mục đó ngay bây giờ tôi sẽ thấy các tệp sau:
$ ls /etc/NetworkManager/system-connections
Intel pepe PrivateSys Realtek Virus
Điều này chỉ trong trường hợp bạn muốn chỉnh sửa / xóa / thêm kết nối bằng tay.
Phần 6: Kết nối tự động khi đăng nhập
Đối với trường hợp bạn muốn đăng nhập tự động vào bộ định tuyến không dây, đây là các bước:
Mở interface
tệp:
sudo nano /etc/network/interfaces
Thêm thông tin sau (Giả sử giao diện của bạn được gọi là 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
Lưu tập tin và khởi động lại máy tính. Lưu ý rằng điều này sẽ được lưu trên một tệp văn bản đơn giản có thể được truy cập từ cùng một máy tính.
Phần thưởng: Tìm tên GUI Style của kết nối không dây của bạn
Nhấp vào Trình quản lý mạng và đi đến Thông tin kết nối
Chuyển đến Tab giữ thẻ không dây của bạn
Trong hình ảnh này, card mạng này được đặt tên eth1 (Bên trong dấu ngoặc đơn) nhưng điều này có thể khác nhau đối với mỗi người dùng. Thông thường nó sẽ là wlan (Giống như wlan0, wlan1, wlan2 ...) nhưng nó cũng có thể là eth1, eth2, v.v. Vì vậy, bạn cần phải xem nó có tên gì.
Một cách khác để tìm tên một cách nhanh chóng là bằng cách gõ iwconfig
sẽ hiển thị tất cả các card mạng không dây có sẵn.