เอกสาร> การกำหนดค่า> ไร้สาย> การตั้งค่าไร้สาย - CLI WIFI ผ่าน VIA บรรทัดคำสั่ง
วิธีนี้เหมาะถ้าคุณไม่สามารถเข้าถึงส่วนต่อประสานผู้ใช้แบบกราฟิกที่ใช้ในการตั้งค่า WiFi บน Raspberry Pi เหมาะอย่างยิ่งสำหรับใช้กับสายเคเบิลคอนโซลแบบอนุกรมหากคุณไม่สามารถเข้าถึงหน้าจอหรือเครือข่ายอีเธอร์เน็ตแบบใช้สาย โปรดทราบว่าไม่จำเป็นต้องใช้ซอฟต์แวร์เพิ่มเติม ทุกสิ่งที่คุณต้องการรวมอยู่ใน Raspberry Pi แล้ว
รับรายละเอียดเครือข่าย WiFi
หากต้องการสแกนหาเครือข่าย WiFi ให้ใช้คำสั่ง sudo iwlist wlan0 รายการนี้จะแสดงเครือข่าย WiFi ที่มีอยู่ทั้งหมดพร้อมกับข้อมูลที่เป็นประโยชน์อื่น ๆ มองออกไปสำหรับ:
'ESSID: "test" "เป็นชื่อของเครือข่าย WiFi
'IE: IEEE 802.11i / WPA2 เวอร์ชัน 1' เป็นการตรวจสอบความถูกต้องที่ใช้ ในกรณีนี้คือ WPA2 ซึ่งเป็นมาตรฐานไร้สายที่ใหม่กว่าและปลอดภัยกว่าซึ่งแทนที่ WPA คำแนะนำนี้ควรใช้กับ WPA หรือ WPA2 แต่อาจใช้ไม่ได้กับองค์กร WPA2 สำหรับคีย์ฐานสิบหก WEP ดูตัวอย่างสุดท้ายได้ที่นี่ คุณจะต้องใช้รหัสผ่านสำหรับเครือข่ายไร้สาย สำหรับเราเตอร์ที่บ้านส่วนใหญ่จะพบบนสติ๊กเกอร์ที่ด้านหลังของเราเตอร์ ESSID (ssid) สำหรับตัวอย่างด้านล่างคือการทดสอบและรหัสผ่าน (psk) คือ testingPassword การเพิ่มรายละเอียดเครือข่ายไปยัง Raspberry Pi
เปิดไฟล์คอนฟิกูเรชัน wpa-supplicant เป็น nano:
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
ไปที่ด้านล่างของไฟล์และเพิ่มรายการต่อไปนี้:
network = {ssid = "testing" psk = "testingPassword"} รหัสผ่านสามารถกำหนดค่าได้ทั้งในฐานะตัวแทน ASCII ในเครื่องหมายคำพูดตามตัวอย่างข้างต้นหรือเป็นตัวเลขฐานสิบหก 32 ไบต์ที่เข้ารหัสล่วงหน้า คุณสามารถใช้ยูทิลิตี้ wpa_passphrase เพื่อสร้าง PSK ที่เข้ารหัส สิ่งนี้ใช้ SSID และรหัสผ่านและสร้าง PSK ที่เข้ารหัส จากตัวอย่างด้านบนคุณสามารถสร้าง PSK ด้วย wpa_passphrase "testing" "testingPassword" ผลลัพธ์มีดังนี้
network = {ssid = "testing" # psk = "testingPassword" psk = 131e1e221f6e06e3911a2d11ff2fac9182665c004de85300f9cac208a6a80531} หมายเหตุว่าข้อความที่เป็นข้อความล้วนมีอยู่ คุณควรลบบรรทัดนี้จากไฟล์ wpa_supplicant สุดท้ายเพื่อความปลอดภัยเพิ่มเติม
เครื่องมือ wpa_passphrase ต้องการรหัสผ่านที่มีความยาวระหว่าง 8 ถึง 63 อักขระ สำหรับวลีรหัสผ่านที่ซับซ้อนมากขึ้นคุณสามารถแยกเนื้อหาของไฟล์ข้อความและใช้เป็นอินพุตสำหรับ wpa_passphrase หากรหัสผ่านถูกเก็บไว้เป็นข้อความธรรมดาภายในไฟล์บางแห่งโดยการเรียก wpa_passphrase "การทดสอบ" <file_where_password_is_stored เพื่อความปลอดภัยเป็นพิเศษคุณควรลบ file_where_password_is_stored หลังจากนั้นจึงไม่มีการคัดลอกข้อความธรรมดาของรหัสผ่านดั้งเดิมในระบบ
หากคุณใช้ PSK ที่เข้ารหัส wpa_passphrase คุณสามารถคัดลอกและวาง PSK ที่เข้ารหัสลงในไฟล์ wpa_supplicant.conf หรือเปลี่ยนเส้นทางผลลัพธ์ของเครื่องมือไปยังไฟล์การกำหนดค่าของคุณโดยการเรียก wpa_passphrase "การทดสอบ" รหัสผ่านการทดสอบ "/ etc / wpa_supplicant / wpa_supplicant .conf โปรดทราบว่าสิ่งนี้ต้องการให้คุณเปลี่ยนเป็นรูท (โดยการรัน sudo su) หรือคุณสามารถใช้ wpa_passphrase "testing" "testingPassword" | sudo tee -a /etc/wpa_supplicant/wpa_supplicant.conf> / dev / null ซึ่งจะผนวกข้อความรหัสผ่านโดยไม่ต้องเปลี่ยนเป็นรูท ทั้งสองวิธีจัดเตรียมสิทธิ์ผู้ดูแลระบบที่จำเป็นเพื่อเปลี่ยนไฟล์ สุดท้ายตรวจสอบให้แน่ใจว่าคุณใช้ >> หรือใช้ -a กับ tee (สามารถใช้เพื่อต่อท้ายข้อความในไฟล์ที่มีอยู่) ตั้งแต่> หรือไม่ใช้ -a เมื่อใช้ tee จะลบเนื้อหาทั้งหมดแล้วผนวกผลลัพธ์ไปยังไฟล์ที่ระบุ โปรดทราบว่าการเปลี่ยนเส้นทางไปยัง / dev / null ที่ส่วนท้ายของรูปแบบที่สองเพียงป้องกันไม่ให้ทีออกไปยังหน้าจอ (เอาท์พุทมาตรฐาน)
ตอนนี้บันทึกไฟล์โดยกด Ctrl + X จากนั้น Y จากนั้นกด Enter
ตั้งค่าอินเตอร์เฟสใหม่ด้วย wpa_cli -i wlan0 ตั้งค่าใหม่
คุณสามารถตรวจสอบว่าเชื่อมต่อสำเร็จแล้วโดยใช้ ifconfig wlan0 หากฟิลด์ inet addr มีที่อยู่ข้าง Raspberry Pi จะเชื่อมต่อกับเครือข่าย ถ้าไม่ตรวจสอบว่ารหัสผ่านและ ESSID ของคุณถูกต้อง
เครือข่ายที่ไม่มีหลักประกัน
หากเครือข่ายที่คุณเชื่อมต่อไม่ได้ใช้รหัสผ่านรายการ wpa_supplicant สำหรับเครือข่ายจะต้องรวมรายการ key_mgmt ที่ถูกต้อง เช่น
network = {ssid = "test" key_mgmt = NONE} เครือข่ายที่ซ่อนอยู่
หากคุณใช้เครือข่ายที่ซ่อนอยู่ตัวเลือกพิเศษในไฟล์ wpa_supplicant scan_ssid อาจช่วยเชื่อมต่อได้
network = {ssid = "yourHiddenSSID" scan_ssid = 1 psk = "Your_wifi_password"} คุณสามารถตรวจสอบว่ามันเชื่อมต่อสำเร็จโดยใช้ ifconfig wlan0 หากฟิลด์ inet addr มีที่อยู่ข้าง Raspberry Pi จะเชื่อมต่อกับเครือข่าย ถ้าไม่ให้ตรวจสอบรหัสผ่านและ ESSID ของคุณถูกต้อง
การเพิ่มการกำหนดค่าเครือข่ายไร้สายหลายรายการ
ใน Raspbian เวอร์ชันล่าสุดสามารถตั้งค่าหลายรูปแบบสำหรับเครือข่ายไร้สายได้ ตัวอย่างเช่นคุณสามารถตั้งค่าหนึ่งสำหรับบ้านและหนึ่งสำหรับโรงเรียน
ตัวอย่างเช่น
network = {ssid = "SchoolNetworkSSID" psk = "passwordSchool" id_str = "โรงเรียน"}
network = {ssid = "HomeNetworkSSID" psk = "passwordHome" id_str = "home"} หากคุณมีเครือข่ายสองเครือข่ายอยู่ในช่วงคุณสามารถเพิ่มตัวเลือกลำดับความสำคัญเพื่อเลือกระหว่างเครือข่ายเหล่านั้น เครือข่ายในช่วงที่มีลำดับความสำคัญสูงสุดจะเป็นเครือข่ายที่เชื่อมต่ออยู่
เครือข่าย = {ssid = "HomeOneSSID" psk = "passwordOne" ลำดับความสำคัญ = 1 id_str = "homeOne"}
network = {ssid = "HomeTwoSSID" psk = "passwordTwo" ระดับความสำคัญ = 2 id_str = "homeTwo"}