Gps-data veilig thuis opslaan
Gegevens van gps-trackers veilig thuis opslaan
Waar je bent en waar je je ophoudt, is natuurlijk geheel vertrouwelijk. Toch sturen veel gps-trackers die privédata naar de cloud van de fabrikant – en niemand weet wie ze daar allemaal te zien krijgt. Onlangs bleek dat veel van die clouds niet altijd even veilig zijn. Een oplossing voor dat probleem is de uitgebreide Traccar-server, die je zonder al te veel moeite thuis kunt installeren.
Als je in Europa een tracker met alle toeters en bellen aanschaft – dus met mobiele verbinding, webdienst en app – dan heb je tot op bepaalde hoogte nog het vangnet van de strengere wetgeving met betrekking tot de gegevensbescherming om je privédata te waar- borgen. Desondanks geven veel mensen hun privégegevens zomaar uit handen. Als je artikelen uit het Verre Oosten op eBay, Amazon of AliExpress aanschaft, dan is de kans groot dat je locatiegegevens uiteindelijk in het grote bewakingsparadijs China terechtkomen. Het is maar de vraag hoe betrouwbaar de serverproviders daar zijn. Bovendien bleek dat veel van die servers schrikwekkend gevoelig zijn voor aanvallen van buitenaf. Onderzoekers hebben afgelopen januari met de veiligheidsgatenverzameling Trackmageddon aangetoond dat het HTTP-verkeer niet wordt versleuteld en dat zwakke wachtwoorden als 123456 niet uitzonderlijk zijn. Veel portals kunnen zelfs door buitenstaanders benaderd worden. Sommige van de aanbieders die het niet zo nauw namen met de veiligheid hebben inmiddels wel enkele gaten gedicht, maar nog bijna niemand heeft zijn website beveiligd met HTTP-encryptie.
Welkom Traccar
Dat probleem kun je helemaal vermijden met de gratis trackingserversoftware Traccar. De software kan overweg met de meeste trackingprotocollen, toont de ontvangen gegevens op een eigen website en biedt interessante extra's als het weergeven van berichten en trackerposities in de smartphone-app. Thuisgebruikers met een openbaar IPv4-adres of met een DynDNS-adres kunnen de serversoftware eenvoudig zelf gebruiken.
Als je maar enkele trackers wilt gebruiken, dan heb je wat hardware betreft al genoeg aan een Raspberry Pi. Voor het inrichten moet je wel wat basiskennis van netwerktechniek hebben en de Raspberry Pi via SSH kunnen beheren. Om ervoor te zorgen dat de gegevens thuis aankomen, hoef je alleen de serverinstellingen van de tracker te wijzigen. Bij veel apparaten is een commando via sms al genoeg. Hieronder beschrijven we hoe je Traccar op de Raspberry Pi installeert, hoe je bij wijze van test je smartphone als tracker kunt gebruiken en hoe je het juiste protocol van je tracker identificeert zodat Traccar hem begrijpt.
Installatie
Traccar is in Java geschreven. Het draait op Linux, macOS en Windows, mits er Javaruntime 7 op de pc staat. Als Raspbian Stretch op de Pi draait, dan heb je maar weinig commando's nodig om Traccar te installeren. Kopieer de downloadlink van de Linux-installer van de Tracar website (zie de link onderaan dit artikel) en download het bestand met wget.
wget https://github.com/tananaev/ traccar/releases/download/v3.16/ traccar-linux-3.16.zip
Pak het bestand uit, bijvoorbeeld met unzip:
unzip traccar-linux-3.16.zip
en start vervolgens de installatie:
sudo ./traccar.run sudo java -jar /opt/traccar/trackerserver.jar
Vervolgens ga je naar de webinterface van Traccar via het lokale ip-adres van je Raspberry op http://(Pi-adres):8082. Je hoeft niet meteen een account aan te maken, maar kunt inloggen met 'admin' voor zowel het e-mailadres als het wachtwoord.
Om ervoor te zorgen dat onbevoegde personen de server niet kunnen benaderen, open je rechtsboven het menu en wijzig je via de optie 'Account' het beheerderswachtwoord. Het is echter veiliger om in het menu 'Gebruikers' een nieuw account met administratorrechten aanmaken. Zet bij 'Rechten' dan een vinkje bij 'Administrator'. Test het nieuwe account in een andere browser en deactiveer of verwijder vervolgens het oude beheerdersaccount.
Om ervoor te zorgen dat onbevoegden zich niet kunnen registreren, open je het menu-item 'Server' en verwijder je bij 'Rechten' het vinkje bij 'Registratie'.
Om Traccar om te zetten naar het metrische systeem, open je in het Servermenu het item 'Attributen', klik je op het plusteken en selecteer je bij 'Naam' de optie 'Afstandseenheid' en bij 'Waarde' de optie 'km', waarna je hetzelfde doet met 'Snelheidseenheid' en 'km/h'.
Smartphone als tracker
Trackers gebruiken een reeks verschillende protocollen om hun data naar een server te sturen. Traccar ondersteunt rond de 140 gps-trackerprotocollen. Die worden onderscheiden aan de hand van de tcp- of udppoorten (5001-5055). Om ervoor te zorgen dat de trackers de geregistreerde posities aan de server kan sturen, heb je een DynDNS-adres nodig zodat de Raspberry Pi van buitenaf bereikbaar is via een vaste domeinnaam.
Voor het testen van je installatie en om de weg in Traccar een beetje te leren kennen, kun je je smartphone als tracker configureren. Stuur voor de smartphoneapp tcp-poort 5055 van je router door naar je Raspberry Pi. Als die poort al voor een andere service wordt gebruikt, dan kun je naar buiten toe ook een willekeurige andere poort gebruiken. De router moet binnen het LAN de data echter via poort 5055 naar de Traccar-server doorgeven, zodat die het protocol herkent. Vervolgens download en installeer je de Traccar-client uit de iOS App store of via Android Play. Voer in het veld 'Server URL' je DynDNS hostnaam in en start de dienst.
Je voegt een nieuw apparaat aan de Traccar-serverinterface toe door op het plusteken in het Apparaten-venster te klikken. Geef je apparaat een naam naar keuze en vul de identificatie in die je in de Traccar-app op je smartphone kunt vinden.
Wanneer de smartphone en de portforwarding in de router correct geconfigureerd zijn, zal het nieuwe apparaat binnen enkele seconden op de lijst vermeld staan. Zodra de smartphone zijn eerste positie heeft verstuurt, toont Traccar die op de kaart. Bij de app staat in het menuitem 'Status' het protocol dat aangeeft of en wanneer het versturen van een positie heeft plaatsgevonden. Daarmee zijn de installatie en de test voltooid.
Als je van plan bent de smartphone een langere periode als tracker in te zetten, kun je het beste een powerbank meenemen omdat het veelvuldig verzenden van je positie behoorlijk veel stroom vergt.
Tracker herconfigureren
Traccar kan het protocol van een gpstracker zelf niet achterhalen. Je moet zelf de juiste poort voor je specifieke tracker achterhalen. Daarvoor kun je als eerste kijken of jouw model op de lijst van trackers op de website van Traccar staat. De lijst toont de passende poort en protocolnaam. Als je tracker er niet op staat, wil dat niet meteen zeggen dat hij niet geschikt is voor Traccar. Bij de tekst over het zoeken van het protocol verderop in dit artikel staat hoe je de ontbrekende informatie zelf kunt achterhalen.
Stel de gevonden poort in zodat aanvragen naar je Raspberry Pi worden doorgestuurd. Ga via de terminal op de Pi naar de log-directory en geef daar het logbestand weer:
cd /opt/traccar/logs tail -f traccar-server.log
Wijzig vervolgens de serverinstelling van je tracker via een sms'je. Het commando om dat te doen varieert per model. Voor de LK109 die we in het artikel op pagina 68 hebben getest, is het commando bijvoorbeeld:
adminip654321 ct.example.com 5013
Deze regel bestaat uit het commando, gevolgd door het wachtwoord van de tracker, het serveradres en diens poort. In het
kader rechts op deze pagina staan tips over wat je kunt doen als het commando niet in de handleiding staat.
Als de configuratie gelukt is en de tracker gegevens naar je Traccar-server stuurt, kijk dan eens in het logbestand en zoek naar een waarschuwing over een nieuw apparaat:
WARN: Unknown device - 577751 (192.168.1.23)
Die waarschuwing betekent dat de poort correct is en dat Traccar het protocol kan decoderen. Het nummer direct achter het streepje is de apparaat-ID van de tracker. Voeg net als eerder voor de smartphone een nieuw apparaat toe en gebruik de ID uit het logbestand. Het instellen van je tracker is dan voltooid.
Protocol zoeken
Als je tracker niet op de lijst staat, moet je zelf op zoek naar het gebruikte protocol. Een goed beginpunt is het Traccar-forum. Typ het modelnummer van je tracker in op de Traccar-website en laat de fabrikantnaam en eventuele toevoegingen weg. Als de volledige naam bijvoorbeeld 'Shenzhen TKStar TK905' is, zoek dan op 'TK905'. Als je een apparaat voor het protocol gevonden hebt, stel op je router zijn poort dan open voor de Raspberry Pi. Controleer in het logbestand of de Traccar-server het protocol heeft herkend: zie de terminalcommando's hierboven bij het herconfigureren van de tracker. Als dat zo is, maak dan een nieuw apparaat aan via de Traccar-webinterface.
Als je zoektocht niets heeft opgeleverd, open dan een willekeurige poort tussen 5001 en 5155 voor je Raspberry Pi. Wijzig de instelling van je tracker dan naar je openbare ip-adres of DynDNS-adres en de geopende poort. Het logbestand geeft de binnenkomende data hexadecimaal weer.
In veel gevallen kan dat je verder helpen om het protocol te identificeren. Kopieer de hexadecimale data van een input en zet ze om met de HEXASCII-converter op de Traccar-site. In het onderstaande voorbeeld zie je een mogelijke input van het protocol H02.
*HQ,4109200000,NBR,155910,262,3,0,7,104 06,44047,55,10406[..]
Vervolgens open je het Python-script van de ontwikkelaar (zie de link onderaan dit artikel). Daarin staan onder 'messages' voorbeelden van talloze trackerprotocollen in platte tekst. Vergelijk de uitvoer van je tracker met de voorbeelden en neem de poort over die bij jouw protocol op de modellenlijst staat. Als je geen passend protocol vindt, kunnen de testbestanden van de Traccar-ontwikkelaar op GitHub eventueel nog helpen (zie wederom de link aan het eind).
Berichten
Traccar slaat posities automatisch op in zijn database, samen met aanvullende parameters als de mobiele signaalkwaliteit (GSM-RSSI) en het niveau van de accu. Je vindt die data in het menu 'Rapportages' op de onderste rand van de webinterface. Om opgeslagen posities te tonen, selecteer je het type 'Route' en klik je op 'Configureer'. Kies je apparaat en een bepaalde periode. Bevestig dat met een vinkje en klik op 'Laat zien'.
Afhankelijk van de omvang van de dataset, kan een query aan de database bij een licht systeem zoals de Raspberry Pi even duren. Traccar toont de locatiegegevens van de opgegeven periode na een succesvolle query en tekent de routes op de kaart. In de tabel kun je op willekeurige locaties klikken en de bijbehorende parameters in het statusoverzicht zien. Als je bepaalde parameters in de tabel wilt zien, klik je op de pijl rechts naast de kolombeschrijving en kies je de gewenste entry. Dat is handig voor als de tracker parameters zoals het accuniveau alleen meestuurt als die wijzigen. Op die manier kun je de laatst ontvangen waarde eenvoudig in de tabel vinden.
Het is echter mooier om de data die over een langere periode verzameld zijn in een diagram weer te geven. Wijzig het type naar 'Grafiek', kies in de configuratie een diagramtype, bevestig de aanwijzingen en klik op 'Laat zien'. Als de tracker de gegevens niet meestuurt, levert dat geen foutmelding op, maar wel een leeg diagram.
Geofences & gebeurtenissen
Met behulp van geofences kun je gebieden definiëren waarin Traccar een gebeurtenis genereert in het protocol telkens als je het gebied betreedt of verlaat. Je stelt een geofence in door in het menu te klikken op 'Geografische gebieden' en dan op het plusje om een nieuw gebied te maken. Voer een naam in en klik op 'Gebied'. Maak een gebied door een cirkel te trekken of het gebied zelf te definiëren (polygoon). Als alternatief kun je ook met de poly-lijn een route definiëren ter controle van hoe ver de tracker daarvan afwijkt. Je wijst een geofence toe door bij 'Apparaten' de gewenste tracker te selecteren en vervolgens in het snelmenu (tandwieltje) te klikken op 'Geografische gebieden'.
Om geofences en andere gebeurtenissen weer te geven, wijzig je in het menu 'Rapportages' het type naar 'Gebeurtenissen'. Bij de configuratie stel je het apparaat of de groep in en definieer je vervolgens welke gebeurtenissen uit welke periode je wilt zien. Bevestig je keuze met 'Laat zien'.
Verdere informatie en handleidingen voor onder meer Traccar kun je vinden via de link hieronder. (ddu)