Daftar Isi:

Sistem De Cartografiere a Rețelelor WiFi: 14 Langkah
Sistem De Cartografiere a Rețelelor WiFi: 14 Langkah

Video: Sistem De Cartografiere a Rețelelor WiFi: 14 Langkah

Video: Sistem De Cartografiere a Rețelelor WiFi: 14 Langkah
Video: Friki-Retrogamer especial "Juegos de Cyber-cafés". #frikiretrogamer 2024, November
Anonim
Sistem De Cartografiere a Rețelelor WiFi
Sistem De Cartografiere a Rețelelor WiFi

Cartografierea retelelor WiFi este procedeul prin care se doreste gasirea retelelor WiFi, iar apoi localizarea acestora cu ajutorul GPS-ului. Dalam urma cartografierii se pot dapatkan informatii despre retelele WiFi ada cum ar fi: numarul acestora, coordonatele aproximative, numele lor sau tipul de securitate.

Fungsinya adalah: cand se gaste o retea WiFi, stocheaza locatia si detaliile retelei, iar rezultatele vor fi afisate pe o harta.

Langkah 1: Raspberry Pi 3 B+

Raspberry Pi 3 B+
Raspberry Pi 3 B+

Primul pas a fost achizitionarea unui Raspberry Pi 3 B+.

Spesifikasi (sursa):

  • SoC: Broadcom BCM2837B0 quad-core A53 (ARMv8) 64-bit @ 1.4GHz
  • GPU: Broadcom Videocore-IV
  • RAM: 1GB LPDDR2 SDRAM
  • Jaringan: Gigabit Ethernet (melalui saluran USB), 2.4GHz dan 5GHz 802.11b/g/n/ac Wi-Fi
  • Bluetooth: Bluetooth 4.2, Bluetooth Hemat Energi (BLE)
  • Penyimpanan: Micro-SD
  • GPIO: header GPIO 40-pin, terisi
  • Port: HDMI, jack audio-video analog 3.5mm, 4x USB 2.0, Ethernet, Camera Serial Interface (CSI), Display Serial Interface (DSI)
  • Dimensi: 82mm x 56mm x 19.5mm, 50g

Langkah 2: Jaringan Alfa AWUS036NHA

Jaringan Alfa AWUS036NHA
Jaringan Alfa AWUS036NHA

Urmatorul pas a fost achizitionarea unui adaptor WiFi. Chiar daca aceasta versiune de Pi vine cu WiFi, am dorit ceva cu antena externa pentru o localizare mai precisa. Dupa o mendokumentasikan pe internet am ajuns la concluzia ca cea mai buna solutie este un adapter de la Alfa Network. Am ales di Jaringan Alfa AWUS036NHA.

Acesta adalah urmatoarele caracteristici (sursa):

  • Kompatibel dengan standar nirkabel IEEE 802.11n, 802.11b/g/n
  • Pita frekuensi 2.4GHz, MIMO (Multiple Input Multiple Output)
  • Sesuai dengan spesifikasi Universal Serial Bus Rev. 2.0
  • Kecepatan tinggi transfer data TX hingga 150 Mbps
  • Mendukung WPS oleh S/W
  • Mendukung enkripsi data nirkabel dengan WEP 64/128-bit, WPA, WPA2, TKIP, AES
  • Cakupan Jangkauan Luas
  • Sesuai dengan FCC Bagian 15.247 untuk AS, ETS 300 328 untuk Eropa
  • Mendukung driver untuk Windows 2000, XP 32/64, Windows7, Vista 32/64, Linux (2.4.x/2.6.x), Mac (10.4.x/10.5.x) Power PC & PC

Spesifikatii (sursa):

  • Nirkabel: IEEE 802.11b/g/n
  • Standar USB 2.0
  • Antena RP-SMA 5dBi yang dapat dilepas
  • Chipset Ralink 3070

Langkah 3: GPS Neo-6M

GPS Neo-6M
GPS Neo-6M

De asemenea, saya achizitionat un GPS pentru a furniza tanggal despre locatie. Am ales GPS Neo-6M.

Caracteristici (sursa):

  • Modul GPS lengkap dengan antena aktif terintegrasi, dan EEPROM bawaan untuk menyimpan data parameter konfigurasi
  • Antena aktif keramik 25 x 25 x 4mm internal memberikan kemampuan pencarian satelit yang kuat
  • Dilengkapi dengan lampu indikator daya dan sinyal serta baterai cadangan data.4) Catu daya: 3-5V; Kecepatan baud default: 9600bps
  • Antarmuka: RS232 TTL

Langkah 4: Alte Elemente

Alte Element
Alte Element
Alte Element
Alte Element
Alte Element
Alte Element

Pe langa cele sebutkan mai sus am mai avut nevoie de:

  • Cablu LAN - pentru conectarea plauteri Raspberry Pi 3 B+ la laptop;
  • Adaptor jaringan USB - pentru conectarea cablului la laptop (di cazul meu, pentru ca nu dispun de port LAN);
  • Baterie externa pentru a alimenta placuta;
  • Mama-mama api;
  • LCD 16x2;

  • KartuSD 16 GB;
  • potensiometru;

