Სარჩევი:

Raspberry Pi Enterprise Network WiFi ხიდი: 9 ნაბიჯი
Raspberry Pi Enterprise Network WiFi ხიდი: 9 ნაბიჯი

ვიდეო: Raspberry Pi Enterprise Network WiFi ხიდი: 9 ნაბიჯი

ვიდეო: Raspberry Pi Enterprise Network WiFi ხიდი: 9 ნაბიჯი
ვიდეო: CS50 2015 - Week 1 2024, ნოემბერი
Anonim
Raspberry Pi Enterprise Network WiFi ხიდი
Raspberry Pi Enterprise Network WiFi ხიდი

ავტორები: რაილი ბარეტი და დილან ჰალანდი

ამ პროექტის მიზანია დაუშვას IoT მოწყობილობა, როგორიცაა Weemo Smart Plug, Amazon Echo, სათამაშო კონსოლი, ან სხვა Wi-Fi ჩართული მოწყობილობა დაუკავშირდეს WPA_EAP საწარმოთა ქსელს Raspberry Pi Zero W პაკეტის გამოყენებით. გადაგზავნის მოწყობილობა. საწარმოთა ქსელთან დაკავშირებულ მოწყობილობებზე საჭიროა დამატებითი კონფიგურაციის ნაბიჯები და ბევრი მოწყობილობა საერთოდ არ არის თავსებადი. Wi-Fi ხიდის გამოყენებით, ნებისმიერ მოწყობილობას შეუძლია ადვილად მიიღოს ინტერნეტი Pi- სთან დაკავშირების გზით.

სისტემის დანერგვა შესაძლებელია როგორც ერთ უკაბელო ბარათზე, ასევე ორ ცალკეულ ბარათზე, მომხმარებლის მოთხოვნებიდან გამომდინარე. სისტემებისთვის, რომლებიც მოითხოვენ სიგნალის უფრო მაღალ სიმძლავრეს და ჩატვირთვის/გადმოტვირთვის უფრო სწრაფ სიჩქარეს, უმჯობესია გამოიყენოთ გამოსაყენებელი უკაბელო ბარათი წვდომის წერტილის შესანახად. თუმცა, იმ სისტემებისთვის, სადაც სიგნალის სიძლიერე და გამტარობა ნაკლებად მნიშვნელოვანია, ან სადაც უფრო ეკონომიური გადაწყვეტაა სასურველი, ერთი ბარათი შეიძლება გაიზიაროს წვდომის წერტილმა და ქსელურმა კავშირმა.

მარაგები

ჟოლო Pi Zero W

კლავიატურაზე და მონიტორზე წვდომა

პროგრამირების გარკვეული ცოდნა (გამართვის მიზნით, Raspberry Pi დაყენება)

გარე WiFi ადაპტერი/დონგლი (სურვილისამებრ)

ნაბიჯი 1: ჟოლოს პიის დაყენება

ჟოლოს პიის დაყენება
ჟოლოს პიის დაყენება

დაიწყეთ თქვენი Pi კლავიატურასა და მონიტორთან დაკავშირებით (შეიძლება დაგჭირდეთ HDMI ადაპტერი).

შემდეგ, თქვენ შეგიძლიათ დაიწყოთ ბრძანების აკრეფით:

sudo su

ეს მოგცემთ საჭირო პრივილეგიებს pi– ზე ფაილების შეცვლისთვის.

ახლა თქვენ გსურთ დააყენოთ dnsmasq და hostapd ბრძანების გამოყენებით:

apt-get დააინსტალირეთ dnsmasq hostapd

ახლა თქვენ შეგიძლიათ დაიწყოთ WiFi ხიდის დაყენება.

შენიშვნა - შემდეგი გაკვეთილი შეიცავს ინფორმაციას მათთვის, ვინც იყენებს ერთ ბორტ უკაბელო ბარათს, როგორც წვდომის წერტილისთვის, ასევე ქსელთან დასაკავშირებლად. ასევე შესაძლებელია სისტემის კონფიგურაცია, რომელიც მუშაობს ორ ცალკეულ ბარათზე. ამისათვის უბრალოდ მოძებნეთ გამოტოვებული "wlan1" ხაზები მოწოდებულ ფაილებში და შეცვალეთ ისინი მეზობელი "ap0" ხაზებით.

ნაბიჯი 2: 70-persistent-net.rules

დაიწყეთ თქვენი pi- ს MAC მისამართის პოვნით აკრეფით:

iw dev

შექმენით შემდეგი ფაილი:

ნანო/და ა.შ. უდევი/წესები. დ/70- მუდმივი- net.rules

და შეცვალეთ ისე, რომ იგი შეიცავს შემდეგს

SUBSYSTEM == "ieee80211", ACTION == "დამატება | ცვლილება", ATTR {macaddress} == "b8: 27: eb: c0: 38: 40", KERNEL == "phy0", / RUN+= "/sbin/ iw phy phy0 ინტერფეისი დაამატეთ ap0 ტიპი _ap ", / RUN+="/bin/ip link set ap0 address b8: 27: eb: c0: 38: 40"

