αα½ααααΈ Habr α
ααααΎααααααααααααΆααΆα Raspberry Pi αα
αααα α αΎααααα»αα
ααααααΆαααΆααα»αααααΆα
αααΎαααΆαααΆαα
αααααα ααα»αααα Raspberry αα·αααααΉαααααΆαααααααααααΆααααααααα»ααααααα αααααΆααααΆαα»αααααΌαααααααΆααααα αΆαααααΆαα₯αααα·ααααΆαα½αααΈαα»α
α αααααααααΎαααΉααα·αα·αααααΎααα»αααΆαααΆααααααααααααα Raspberry Pi αααα’ααααα·αα
αΆαααΆα
ααααααααΌαααΆαααααααα
αααααΆααβα’αααβαααβα
αΆααβα’αΆααααααβααααααΆαβαααα’α·αβααΊβαααα·αβαα
βαααααβααΆαβααΆααβα α’αααααααααΌαααΆαααααα»ααα»ααααααΆααα’αααα
αΆααααααΎαααααΌαα
ααΆαααααααααΆααα α’ααααααααααααΌαααΆαααααα»ααα»ααααααΆααα’αααα
αΆααααααΎαααααΌααααααΆαααΆααααααΉαααΆααΌαααααΆαα’αααΈα’αααΈαααα’αΆααααααΆα IP αα½α αααα SSH αα
αααα»α Raspberry Pi αααααααΎ putty α¬ααααΆααΈααααααααα αα·αααααααααααα½αα―αααΆαααΆαα½ααααααα·ααΈαα·ααααααΆααΌα ααΆααΆααα·ααααα ααΎαααααααα»αααΉααα·α "αααα»α" α’αααα’αΆααααααααΎααΌα Python αα ααΆααΉααα·αααΆαααΆαααααααααααα·ααΈα’αααΈααΆααα’ααα αααααΆααα
ααα»α
ααΆααααααααΆααα’αα ααΆααααααααΆααααΆααααααααΆααα»αααααααΉααααααααααΆααα ααΎααααααααααααααΆααααααΌαααΆαααα»ααααΆ αααα»αααΉααα·αα·αααααΎαααΆααααΆααααααΆαααα’αααααα
ααΆααΆααα·αααΆαα αααα»αααΉααα·ααα·α αΆαααΆααΏαααΆαααααααααΌα ααΆαααΆαααΈααα FTP α¬ααΆαααααααΆαααα ααΆααααααβαααβαααα»αβααΆαβααααΆααΆαβααααα βα’αααΈβαααβααΆαβααααααααβα αααΎα α¬βαα·α αα·αβααΎαα
αα»ααααααΎαααα‘αΎαα’αααΈ ααααΆαα ααααΌααααΆα: ααΆαααααααααααααΆαααααααΉαααααΌα (αα·ααααααΎαααΆα 2.5A ααΆααΆαααΆααααα αΌααααααααααΆααααααααΈααΌαααααα) αα·α heatsink αααααΆαα processor ααΊααΆαααΆααααααΆααααααΆααααΆαααααααΆααααααα·ααααα·ααΆααααααΆααααααααΆααααα Raspberry Pi α ααΎααααΆαααα Raspberry α’αΆα ααΉαααααα ααα α»αα ααααα―αααΆαα’αΆα ααα α‘αΎαααα ααΆααα·αα αααΆααααΆααααααα α»ααααααΊααΆαα½αααΆααα α‘αΎαααααααααΆα α§ααΆα ααα αααα»αα’αα‘α»αααααααα»ααααΈααΈααΌααααααααα»α α¬αα ααααααα―αααΆααααααα»αααααΌαααΆαααααααα ααΆαα’ααααΈα
αα»ααααααα‘αΎααααΆαααΆαα»ααΆαα½α ααΆααααΌαααΆαααααΆαα±ααααααΎαα αα α»ααααααααΆααααααααα ααΎαα·αααΌα ααααααα’αΆααααααΆαα αΆαααααααΆααααΆααααααααΆ apt αααα ααααΆαα·αααααΎαααΆαααα
sudo apt-get update
α₯α‘αΌααααα’αααα’αΆα α αΆααααααΎαααα‘αΎα αα·αααααααα ααΆααααααααα
1. WiFi hotspot
Raspberry Pi ααΆααααα½ααααα»αααΆαααααααααΆααα ααΆα ααα»α α αΌαααααΎα₯ααααα α αΎαα’ααααα·αα αΆαααΆα ααα·αα’αααΈααααα WiFi ααΆααα ααΎααααα ααα αΎαα ααΎααααΈααααΎααΌα αααα’αααααααΌαααα‘αΎα 2 αααΆαααΆα: hostapd (αααα·αα ααα»α α αΌαααααΎαααΆααααααααΆαααΈα, ααααΆα ααα»α α αΌαααααΎαααΆα) αα·α dnsmasq (αααΆαααΈααα DNS / DHCP) α
ααα‘αΎα dnsmasq αα·α hostapdα
sudo apt-get install dnsmasq hostapd
αααααα’αΆααααααΆα IP αα·αα·ααααααα Raspberry Pi ααΉαααΆααα ααΎαααααΆα WiFi α ααΎααααΈααααΎααΌα αααααααααα½αα―αααΆα dhcpcd.conf ααααααα αΌαααΆααααααααΆ sudo nano /etc/dhcpcd.conf. α’αααααααΌααααααααααααΆααααΆαααααααα α―αααΆαα
interface wlan0
static ip_address=198.51.100.100/24
nohook wpa_supplicant
ααΌα αααα’αααα’αΆα ααΎααα αααα»ααααααΆααααΆαα αααΆα Raspberry Pi ααααααΎαααΉαααΆαα’αΆααααααΆα 198.51.100.100 (αααααΆαααΆααααααΆαααααα»αααΆαα αα αΆαααααα·αααΎαααΆαααΈααααααααααα»αααααΎαααΆαααΎααΆ α’αΆααααααΆααααααΉαααααΌααααα αΌααααα»ααααααα·ααΈαα»ααα) α
αααααΆαααα ααΎαααααΌαααααΎαααααααΆααααααΌααααα IP αααααΎαααααα·ααααα·ααΆααααααααΆ αααΌααΌααΌααΌ /etc/sysctl.conf α αΎααα·αααααααααααααΎαααααΆαα net.ipv4.ip_forward = α‘.
α₯α‘αΌαα’αααααααΌαααααααα ααΆαααααααααααΆαααΈααα DHCP - ααΆααΉαα ααα αΆαα’αΆααααααΆα IP αα α§ααααααααααΆαααααΆααα ααΎααααα αΌαααΆααααααααΆ sudo nano /etc/dnsmasq.conf α αΎααααααααααααΆααααΆααααααα
interface=wlan0
dhcp-range=198.51.100.1,198.51.100.99,255.255.255.0,24h
ααΌα αααα’αααα’αΆα ααΎα α§ααααααααααΆαααααΆααααΉαααΆαα’αΆααααααΆα IP αα αααα»ααα½α 198.51.100.1β¦ 198.51.100.99 α
ααΈαααα»α ααααααααααα Wi-Fiα ααΆαααααααα½αα―αααΆα /etc/default/hostapd α αΎααααα
αΌααααααΆαααα
ααΈααα DAEMON_CONF="/etc/hostapd/hostapd.conf". α₯α‘αΌααααααΌαααααααα½αα―αααΆα hostapd.conf ααααααα
αΌαααΆααααααααΆ sudo nano /etc/hostapd/hostapd.conf.
αααα
αΌαααΆααααααα
ααα»α
α
αΌαααααΎαααΆαα
interface=wlan0
driver=nl80211
ssid=Raspberry Pi
hw_mode=g
channel=7
wmm_enabled=0
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
αα ααΈαααααΆααΆαααΆααααααΆαααααα»αααΆαααα α·ααααα»αααΆααααΎαααΆαααΆαααααα "ssid" (αααααα ααα»α α αΌαααααΎαααΆα) "wpa_passphrase" (ααΆααααααααΆαα) "ααΆααα" (αααααΆααα) αα·α "hw_mode" (ααααααααα·ααααα·ααΆα a = IEEE 802.11a, 5 GHz, b = IEEE 802.11 b, 2.4 GHz, g = IEEE 802.11g, 2.4 GHz) α ααΆα’αα»αα αα·αααΆαααΆαααααΎαααΎαααΆααααααααααααααααααα·αα ααΌα ααααα’αααααΉαααααΌαααααΎαααΎαααΆααααααΆαα αααΆαααααααααα·α αααα»αααααααα½αα―αα
ααααΆααα αα αααα»αααααΈααΆαααααααα ααΆααααααααΆααααΊ 12345678 αα αααα»αα ααα»α α αΌαααααΎαα·αααααΆαα α’αααααααΌαααααΎα’αααΈααααααα»αααααΆαααΆααααα ααΆααααααα·ααΈαααααααΎααΆααααααααΆαα brute-force αααααααΎαα ααΆαα»αααα α αΎαα ααα»α α αΌαααααΎαααααΆαααΆααααααααΆααααΆααααα’αΆα ααααΌαααΆααααα½α α αΌαα ααΆααΆααααααΎαααΆαα ααΆαα αααααααα’ααΈαααΊαα·αααΆαα½αα’αααααΆααααα αα αααααα αααΆααααααΎαα’αΆα ααΆαααΆαα ααααΌαα αααααα
α’αααΈααααααααΆαααΊαα½α ααΆαα α’αααα’αΆα ααααΎαααΆαααααΆααααααΆααα’ααα
sudo systemctl unmask hostapd
sudo systemctl enable hostapd
sudo systemctl start hostapd
sudo systemctl reload dnsmasq
α₯α‘αΌαααα ααΎααα½αααααΎα WiFi hotspot ααααΈαα αααα»ααααααΈαααααΆαα ααα»ααααααΎααααΈα±ααα’ααΈαααΊαα·αααα α‘αΎααα αααα»αααΆ ααΆα αΆαααΆα ααααα»αααΆαααααΎα±ααααΆααααααΌααααααααα ααααααααΆαααΈα’ααΈααΊααα·ααα WLAN αααααΎααααα αΌαααΆααααααααΆ αααΌααΌααΌααΌ /etc/rc.local α αΎααααααααααααΆααααααααα ααΆαααααααα iptablesα
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
αααβα αΎαβααΆβααΆα ααΎαα αΆααααααΎα Raspberry Pi α‘αΎααα·α α αΎαααααα·αααΎα’αααΈαααααααααΆαααααΌαααΆαααααΎααΆαααααΉαααααΌαααα ααΎαα’αΆα ααΎαα ααα»α α αΌαααααΎαααΆα α αΎαααααΆαααα ααΆα
ααΌα
αααα’αααααΆαααΎαα αΎα ααααΏαααΊαα·αα’αΆαααααααα»ααααΆααα α αΎαααΆαα·αααΆα’αΆα
ααααΎ WiFi ααααααααΆαα
ααααα·ααΈαααααΌα ααααΌααααΆαα α’αααα’αΆα ααααΆααααααΌαααααααααααΆα Raspberry Pi αααααααΎαααΆαααΆααααααααΆ sudo raspi-config. ααΆαααααααααΆαααΎααα (ααααΆααααα’αΎα :) raspberrypi α ααααααα ααααΆα ααααααΉαααΌαα α ααααααΆαααΆααααα αα·αααααααααααααΆααΉαααΆααααααααααααΆααα ααΎαααααΆαααΌαααααΆαααα ααα»ααααα’αααααααΌααααααα β.localβ αα αααα»αααΆα α§ααΆα ααα α’αααα’αΆα α αΌααα Raspberry Pi ααααα’αααααΆαααα SSH ααααααα αΌαααΆααααααααΆ putty [α’ααΈαααααΆαααΆα]. αα·α ααΆαααΆααααααΆααα½αα ααΆααααΎαααΆαααΎ Windows αα·α Linux ααα»αααααα·αααααΎαααΆαααΎ Android αα - α’ααααα ααααααΌααααα αΌαα’αΆααααααΆα IP ααααααα ααΈαααα
2. αααΆαααΈααααααα
ααΆααα·ααΈ 1001 ααΎααααΈαααααΎααααΆαααΈααααααααα ααΎ Raspberry Pi αααα»αααΉαααααααααααααα’αααΈαααααΆααααα½ααααα»αααα»αααααα α§αααΆααΆααΎαααΆαααααα»αα―αααΆα MP3 αααα αΌαα α·ααα α αΎαααΎαα ααα±ααααΆα’αΆα ααααΆααα ααΎαααααΆαααΌαααααΆααααααΆααα§αααααααααααΆααα’ααα ααΎαααΉαααΆαααααΆαααΈααα MiniDLNA αα ααΎ Raspberry Pi αααα’αΆα ααααΎααΌα ααααααααΆααααΎαα
ααΎααααΈααα‘αΎα ααΌααααα αΌαααΆααααααααΆ sudo apt-get ααα‘αΎα minidlna. αααααΆααααα’αααααααΌαααααα config ααααααα αΌαααΆααααααααΆ sudo nano /etc/minidlna.conf. αα ααΈαααα’αααααααΌααααααααααααΆαααααα½αααααααα αΆαααΈααααΌααα ααΆααα―αααΆαααααααΎαα media_dir=/home/pi/MP3 (ααΆααΆααα·α ααααΌαα’αΆα αα»αααααΆ)α αααααΆααααΈαα·αα―αααΆα ααΌαα αΆααααααΎαααααΆααααα‘αΎααα·αα
sudo systemctl α αΆααααααΎα minidlna α‘αΎααα·α
ααααα·αααΎααΎαααααΎα’αααΈαααΆαααααΉαααααΌα αααααΎαααΉαααΆααααΆαααΈααααααααααααααααα½α ααΆααααα αα ααΎαααααΆαααΌαααααΆα αααα’αααα’αΆα α αΆαααααααααΈααΆαααααα·αααα»αααΆαα αααΆαααΎαα» α¬ααΆαααα VLC-Player αα αααα»α Androidα
ααααααΆααααα½αα ααΆαα’αΆααα‘αΌαα―αααΆααα
Raspberry Pi ααΊααΆαααΆαααΆααααα½αααΆαα½α WinSCP - αααααα·ααΈαααα’αα»ααααΆαα±ααα’αααααααΎααΆαααΆαα½αααα―αααΆα RPi αααΆαααΆααααα½αααΌα
ααΉαα―αααΆααααα»ααααα»αα
3. α’αααααα½α SDR
ααααα·αααΎααΎαααΆαα§αααααααα½α RTL-SDR α¬ SDRPlay ααΎαα’αΆα ααααΎααΆαα ααΎ Raspberry Pi αααααααΎαααααα·ααΈ GQRX α¬ CubicSDR α αααααΉαα’αα»ααααΆαα±ααα’αααααΆαα’αααααα½α SDR αααααααΆα αα·αααααΆαα αααα’αΆα ααααΎαααΆαααΆαααΌααααΈαααα»ααα·αααΆα‘α·ααΆα
αααα»ααα»ααααα αααααα»αααΆαααααΌαααα’ααααααααΈα’ααααααααΌαααααααα
αααααΆααααα½αααΈ RTL-SDR α¬ SDRPlay ααΆα’αΆα
ααα½αααΆααααααΆαα·αααα»αααααααααααΆαααααααααα αΌαααα 1 GHz (ααΌααααΈαααααααααΆααααααααα·α
)α ααΆα§ααΆα ααα α’αααα’αΆα
ααααΆαααα·αααααΉααααα·αααα» FM ααααααΆααα»ααααααα ααα»αααααααααΆααααΆαααααααΆααααα’αααααΎαααααα αα α¬ααααΆαααααααααααααααααα ααααα·ααΈααα α’ααααααααααα
α·ααααα·αααα»αααααΆααααα½αααΈ Raspberry Pi α’αΆα
ααα½α αα·ααΌα αα·ααααααΌααααααΆαα
αααΆαααΈααα
ααΆααα·ααΆααααΆαααα’α·αα’αααΈαα·αααα» SDR ααΊα α½αααΈαα·ααΆαααΆαααα’αααααααα α’αααα’αΆα
α’αΆααααααα
4. Server αααααΆαα "smart home"
αααααΆααα’ααααααα ααααααΎα±αααααααααααα½αααααΆααααααααΆααα α’αααα’αΆα ααααΎαααααα·ααΈ OpenHAB αααα₯ααα·αααααα
ααααα·ααααααααΆααααααΆαααααα·ααΈααα»ααααααα ααα»ααααααΆαααααααααααΆααααΌααααααΆααααααα·ααΈαααα½ααααααα ααααααΈααααα’αα»ααααΆαα±ααα’ααααααααααααα§ααααααααααα (Z-Wave, Philips Hue ααΆααΎα)α α’ααααααααααΆααααΆα’αΆα
αα·ααααΆαααα’α·αααααααααΈααα ααααα
ααααα·ααΈααα α αΆααααΆααααΈααΎααααα»ααα·ααΆαα’αααΈ "ααααααααΆααα" Raspberry Pi α’αΆα ααααΎαααΆαααΆαααα’ααΌααααΆαααΈααα MQTT αααα’αΆα ααααΎααΆααααα§ααααααααα»ααααα»αααααααα
5. α’αα·αα·αααααααΆαα FlightRadar24
ααααα·αααΎα’αααααΆα’αααα αΌαα α·αααα’αΆααΆαα ααα α αΎαααααα αααα»αααααααααααΆααααααααααααααα FlightRadar ααααΈααα α’αααα’αΆα αα½ααα αααα αα·αα’αααααααΎααααΎαααΆααα’αααααααα‘αΎαα§αααααααα½αα α’αααΈαααα’αααααααΌαααΆαααΊα’αααααα½α RTL-SDR αα·α Raspberry Pi α ααΆααααΆαααααααΆαα α’αααααΉαααα½αααΆααα·αααα·α αΌαααααΎααααΈ FlightRadar24 Pro αααα₯ααα·αααααα
ααα
ααααΈααααΆααααα’α·α
ααα ααααΈααααα·ααααΆα
ααΆααΆααα·αααΆαα αα·ααααα’αααΈαααΆααα’ααααααΌαααΆαααΆααααααΈαα
ααΈαααααα Raspberry Pi ααΆαααΆαααααααΎαααΆαα
αααΎα α αΎαα’αΆα
ααααΎαααα»ααα·α
αα
ααΆαααΆα
αααΎα α
αΆααααΈαα»αααΌαα αααααααα’ααΈαααΆα α¬ααΆαααααΆαααΎαααΈααα’αΌ αα αΌααααααΆααααααΆααααααΆαααα α¬ααΌααααΈααααΆααααΆαααααααααΆααααΆααΆααΆαααααα
ααααα·ααΈααα α’αααΈαααααααΌαααΆααααααααΊααΆααααααααα·αααααΉααααααααΆαα Raspberry Pi ααα»ααααααα ααα»ααααααΆαααααααΆαα "ααααΌα" αααααα (Asus Tinkerboard, Nano Pi ααΆααΎα) αααααα·ααΈααΆααα’ααααααααΆααΉαααααΎαααΆααα ααΈααααααααα
ααααα·αααΎα’αααααααααΆα αΆααα’αΆαααααα (αααααΉαααααΌαααΆαααααααααααΆαααΆαααααααααααΆααα’ααααα) αααααΆαααα’αΆα ααααΌαααΆαααααα
α αΎαααΌα
ααααααΆ ααΌαααααΆαααα’ααΆααα’ααααααΆα
ααααα: www.habr.com