Jadi pada dasarnya, saya ingin menggunakan iwconfig
untuk terhubung ke jaringan wifi saya ketika saya tidak di dalam X. Tapi saya tidak melihat cara untuk melakukannya di halaman manual. Ada ide?
Jadi pada dasarnya, saya ingin menggunakan iwconfig
untuk terhubung ke jaringan wifi saya ketika saya tidak di dalam X. Tapi saya tidak melihat cara untuk melakukannya di halaman manual. Ada ide?
Jawaban:
iw
(daftar / konfigurasi) hanya dapat menangani WEP.
Anda memerlukan wpasupplicant
paket yang menyediakan wpa_supplicant
perintah, instal jika perlu melalui sudo apt-get install wpasupplicant
.
Anda memasukkan SSID dan kata sandi Anda ke dalam /etc/wpa_supplicant.conf
(memerlukan sudo).
Contoh:
network={
ssid="ssid_name"
psk="password"
}
Dengan asumsi antarmuka Anda wlan0 Anda dapat terhubung dengan:
sudo wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf -D wext
sudo dhclient wlan0
"wext" adalah driver dan itu akan spesifik untuk setiap kartu; lihat wpa_supplicant -h
. Contoh:
hostap (default) Host AP driver (Intersil Prism2/2.5/3). (this can also be used with Linuxant DriverLoader).
hermes Agere Systems Inc. driver (Hermes-I/Hermes-II).
madwifi MADWIFI 802.11 support (Atheros, etc.).
atmel ATMEL AT76C5XXx (USB, PCMCIA).
wext Linux wireless extensions (generic).
ndiswrapper Linux ndiswrapper.
broadcom Broadcom wl.o driver.
ipw Intel ipw2100/2200 driver.
wired wpa_supplicant wired Ethernet driver
roboswitch wpa_supplicant Broadcom switch driver
bsd BSD 802.11 support (Atheros, etc.).
ndis Windows NDIS driver.
wpa_supplicant -B -iwlan0 -c/etc/wpa_supplicant.conf -Dwext && dhclient wlan0
tidak terhubung ke jaringan nirkabel, meskipun secara default NetworkManager menghubungkan saya ke jaringan saya ingin mencoba cara baris perintah apakah ada kesalahan yang saya lakukan?
root
(administrator sistem). Jadi sudo wpa_supplicant -B -iwlan0 -c/etc/wpa_supplicant.conf -Dwext && sudo dhclient wlan0
atau bagi menjadi dua perintah &&
.
Tautan ini menunjukkan semuanya dan berfungsi dengan baik untuk saya: http://linux.icydog.net/wpa.php
Saya menyalin konten di sini, jadi kami memilikinya, jika situs itu offline.
Baris perintah WPA
Kadang-kadang Anda akan berada di baris perintah tanpa akses ke alat jaringan GUI - tetapi titik akses Anda dijamin dengan WPA. Apa yang kamu kerjakan?
Dengan asumsi kartu nirkabel Anda benar-benar berfungsi (mis. Iwconfig dapat melihatnya dan berinteraksi dengannya), menggunakan wpa_supplicant sebenarnya cukup sederhana. Menginstal wpa_supplicant
Sebagian besar distro saat ini telah menginstal wpa_supplicant secara default. Jika Anda memiliki perintah wpa_passphrase dan wpa_supplicant tersedia, maka Anda siap melakukannya. Jika tidak, Anda harus menginstal paket dengan melakukan sesuatu seperti (untuk Ubuntu):
$ sudo apt-get install wpasupplicant
Atau (untuk Fedora):
# yum install wpa_supplicant
Atau apa pun perintahnya untuk distro Anda.
Membuat file konfigurasi
Sekarang setelah wpa_supplicant diinstal, kami akan membuat file konfigurasinya. Setelah Anda mengetahui frasa sandi SSID dan WPA, yang harus Anda lakukan adalah menjalankan:
$ wpa_passphrase myrouter mypassphrase > wpa.conf
Tentu saja, ganti "myrouter" dengan SSID router Anda, "mypassphrase" dengan frasa sandi WPA Anda, dan "wpa.conf" dengan file apa pun yang ingin Anda simpan konfigurasi. Nama file ini tidak harus mengikuti format tertentu atau memiliki ekstensi tertentu.
Atau, untuk menghindari mengetikkan frasa sandi pada baris perintah (sehingga tidak disimpan dalam riwayat shell), Anda dapat menentukan SSID pada baris perintah. wpa_passphrase akan menunggu Anda mengetikkan frasa sandi diikuti dengan enter:
$ wpa_passphrase myrouter > wpa.conf
mypassphrase
Anda harus memiliki file yang terlihat seperti ini:
network={
ssid="myrouter"
#psk="mypassphrase"
psk=8ada1f8dbea59704ac379538b4d9191f6a72390581b4cd7a72864cea685b1a7f
}
Terhubung
Sekarang kita akan menjalankan wpa_supplicant untuk terhubung ke jaringan nirkabel. Pertama, jika router Anda memancarkan SSID-nya (semuanya dilakukan secara default), Anda mungkin ingin memastikan kartu nirkabel Anda benar-benar dapat melihatnya:
$ iwlist scan
Anda mungkin harus menjalankannya sebagai root untuk memaksakan penyegaran.
Selanjutnya, Anda perlu mengetahui tiga informasi:
wpa_supplicant --help
daftar driver yang berbeda yang dimilikinya (di bawah "driver:"). Pada 0.5.8, pilihan berguna adalah: wext
, hostap
, madwifi
, atmel
, ndiswrapper
, dan ipw
(IPW adalah untuk kernel berusia;> = 2.6.13 harus menggunakan wext). Jika Anda tidak melihat kecocokan spesifik untuk kartu Anda, coba wext, karena itu jenisnya.iwconfig
. Ini akan melaporkan "tidak ada ekstensi nirkabel" untuk perangkat non-nirkabel dan akan menampilkan beberapa data untuk perangkat nirkabel apa pun.Sekarang Anda memiliki data ini, jalankan (sebagai root):
# wpa_supplicant -D[driver] -i[device] -c[/path/to/config]
Tidak ada spasi di antara opsi dan parameter. Jangan sertakan tanda kurung karena saya baru saja menambahkannya untuk kejelasan. Misalnya, untuk laptop saya tampilannya seperti ini:
# wpa_supplicant -Dwext -ieth1 -c/root/wpa.conf
Anda juga dapat menjalankannya di latar belakang dengan menggunakan -B
opsi sehingga tidak mengambil konsol Anda.
Sekarang Anda dikaitkan dengan jaringan.
Sedang online
Untuk benar-benar online, Anda harus mendapatkan IP entah bagaimana. Kebanyakan orang hanya ingin mendapatkan IP dinamis dari server DHCP, mungkin yang dibangun ke router. (Saya tidak akan membahas pengaturan IP statis dan tabel routing karena itu adalah binatang itu sendiri.)
Untuk mendapatkan sewa DHCP, lepaskan dulu sewa apa pun yang masih Anda miliki (sebagai root):
# dhclient -r
Kemudian minta sewa baru (tentu saja mengganti eth1 dengan nama perangkat jaringan Anda, yang sama seperti yang Anda gunakan di bagian sebelumnya):
# dhclient eth1
Anda sekarang memiliki IP, setidaknya secara teori. Selamat berselancar!
Debian dan distro lain memiliki wpa_suplicant berjalan sebagai layanan secara default untuk mengelola jaringan wifi. wpa_suplicant dapat ditangani oleh klien / front-end yang berbeda seperti manajer jaringan GUI. Ini lebih baik dijelaskan dalam wiki debian ini .
wpa_cli adalah klien baris perintah wpa_suplicant untuk mengelola jaringan wifi.
Sunting : Saya baru saja menemukan posting ini menjelaskan cara menggunakan nmcli dan jauh lebih baik daripada wpa_cli karena ini kompatibel dengan GUI Network Manager dan pengaturannya serta jaringan wifi yang disimpan.
Contoh penggunaan wpa_cli :
Periksa apakah saya sudah memiliki antarmuka jaringan yang diaktifkan wifi:
# iwconfig
wlan0 IEEE 802.11bgn ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=22 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:on
Periksa apakah proses wpa_suplicant sedang berjalan:
# ps -e | grep wpa
1881 ? 00:00:07 wpa_supplicant
Masuk dalam mode interaktif klien wpa:
# wpa_cli
Daftar jalur akses yang tersedia:
> scan
> scan_results
... dan Anda mendapatkan sesuatu seperti ini:
bssid / frequency / signal level / flags / ssid
e0:60:66:7c:81:7f 2417 -66 [WPA2-PSK-CCMP][ESS] vodafone817E
e0:60:66:61:83:4b 2452 -76 [WPA2-PSK-CCMP][WPS][ESS] vodafone834A
f8:8e:85:c5:65:c2 2462 -76 [WPA-PSK-CCMP+TKIP][WPS][ESS] MOVISTAR_65C1
a8:d3:f7:46:0c:be 2472 -83 [WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][WPS][ESS] Orange-0CBC
...
Tambahkan AP Anda:
> add_network
> set_network 0 ssid "vodafone817E"
> set_network 0 psk "my-pass-phrase"
Pilih sebagai saat ini:
> enable_network 0
Hubungkan ke sana:
> reconnect
Periksa status:
> status
Keluar dari wpa_cli:
> quit
Dari shell, minta DHCP untuk pengaturan IP dan net:
# dhclient -r
# dhclient wlan0
wpa_cli
dan kemudian Anda menulis wpa_client
? Di Kubuntu 18.10 wpa_client
tampaknya tidak ada sebagai perintah
Pertama-tama ambil kartu Anda jika tidak berjalan:
ifconfig wlan0 up
Atur parameter sesuai dengan jaringan Anda
iwlist wlan0 scan
iwconfig wlan0 essid NETWORK_ID key WIRELESS_KEY
Sebenarnya ada cara untuk melakukannya menggunakan NetworkManager, jika Anda memiliki checkbox
paket yang diinstal.
sudo /usr/share/checkbox/create_connection SSID --security=wpa -key=WPA-KEY
(Kredit: bug 923836 , yang muncul dalam pencarian saya pada topik.)
Semua jawaban yang menyarankan wpa_supplicant salah. Ya, itu mungkin menghubungkan Anda ke jaringan WPA, tapi itu solusi yang buruk dalam jangka panjang karena akan sangat sulit untuk mempertahankan dan tidak akan bermain dengan baik dengan koneksi kabel. Baca jawaban ini dan buat hidup Anda lebih mudah dengan menggunakan Network Manager dari baris perintah. Saya menghabiskan waktu berjam-jam untuk mengkonfigurasi wpa_supplicant, kemudian mencoba nmcli dan "hanya berhasil".
Anda dapat menggunakan VSWM - Wireless Manager Sangat Sederhana. Anda menempatkan AP yang dikenal di file cfg sederhana (/etc/vswm.cfg) dan ketika Anda menjalankannya vswm
memindai jaringan yang tersedia dan menghubungkan kartu Anda dengan yang pertama yang muncul di /etc/vswm.cfg.
VSWM tersedia di https://github.com/dmelo/vswm . Berikut ini contoh tampilan file konfigurasi vswm.cfg:
[global]
dev = wlan0
dns = ["4.2.2.1","8.8.8.8"]
[wlan0-0]
ssid = Network1
psk = netpassword
protocol = WPA
net = dhcp
[wlan0-1]
ssid = Network2
protocol = WEP
net = static
address = 192.168.0.15/24
Di bawah tenda, ia menggunakan alat baris perintah standar: iwlist, wpa_supplicant, iwconfig, dhclient ... Hanya itu yang mengotomatiskan pekerjaan.
Saya kesulitan menggunakan wpa_supplicant
langsung untuk mendapatkan jaringan nirkabel. ID jaringan dan kata sandi saya menghasilkan kesalahan saat saya menggunakanwpa_supplicant.conf
file pada wpa_supplicant
baris perintah, mis
sudo wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf -B
Saya bisa mengatasinya wpa_cli
. Urutan perintah yang harus saya gunakan, karena saya menggunakan driver Windows dengan Linux ndiswrapper, adalah:
sudo modprobe ndiswrapper
sudo iwconfig wlan0 essid "<My Network ID>" mode managed
sudo wpa_cli identity "<My Network ID>" password "<My password>"
Saya mengatur jaringan dengan menambahkannya di bagian jaringan nirkabel di GUI, sehingga saya bisa mengklik ikon jaringan kabel atau nirkabel dan memilih penyedia nirkabel (yang kadang-kadang diperlukan untuk menyelesaikan login).
Itu nmcli
adalah versi baris perintah dari aplikasi manajer jaringan default di Ubuntu.
Beberapa kelebihannya adalah ia menggunakan konfigurasi yang sudah Anda miliki dari antarmuka grafis dan tidak perlu akses root.
Anda dapat berlari nmcli
untuk menunjukkan opsi yang tersedia.
Contoh untuk terhubung ke wifi bernama MYESSID:
nmcli c up MYESSID