ეს ფაილი ეუბნება სისტემას გამოყოს მოწყობილობა ჩატვირთვისას წვდომის წერტილისთვის. აქ, MAC მისამართი უნდა შეიცვალოს თქვენი საკუთარი პი -ით, რომელიც ახლახან იპოვეთ.

(ორი უკაბელო ბარათი) ეს ფაილი არ არის საჭირო ორი უკაბელო ბარათის გამოყენებისას.

ნაბიჯი 3: Hostapd.conf

შემდეგი, თქვენ შემდეგ შეასწორებთ hostapd.conf ფაილს შემდეგში შესვლისას:

ნანო/და ა.შ.hostapd/hostapd.conf

შეცვალეთ ფაილი ისე, რომ იგი ემთხვეოდეს შემდეგ კონფიგურაციას:

ctrl_interface =/var/run/hostapd

ctrl_interface_group = 0 #ინტერფეისი = ap0 ინტერფეისი = wlan1 მძღოლი = nl80211 ssid = testnet hw_mode = g არხი = 6 wmm_enabled = 0 macaddr_acl = 0 author_algs = 1 wpa = 2 wpa_passphrase = 0123456789 wpa_keyPpaCMP_MP_WW = CWP_CP_CW_WMC = wsp

გაითვალისწინეთ, რომ სანამ ჩემი არხი აქ არის 6, შეიძლება დაგჭირდეთ ამ მნიშვნელობის შეცვლა იმ არხის შესატყვისად, რომელზედაც არის wlan0. ზოგიერთ ქსელში არხი ავტომატურად შეიცვლება ისე, რომ წვდომის წერტილი ემთხვეოდეს wlan0- ს, მაგრამ ეს არ იყო ჩემი გამოცდილება საწარმოს ქსელში. თქვენ შეგიძლიათ შეამოწმოთ რომელი არხები გამოიყენება ამჟამად და რომელი ინტერფეისები აკრეფით

iwlist არხი

(ორი უკაბელო ბარათი) უბრალოდ გაწერეთ კომენტარი wlan1 შემცველი სტრიქონისგან და დაწერეთ კომენტარი, რომელიც შეიცავს ap0.

ნაბიჯი 4: Dnsmasq.conf

ახლა თქვენ შეცვლით dnsmasq.conf ფაილს:

nano /და ა.შ. /dnsmasq.conf

დატოვეთ კომენტარი ან დაამატეთ შემდეგი სტრიქონები:

ინტერფეისი = lo, ap0

#ინტერფეისი = ლო, wlan1 no-dhcp-interface = lo bind-interfaces server = 8.8.8.8 დომენი საჭირო

თუ გსურთ, შეგიძლიათ გამოიყენოთ თქვენი საკუთარი ქვექსელი აქ, უბრალოდ დარწმუნდით, რომ თანმიმდევრული ხართ.

(ორი უკაბელო ბარათი) წაშალეთ კომენტარი wlan1 შემცველი სტრიქონისგან და გააკეთეთ კომენტარი ერთის შემცველი ap0.

ნაბიჯი 5: ინტერფეისები

შემდეგი, თქვენ უნდა შეცვალოთ ინტერფეისების ფაილი:

nano/etc/network/interfaces

ავტო ლო

auto ap0 #auto wlan1 auto wlan0 iface lo inet loopback iface eth0 inet dhcp allow-hotplug ap0 #allow-hotplug wlan1 iface ap0 inet static #iface wlan1 inet static address 192.168.2.1 netmask 255.255.255.0 hostapd /etc/hostapd/hostapd.con allow -hotplug wlan0 iface wlan0 inet dhcp pre -up wpa_supplicant -B -Dwext -i wlan0 -c/etc/wpa_supplicant/wpa_supplicant.conf post -down killall -q wpa_supplicant

აღსანიშნავია, რომ wlan0 ინტერფეისი უნდა მოდიოდეს ნებისმიერი ინტერფეისის შემდეგ, რომელსაც მას აგზავნით, წინააღმდეგ შემთხვევაში სისტემა არ იმუშავებს სწორად.

(ორი უკაბელო ბარათი) წაშალეთ კომენტარი wlan1 შემცველი ნებისმიერი სტრიქონიდან და დაწერეთ კომენტარი ნებისმიერი შემცველი ap0.

ნაბიჯი 6: Wpa_supplicant.conf

ახლა თქვენ შეცვლით wpa_supplicant.conf ფაილს, რომელიც ნაპოვნია:

ნანო/და ა.შ.wpa_supplicant/wpa_supplicant.conf

ზოგიერთი ქსელი სხვაგვარად არის კონფიგურირებული, ვიდრე სხვები, ასე რომ, ამ ნაწილმა შეიძლება გარკვეული შეცდომა მოითხოვოს, აქ არის wpa_supplicant.conf ფაილი, რომელმაც მომცა საშუალება Cal Cal ქსელში დაკავშირება:

ქვეყანა = USctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 network = {ssid = "SecureMustangWireless" scan_ssid = 1 key_mgmt = WPA-EAP წყვილი = CCMP TKIP ჯგუფი = CCMP TKIP eap = PEP calpoly.edu "password =" your_password "phase1 =" peapver = 0 "phase2 =" MSCHAPV2 "}

ეს ფაილი გამოიყენება wlan0– ის კონფიგურაციისთვის თქვენს საწარმოს ქსელთან დასაკავშირებლად. ზოგიერთი საწარმოს ქსელი მოითხოვს CA სერთიფიკატს დასაკავშირებლად. Cal Poly– ის კამპუსის ქსელი არ საჭიროებს სერთიფიკატს, ამიტომ მე გამოვტოვე ეს ნაწილი, მაგრამ თქვენ შეგიძლიათ მარტივად გადმოწეროთ შესაბამისი სერთიფიკატები და დაამატოთ ისინი თქვენს wpa_supplicant ფაილს ხაზით

ca_cert = "/path/to/cert.pem"

ნაბიჯი 7: Hostapdstart სკრიპტი

ბოლო რაც რჩება არის დაწეროს სკრიპტი, რომელიც იწყებს ორივე ინტერფეისს და ადგენს პაკეტის გადაგზავნას სისტემის ჩატვირთვისას. შექმენით ფაილი სახელწოდებით hostapdstart აკრეფით:

nano/usr/local/bin/hostapdstart

დაამატეთ ფაილს შემდეგი

sudo ifdown --force wlan0 && sudo ifdown --force ap0 && sudo ifup ap0 && sudo ifup wlan0

#sudo ifdown --force wlan0 && sudo ifdown --force wlan1 && sudo ifup wlan1 && sudo ifup wlan0 sudo sysctl -w net.ipv4.ip_forward = 1 sudo iptables -t nat -A POSTROUTING -s 192.168.2.0/24! -d 192.168.2.0/24 -j MASQUERADEsudo systemctl გადატვირთეთ dnsmasq

ეს სკრიპტი ჩამოაქვს ორივე ინტერფეისს, შემდეგ აბრუნებს მათ სათანადო თანმიმდევრობით, ეუბნება pi- ს, რომ გსურთ პაკეტების გადაცემა ერთი ინტერფეისიდან მეორეზე და საბოლოოდ გადატვირთეთ dnsmasq ისე, რომ ცვლილებები იმოქმედებს.

(ორი უკაბელო ბარათი) კომენტარის ხაზი wlan1– ით და კომენტარის ხაზით ap0– ით.

ნაბიჯი 8: Rc. ადგილობრივი

დაბოლოს, ჩვენ გვსურს სისტემა დაიწყოს სისტემის ჩატვირთვისას, ამიტომ ჩვენ შევცვლით rc.local ფაილს, რომელიც მუშაობს ჩატვირთვისას:

ნანო /და ა.შ. rc.local

უბრალოდ დაამატეთ შემდეგი სტრიქონი ფაილის ბოლოს:

hostapdstart> 1 და

თქვენი ფაილი ასე უნდა გამოიყურებოდეს:

_IP = $ (მასპინძლის სახელი -I) || trueif ["$ _IP"]; შემდეგ printf "ჩემი IP მისამართი არის %s / n" "$ _IP" fi

hostapdstart> 1 და

გასვლა 0

ნაბიჯი 9: გადატვირთეთ

და ეს არის ის! ახლა, თუ ვივარაუდებთ, რომ ყველაფერი სწორად გაქვთ და თქვენი WiFi დონგლი მიმაგრებულია (თუ თქვენ იყენებთ ერთს), თქვენ უბრალოდ უნდა გადატვირთოთ თქვენი Raspberry Pi ბრძანებით:

გადატვირთვა

მას შემდეგ რაც თქვენი Pi წარმატებით გადატვირთეთ, თქვენ უნდა გქონდეთ საშუალება ნახოთ თქვენი წვდომის წერტილის სახელი ნებისმიერ მოწყობილობაზე (ტელეფონი, ლეპტოპი და ა. მას შემდეგ რაც დაუკავშირდებით თქვენი მითითებული პაროლის გამოყენებით, ის პირდაპირ უნდა დაუკავშირდეს თქვენ სასურველ საწარმოთა ქსელს!

განსაკუთრებული მადლობა შემდეგ ბმულებს, რომ მოგვაწოდეს იდეა, თუ როგორ მივუდგეთ ამ პროექტს:

  • https://blog.thewalr.us/2017/09/26/raspberry-pi-ze…
  • https://www.raspberrypi.org/forums/viewtopic.php?p…
  • https://www.raspberrypi.org/forums/viewtopic.php?f…

შეგვატყობინეთ, თუ თქვენ გაქვთ რაიმე შეკითხვა, კომენტარი ან წინადადება!

IoT გამოწვევა
IoT გამოწვევა
IoT გამოწვევა
IoT გამოწვევა

მეორე ადგილი IoT გამოწვევაში

გირჩევთ: