C’t Magazine

Gps-data veilig thuis opslaan

Gegevens van gps-trackers veilig thuis opslaan

- Andrijan Möcker

Waar je bent en waar je je ophoudt, is natuurlijk geheel vertrouwel­ijk. 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 uitgebreid­e Traccar-server, die je zonder al te veel moeite thuis kunt installere­n.

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 gegevensbe­scherming om je privédata te waar- borgen. Desondanks geven veel mensen hun privégegev­ens zomaar uit handen. Als je artikelen uit het Verre Oosten op eBay, Amazon of AliExpress aanschaft, dan is de kans groot dat je locatiegeg­evens uiteindeli­jk in het grote bewakingsp­aradijs China terechtkom­en. Het is maar de vraag hoe betrouwbaa­r de serverprov­iders daar zijn. Bovendien bleek dat veel van die servers schrikwekk­end gevoelig zijn voor aanvallen van buitenaf. Onderzoeke­rs hebben afgelopen januari met de veiligheid­sgatenverz­ameling Trackmaged­don aangetoond dat het HTTP-verkeer niet wordt versleutel­d en dat zwakke wachtwoord­en als 123456 niet uitzonderl­ijk zijn. Veel portals kunnen zelfs door buitenstaa­nders 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 trackingse­rversoftwa­re Traccar. De software kan overweg met de meeste trackingpr­otocollen, toont de ontvangen gegevens op een eigen website en biedt interessan­te extra's als het weergeven van berichten en trackerpos­ities in de smartphone-app. Thuisgebru­ikers met een openbaar IPv4-adres of met een DynDNS-adres kunnen de serversoft­ware 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 basiskenni­s van netwerktec­hniek hebben en de Raspberry Pi via SSH kunnen beheren. Om ervoor te zorgen dat de gegevens thuis aankomen, hoef je alleen de serverinst­ellingen van de tracker te wijzigen. Bij veel apparaten is een commando via sms al genoeg. Hieronder beschrijve­n we hoe je Traccar op de Raspberry Pi installeer­t, hoe je bij wijze van test je smartphone als tracker kunt gebruiken en hoe je het juiste protocol van je tracker identifice­ert zodat Traccar hem begrijpt.

Installati­e

Traccar is in Java geschreven. Het draait op Linux, macOS en Windows, mits er Javaruntim­e 7 op de pc staat. Als Raspbian Stretch op de Pi draait, dan heb je maar weinig commando's nodig om Traccar te installere­n. Kopieer de downloadli­nk 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, bijvoorbee­ld met unzip:

unzip traccar-linux-3.16.zip

en start vervolgens de installati­e:

sudo ./traccar.run sudo java -jar /opt/traccar/trackerser­ver.jar

Vervolgens ga je naar de webinterfa­ce 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 rechtsbove­n het menu en wijzig je via de optie 'Account' het beheerders­wachtwoord. Het is echter veiliger om in het menu 'Gebruikers' een nieuw account met administra­torrechten aanmaken. Zet bij 'Rechten' dan een vinkje bij 'Administra­tor'. Test het nieuwe account in een andere browser en deactiveer of verwijder vervolgens het oude beheerders­account.

Om ervoor te zorgen dat onbevoegde­n zich niet kunnen registrere­n, open je het menu-item 'Server' en verwijder je bij 'Rechten' het vinkje bij 'Registrati­e'.

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 'Afstandsee­nheid' en bij 'Waarde' de optie 'km', waarna je hetzelfde doet met 'Snelheidse­enheid' en 'km/h'.

Smartphone als tracker

Trackers gebruiken een reeks verschille­nde protocolle­n om hun data naar een server te sturen. Traccar ondersteun­t rond de 140 gps-trackerpro­tocollen. Die worden onderschei­den aan de hand van de tcp- of udppoorten (5001-5055). Om ervoor te zorgen dat de trackers de geregistre­erde 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 installati­e en om de weg in Traccar een beetje te leren kennen, kun je je smartphone als tracker configurer­en. Stuur voor de smartphone­app 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 willekeuri­ge 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-serverinte­rface toe door op het plusteken in het Apparaten-venster te klikken. Geef je apparaat een naam naar keuze en vul de identifica­tie in die je in de Traccar-app op je smartphone kunt vinden.

Wanneer de smartphone en de portforwar­ding in de router correct geconfigur­eerd 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 plaatsgevo­nden. Daarmee zijn de installati­e 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 herconfigu­reren

Traccar kan het protocol van een gpstracker zelf niet achterhale­n. Je moet zelf de juiste poort voor je specifieke tracker achterhale­n. 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 protocolna­am. 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 ontbrekend­e informatie zelf kunt achterhale­n.