Langkah 5: Conectivitate

Conectivitate
Conectivitate
Conectivitate
Conectivitate

Raspberry Pi 3 B+ -- Laptop

Sambungkan ke ajutorul cablului LAN dengan jaringan USB adaptorului.

Raspberry Pi 3 B+ -- Jaringan Alfa AWUS036NHA

Cablul USB al adaptorului WiFi memperkenalkan port intr-un USB al placutei.

Raspberry Pi 3 B+ - GPS Neo-6M

VCC (3.3V) - VCC

RXD - TXD

TXD - RXD

GND - GND

Se folosesc api mama-mama.

LCD - Raspberry Pi 3 B+

1. Pin 1 (Ground) - rel tanah.

2. Pin 2 (VCC/5v) - rel positif.

3. Pin 3 (V0) - kabel tengah potensiometer.

4. Pin 4 (RS) - GPIO25 (Pin 22)

5. Pin 5 (RW) - rel tanah.

6. Pin 6 (EN) - GPIO24 (Pin 18)

7. Pin 11 (D4) - GPIO23 (Pin 16)

8. Pin 12 (D5) - GPIO17 (Pin 11)

9. Pin 13 (D6) - GPIO18 (Pin 12)

10. Pin 14 (D7) - GPIO22 (Pin 15)

11. Pin 15 (LED +) - rel positif.

12. Pin 16 (LED -) - rel tanah.

Langkah 6: Pengaturan

Mempersiapkan
Mempersiapkan
Mempersiapkan
Mempersiapkan
Mempersiapkan
Mempersiapkan

Avand toate elementele hardware, am trecut la configurare. Primul pas a fost instalarea sistemului de operare untuk Raspberry Pi. Dalam cazul meu sistemul era deja instalat pe cardul microSD, singura modificare fost activarea SSH-ului.

Urmatorul pas a fost configurarea laptopului pentru a trimite retea catre Raspberry Pi.

Di Control Panel\Network and Internet\Network Connections saya memodifikasi WiFi-ului la care eram conectat, bifand A lmemungkinkan pengguna jaringan lain untuk terhubung melalui koneksi internet komputer ini dengan memilih dan Ethernet2.

Dupa aceasta setare, di folder acelasi saya memverifikasi Ethernet2 - Internet Protocol Version 4(TCP/IPv4) pentru a vede ce IP foloseste Ethernet2. Astfel, saya mengamati Raspberry Pi-ul va avea mereu un ip intre 192.168.137.1-254. Cu ajutorul programului Pemindai IP Lanjutan, perhatikan di acest domeniu, am reusit sa ma conectez la placuta prin Putty.

*Raspberry Pi-ul nu disetel un IP statis, acesta se schimba la fiecare conecare a firului.

*La fel de usor, prin Putty m-am conectat apoi utilizand numele placutei afisat la prima rulare al Advance IP Scanner.

Langkah 7: GPSD

GPSD
GPSD

Dupa conectare, am aktualisasi sistemul, deoarece acesta putea fi in urma cu aktualizarile. Saya foosit:

sudo apt-get update

Cu sistemul aktual, am instalat programele de care mai aveam nevoie. Saya aturan:

sudo apt-get install -y screen gpsd libncurses5-dev libpcap-dev tcpdump libnl-dev gpsd-clients python-gps

Aceasta comanda instaleaza GPSD, pe care l-am modificat configurat apoi. Ruland

sudo nano /etc/default/gpsd

saya modificat setarile astfel:

START_DAEMON="benar"

GPSD_OPTIONS="-n"

DEVICES="/dev/ttyS0" <-- singura modificare pe care am facut-o

USBAUTO = "benar"

GPSD_SOCKET="/var/run/gpsd.sock"

*Se poate modifica /dev/ttyS0 cu calea catre locul de unde ia gps-ul datele

Langkah 8: Kismet

Nasib
Nasib
Nasib
Nasib

Urmatorul pas a fos de a descarca Kismet.

wget

Kismet este un detector de WiFi, Bluetooth, dll.

Acestia sunt urmatorii pasi pe care i-am facut:

tar -xvf kismet-2016-07-R1.tar.xzcd kismet-2016-07-R1/

./konfigurasi

membuat dep

membuat

sudo make install

Pentru a nu fi intrebat de fiecare data ce WiFi dengan folosit, saya memutuskan untuk mengedit fisierul de configurare al Kimset.

ifconfig

De obicei daca se exista un WiFi extern, acesta este pe wlan1

sudo nano /usr/local/etc/kismet.conf

Saya adaugat:

ncsource=wlan1

De asemenea, amati ca in output-ul vor fi fisiere care nu sunt utile pentru acest proiect asaca am moficiat logtypes in felul urmator:

logtypes=gpsxml, netxml

Langkah 9: LCD

LCD
LCD

Pentru afisarea pe LCD am folosit libraria AdaFruit.

git clone

cd./Adafruit_Python_CharLCDsudo python setup.py install

Pentru afisarea coordonatelor pe LCD am folosit acet script di python.

*Din motif de portabilitate am ales eliminarea LCD-ului.

Langkah 10: Testare GPS

GPS Testare
GPS Testare
GPS Testare
GPS Testare

Urmatorul pas a fost testarea GPS-ului.

Saya membuat atau menyalin cmdline.txt.

sudo cp /boot/cmdline.txt /boot/cmdline_backup.txt

Edit cmdline.txt dan hapus interfata seriala, stergand console=ttyAMA0, 115200.

sudo nano /boot/cmdline.txt

sudo reboot

Dupa reboot, saya memverifikasi baud rate-ul de la ttyS0:

sudo stty -F /dev/ttyS0 -a

Apakah setat baud rate-ul manual la 9600

sudo stty -F /dev/ttyS0 9600

Am testat printr-un simplu cat:

sudo cat /dev/ttyS0

Se primeau date incontinuu, deci gps-ul receptiona si baud rate-ul era corect setat.

Mulai dari GPSD:

sudo gpsd /dev/ttyS0 -F /var/run/gpsd.sock

Datele primite se pot afisa usor prin

cgps -s

sau

gpsmon

*Alte comenzi folositoare au fost:

layanan sudo gpsd restart

layanan sudo gpsd mulai

layanan sudo gpsd stop

sudo killall gpsd

Langkah 11: Proba Dispozitiv

Proba Dispozitiv
Proba Dispozitiv

Primul lucru pe care l-am facut a fost sa creez un director de teste:

mkdir ~/testcd ~/test

Am deschis GPSD (dalam caz ca este incis) di Kismet:

sudo stty -F /dev/ttyS0 9600

sudo cat /dev/ttyS0

sudo gpsd /dev/ttyS0 -F /var/run/gpsd.sock

layar -S kismet

sudo kismet

Dupa ce s-a deschis am apasat YA si MULAI.

In aceste momente Kismet ruleaza si achizitioneaza date. Di sentru se pot oberva informatiile GPS, ada di dreapta se observa numarul de retele gasite. Buat layar pentru Kimset, pentru a-i putea da timp sa achizitioneze date (CTRL + A / D).

Pentru a reconecta screen-ul:

layar -r kismet

Kismet inca ruleaza. Dalam acest mod, putem porni Kismet si apoi deconectam placuta de la laptop. Cat timp Raspberry Pi-ul va fi alimentat, Kismet va rula. Astfel, se vor cartografia toate retelele resepsionis di cazul deplasarii de la un punct la altul.

Langkah 12: Rezultate

Dupa inchiderea Kismet, toate datele au fost scrise in directorul curent (uji numit). Se pote verifica celor 2 fisiere XML pe care Kismet le-a creat prin perintah:

ls

Se afiseaza:

Kismet-20190409-17-43-54-1.gpsxml

Kismet-20190409-17-43-54-1.netxml

Cautan dan pe internet, am gasit un script care pregateste datele, salvadu-le intr-un fisier hartaWiFi.kml care poate fi importat in Google Maps (de exemplu).

wget https://Gist.githubusercontent.com/ScottHelme/5c6869e17c3e9c8b2034dc8fc13e180b/raw/31c2d34f66748b6bd26415fd7d120c06b3d92eaf/netxml2kml.py -O netxml2kml.py

Am rulat scriptul:

python netxml2kml.py --kml -o hartaWiFi *xml

Acum, fisierul hartaWiFi.kml este creat si gata a fi incarcat pe Google Maps sau alt mediu in care se pot plota fisiere kml.

Langkah 13: Ekspor Rezultate 1

Ekspor Rezultate 1
Ekspor Rezultate 1
Ekspor Rezultate 1
Ekspor Rezultate 1
Ekspor Rezultate 1
Ekspor Rezultate 1
Ekspor Rezultate 1
Ekspor Rezultate 1

Primul lucru pe care l-am facut a fost sa copy de pe Raspberry Pi fisierul hartiWiFi.kml, folosind WinSCP, lokal, pe laptop.

Am creat o noua harta di Google Maps (link) si am importat fisierul hartiWiFi.kml.

Rezultatul se poate vedea in poze. Dalam urma cartografierii si incarcarii fisierului di Google Maps, vor aparea informatii despre localizare, nume, tipul retelei, dar nu numai.

Langkah 14: Ekspor Rezultate 2

Ekspor Rezultate 2
Ekspor Rezultate 2

O alta mede a afisa datele a fost sa creez pe laptop un fisier.html unde am importat harta cu acest cod.

Am incarcat fisierul.kml pe drive iar apoi am generat un link, utilizand Direct Link Generator. Link-ul generat l-am incarcat dalam cod la url:

var kmlLayer = google.maps. KmlLayer baru({

url: '--------------', supresiInfoWindows: benar, peta: peta });

Rezultatele se pot vedea di poza.

Direkomendasikan: