# wpa_supplicant 無線網路連線 ## wpa_supplicant wpa_supplicant 可以用在 Linux 、 BSD、 MAC OS X、 Windows、 嵌入式系統..等的無線網路連線。 ## 開發環境 * Linux Release: Debian Buster 64 bits * Kernal Version: 4.19.0-12-amd64 # Step1 檢查 wifi 網卡有無啟用 ``` $ sudo dmesg |grep -i wifi ``` 如果沒有印出任何內容時,可能沒有裝到 wifi 的套件 將 wifi firmware套件裝上 ``` $ sudo apt-get update && apt-get install firmware-iwlwifi ``` 有啟用的話再來我們再檢查能否看見 wifi 名稱 ``` $ ip a ``` 有看到名稱為 wlp2s0 (Debian Buster 中的無線網路介面 ) 如果沒有我們先執行這指令,讓無線網卡啟動 ``` $ sudo ifup wlp2s0 ``` 確認完有無線網路後再下一步 # Step2 安裝及設定 wpa_supplicant ``` $ sudo apt install wpasupplicant // Debian,Ubuntu ``` 安裝完後編緝一個 wpa_supplicant.conf 檔, 將知道的無線網路名稱及密碼輸入至此檔 ``` # 將 wpa.sh 放此 ``` ``` $ sudo vi /etc/wpa_supplicant/wpa_supplicant.conf ``` ``` ctrl_interface=/var/run/wpa_supplicant update_config=1 network={ ssid="你的SSID名稱,限英文" // 無線網路名稱 psk="無線網路的密碼" //無線網路密碼 } ``` # Step3 設定網路介面及自動連線無線網路 ## 編緝 /etc/network/interfaces ``` 放入 interface.sh ``` ``` $ sudo vi /etc/network/interfaces ``` enp1s0、wlp2s0 為本文的有線網路及無線網路 依照偵測到的有線、無線網路介面來更改。 source /etc/network/interfaces.d/* # loopback auto lo iface lo inet loopback # DHCP auto enp1s0 allow-hotplug enp1s0 # enp1s0 為有線網路介面 iface enp1s0 inet dhcp # wireless auto wlp2s0 allow-hotplug wlp2s0 # wlp2s0 為無線網路介面 iface wlp2s0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf #自動連上在 wpa_supplicant.conf 的無線網路 // iface default inet dhcp # 啟動 wpa_supplicant ``` // wlp2s0 是本文的無線網卡名稱,請讀者查看自已的無線網卡名稱 wpa_supplicant -B -i wlp2s0 -c /etc/wpa_supplicant/wpa_supplicant.conf ``` # 遇到的問題 網卡被關閉,使用軟體將網卡開啟 ``` rfkill:wlan soft blocked ``` 解決方法: sudo apt install rfkill rfkill list 如 wlan ,blocke:yes 代表網卡被鎖住。 sudo rfkill unblock wifi # 參考文件 1. https://www.debian.org/doc/manuals/debian-reference/ch05.zh-tw.html#_the_wireless_lan_interface_with_wpa_wpa2 2. https://bigpxuan.blogspot.com/2016/12/wpasupplicant.html 3. https://newtoypia.blogspot.com/2014/09/wireless.html
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.