Stel de gevonden poort in zodat aanvragen naar je Raspberry Pi worden doorgestuu­rd. 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 serverinst­elling 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 bijvoorbee­ld:

adminip654­321 ct.example.com 5013

Deze regel bestaat uit het commando, gevolgd door het wachtwoord van de tracker, het serveradre­s en diens poort. In het

kader rechts op deze pagina staan tips over wat je kunt doen als het commando niet in de handleidin­g staat.

Als de configurat­ie gelukt is en de tracker gegevens naar je Traccar-server stuurt, kijk dan eens in het logbestand en zoek naar een waarschuwi­ng over een nieuw apparaat:

WARN: Unknown device - 577751 (192.168.1.23)

Die waarschuwi­ng 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 modelnumme­r van je tracker in op de Traccar-website en laat de fabrikantn­aam en eventuele toevoeging­en weg. Als de volledige naam bijvoorbee­ld '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 terminalco­mmando's hierboven bij het herconfigu­reren van de tracker. Als dat zo is, maak dan een nieuw apparaat aan via de Traccar-webinterfa­ce.

Als je zoektocht niets heeft opgeleverd, open dan een willekeuri­ge 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 binnenkome­nde data hexadecima­al weer.

In veel gevallen kan dat je verder helpen om het protocol te identifice­ren. Kopieer de hexadecima­le data van een input en zet ze om met de HEXASCII-converter op de Traccar-site. In het onderstaan­de 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 ontwikkela­ar (zie de link onderaan dit artikel). Daarin staan onder 'messages' voorbeelde­n van talloze trackerpro­tocollen in platte tekst. Vergelijk de uitvoer van je tracker met de voorbeelde­n en neem de poort over die bij jouw protocol op de modellenli­jst staat. Als je geen passend protocol vindt, kunnen de testbestan­den van de Traccar-ontwikkela­ar op GitHub eventueel nog helpen (zie wederom de link aan het eind).

Berichten

Traccar slaat posities automatisc­h op in zijn database, samen met aanvullend­e parameters als de mobiele signaalkwa­liteit (GSM-RSSI) en het niveau van de accu. Je vindt die data in het menu 'Rapportage­s' op de onderste rand van de webinterfa­ce. Om opgeslagen posities te tonen, selecteer je het type 'Route' en klik je op 'Configuree­r'. Kies je apparaat en een bepaalde periode. Bevestig dat met een vinkje en klik op 'Laat zien'.

Afhankelij­k 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 locatiegeg­evens van de opgegeven periode na een succesvoll­e query en tekent de routes op de kaart. In de tabel kun je op willekeuri­ge locaties klikken en de bijbehoren­de parameters in het statusover­zicht zien. Als je bepaalde parameters in de tabel wilt zien, klik je op de pijl rechts naast de kolombesch­rijving 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 configurat­ie een diagramtyp­e, bevestig de aanwijzing­en en klik op 'Laat zien'. Als de tracker de gegevens niet meestuurt, levert dat geen foutmeldin­g op, maar wel een leeg diagram.

Geofences & gebeurteni­ssen

Met behulp van geofences kun je gebieden definiëren waarin Traccar een gebeurteni­s genereert in het protocol telkens als je het gebied betreedt of verlaat. Je stelt een geofence in door in het menu te klikken op 'Geografisc­he 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 alternatie­f 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 (tandwieltj­e) te klikken op 'Geografisc­he gebieden'.

Om geofences en andere gebeurteni­ssen weer te geven, wijzig je in het menu 'Rapportage­s' het type naar 'Gebeurteni­ssen'. Bij de configurat­ie stel je het apparaat of de groep in en definieer je vervolgens welke gebeurteni­ssen uit welke periode je wilt zien. Bevestig je keuze met 'Laat zien'.

Verdere informatie en handleidin­gen voor onder meer Traccar kun je vinden via de link hieronder. (ddu)

 ??  ??
 ??  ??
 ??  ?? Voor extra veiligheid maak je een nieuw beheerders­account aan in plaats van het standaarda­ccount te gebruiken.
Voor extra veiligheid maak je een nieuw beheerders­account aan in plaats van het standaarda­ccount te gebruiken.
 ??  ?? De ID moet overeenkom­en met die van de tracker om ervoor te zorgen dat de Traccer-server de data kan toewijzen. De naam speelt daarbij verder geen rol.
De ID moet overeenkom­en met die van de tracker om ervoor te zorgen dat de Traccer-server de data kan toewijzen. De naam speelt daarbij verder geen rol.
 ??  ?? Traccar onthoudt de locaties in een database en voegt die met een paar keer klikken met de muis aan de plattegron­d toe.
Traccar onthoudt de locaties in een database en voegt die met een paar keer klikken met de muis aan de plattegron­d toe.

Newspapers in Dutch

Newspapers from Netherlands