Gps-da­ta vei­lig thuis op­slaan

Ge­ge­vens van gps-trac­kers vei­lig thuis op­slaan

C’t Magazine - - Inbound 6/2018 - An­drij­an Möc­ker

Waar je bent en waar je je op­houdt, is na­tuur­lijk ge­heel ver­trou­we­lijk. Toch stu­ren veel gps-trac­kers die pri­vé­da­ta naar de cloud van de fa­bri­kant – en nie­mand weet wie ze daar al­le­maal te zien krijgt. On­langs bleek dat veel van die clouds niet al­tijd even vei­lig zijn. Een op­los­sing voor dat pro­bleem is de uit­ge­brei­de Trac­car-ser­ver, die je zon­der al te veel moei­te thuis kunt in­stal­le­ren.

Als je in Eu­ro­pa een trac­ker met al­le toe­ters en bel­len aan­schaft – dus met mo­bie­le ver­bin­ding, web­dienst en app – dan heb je tot op be­paal­de hoog­te nog het vang­net van de stren­ge­re wet­ge­ving met be­trek­king tot de ge­ge­vens­be­scher­ming om je pri­vé­da­ta te waar- bor­gen. Des­on­danks ge­ven veel men­sen hun pri­vé­ge­ge­vens zo­maar uit han­den. Als je ar­ti­ke­len uit het Ver­re Oos­ten op eBay, Ama­zon of AliEx­press aan­schaft, dan is de kans groot dat je lo­ca­tie­ge­ge­vens ui­t­ein­de­lijk in het gro­te be­wa­kings­pa­ra­dijs Chi­na te­recht­ko­men. Het is maar de vraag hoe be­trouw­baar de ser­ver­pro­vi­ders daar zijn. Bo­ven­dien bleek dat veel van die ser­vers schrik­wek­kend ge­voe­lig zijn voor aan­val­len van bui­ten­af. On­der­zoe­kers heb­ben af­ge­lo­pen ja­nu­a­ri met de vei­lig­heids­ga­ten­ver­za­me­ling Track­ma­ged­don aan­ge­toond dat het HTTP-ver­keer niet wordt ver­sleu­teld en dat zwak­ke wacht­woor­den als 123456 niet uit­zon­der­lijk zijn. Veel por­tals kun­nen zelfs door bui­ten­staan­ders be­na­derd wor­den. Som­mi­ge van de aan­bie­ders die het niet zo nauw na­men met de vei­lig­heid heb­ben in­mid­dels wel en­ke­le ga­ten ge­dicht, maar nog bij­na nie­mand heeft zijn web­si­te be­vei­ligd met HTTP-en­cryp­tie.

Wel­kom Trac­car

Dat pro­bleem kun je he­le­maal ver­mij­den met de gratis trac­kings­er­ver­soft­wa­re Trac­car. De soft­wa­re kan over­weg met de mees­te trac­king­pro­to­col­len, toont de ont­van­gen ge­ge­vens op een ei­gen web­si­te en biedt in­te­res­san­te extra's als het weer­ge­ven van be­rich­ten en trac­ker­po­si­ties in de smartpho­ne-app. Thuis­ge­brui­kers met een open­baar IPv4-adres of met een DynDNS-adres kun­nen de ser­ver­soft­wa­re een­vou­dig zelf ge­brui­ken.

Als je maar en­ke­le trac­kers wilt ge­brui­ken, dan heb je wat hard­wa­re be­treft al ge­noeg aan een Rasp­ber­ry Pi. Voor het in­rich­ten moet je wel wat ba­sis­ken­nis van net­werk­tech­niek heb­ben en de Rasp­ber­ry Pi via SSH kun­nen be­he­ren. Om er­voor te zor­gen dat de ge­ge­vens thuis aan­ko­men, hoef je al­leen de ser­ver­in­stel­lin­gen van de trac­ker te wij­zi­gen. Bij veel ap­pa­ra­ten is een com­man­do via sms al ge­noeg. Hie­ron­der be­schrij­ven we hoe je Trac­car op de Rasp­ber­ry Pi in­stal­leert, hoe je bij wij­ze van test je smartpho­ne als trac­ker kunt ge­brui­ken en hoe je het juis­te pro­to­col van je trac­ker iden­ti­fi­ceert zo­dat Trac­car hem be­grijpt.

In­stal­la­tie

Trac­car is in Ja­va ge­schre­ven. Het draait op Li­nux, macOS en Win­dows, mits er Ja­va­run­ti­me 7 op de pc staat. Als Rasp­bi­an Stretch op de Pi draait, dan heb je maar wei­nig com­man­do's no­dig om Trac­car te in­stal­le­ren. Ko­pi­eer de down­lo­ad­link van de Li­nux-in­stal­ler van de Tracar web­si­te (zie de link on­der­aan dit ar­ti­kel) en down­load het be­stand met wget.

wget htt­ps://github.com/tana­naev/ trac­car/re­lea­ses/down­load/v3.16/ trac­car-li­nux-3.16.zip

Pak het be­stand uit, bij­voor­beeld met un­zip:

un­zip trac­car-li­nux-3.16.zip

en start ver­vol­gens de in­stal­la­tie:

su­do ./trac­car.run su­do ja­va -jar /opt/trac­car/trac­ker­ser­ver.jar

Ver­vol­gens ga je naar de we­bin­ter­fa­ce van Trac­car via het lo­ka­le ip-adres van je Rasp­ber­ry op http://(Pi-adres):8082. Je hoeft niet met­een een ac­count aan te ma­ken, maar kunt in­log­gen met 'ad­min' voor zo­wel het e-mail­adres als het wacht­woord.

Om er­voor te zor­gen dat on­be­voeg­de per­so­nen de ser­ver niet kun­nen be­na­de­ren, open je rechts­bo­ven het me­nu en wij­zig je via de op­tie 'Ac­count' het be­heer­ders­wacht­woord. Het is ech­ter vei­li­ger om in het me­nu 'Ge­brui­kers' een nieuw ac­count met ad­mi­ni­stra­tor­rech­ten aan­ma­ken. Zet bij 'Rech­ten' dan een vin­kje bij 'Ad­mi­ni­stra­tor'. Test het nieu­we ac­count in een an­de­re brow­ser en de­ac­ti­veer of ver­wij­der ver­vol­gens het ou­de be­heer­ders­ac­count.

Om er­voor te zor­gen dat on­be­voeg­den zich niet kun­nen re­gi­stre­ren, open je het me­nu-item 'Ser­ver' en ver­wij­der je bij 'Rech­ten' het vin­kje bij 'Re­gi­stra­tie'.

Om Trac­car om te zet­ten naar het me­tri­sche sys­teem, open je in het Ser­ver­me­nu het item 'At­tri­bu­ten', klik je op het plus­te­ken en se­lec­teer je bij 'Naam' de op­tie 'Af­stands­een­heid' en bij 'Waar­de' de op­tie 'km', waar­na je het­zelf­de doet met 'Snel­heids­een­heid' en 'km/h'.

Smartpho­ne als trac­ker

Trac­kers ge­brui­ken een reeks ver­schil­len­de pro­to­col­len om hun da­ta naar een ser­ver te stu­ren. Trac­car on­der­steunt rond de 140 gps-trac­ker­pro­to­col­len. Die wor­den on­der­schei­den aan de hand van de tcp- of udp­poor­ten (5001-5055). Om er­voor te zor­gen dat de trac­kers de ge­re­gi­streer­de po­si­ties aan de ser­ver kan stu­ren, heb je een DynDNS-adres no­dig zo­dat de Rasp­ber­ry Pi van bui­ten­af be­reik­baar is via een vas­te do­mein­naam.

Voor het tes­ten van je in­stal­la­tie en om de weg in Trac­car een beet­je te le­ren ken­nen, kun je je smartpho­ne als trac­ker con­fi­gu­re­ren. Stuur voor de smartpho­ne­app tcp-poort 5055 van je rou­ter door naar je Rasp­ber­ry Pi. Als die poort al voor een an­de­re ser­vi­ce wordt ge­bruikt, dan kun je naar bui­ten toe ook een wil­le­keu­ri­ge an­de­re poort ge­brui­ken. De rou­ter moet bin­nen het LAN de da­ta ech­ter via poort 5055 naar de Trac­car-ser­ver door­ge­ven, zo­dat die het pro­to­col her­kent. Ver­vol­gens down­load en in­stal­leer je de Trac­car-client uit de iOS App sto­re of via An­droid Play. Voer in het veld 'Ser­ver URL' je DynDNS host­naam in en start de dienst.

Je voegt een nieuw ap­pa­raat aan de Trac­car-ser­ver­in­ter­fa­ce toe door op het plus­te­ken in het Ap­pa­ra­ten-ven­ster te klik­ken. Geef je ap­pa­raat een naam naar keu­ze en vul de iden­ti­fi­ca­tie in die je in de Trac­car-app op je smartpho­ne kunt vin­den.

Wan­neer de smartpho­ne en de port­for­war­ding in de rou­ter cor­rect ge­con­fi­gu­reerd zijn, zal het nieu­we ap­pa­raat bin­nen en­ke­le se­con­den op de lijst ver­meld staan. Zo­dra de smartpho­ne zijn eerste po­si­tie heeft ver­stuurt, toont Trac­car die op de kaart. Bij de app staat in het me­n­ui­tem 'Sta­tus' het pro­to­col dat aan­geeft of en wan­neer het ver­stu­ren van een po­si­tie heeft plaats­ge­von­den. Daar­mee zijn de in­stal­la­tie en de test vol­tooid.

Als je van plan bent de smartpho­ne een lan­ge­re pe­ri­o­de als trac­ker in te zet­ten, kun je het bes­te een po­wer­bank mee­ne­men om­dat het veel­vul­dig ver­zen­den van je po­si­tie be­hoor­lijk veel stroom vergt.

Trac­ker her­con­fi­gu­re­ren

Trac­car kan het pro­to­col van een gp­strac­ker zelf niet ach­ter­ha­len. Je moet zelf de juis­te poort voor je spe­ci­fie­ke trac­ker ach­ter­ha­len. Daar­voor kun je als eerste kij­ken of jouw mo­del op de lijst van trac­kers op de web­si­te van Trac­car staat. De lijst toont de pas­sen­de poort en pro­to­col­naam. Als je trac­ker er niet op staat, wil dat niet met­een zeg­gen dat hij niet ge­schikt is voor Trac­car. Bij de tekst over het zoe­ken van het pro­to­col ver­der­op in dit ar­ti­kel staat hoe je de ont­bre­ken­de in­for­ma­tie zelf kunt ach­ter­ha­len.

Stel de ge­von­den poort in zo­dat aan­vra­gen naar je Rasp­ber­ry Pi wor­den door­ge­stuurd. Ga via de ter­mi­nal op de Pi naar de log-di­rec­to­ry en geef daar het log­be­stand weer:

cd /opt/trac­car/logs tail -f trac­car-ser­ver.log

Wij­zig ver­vol­gens de ser­ver­in­stel­ling van je trac­ker via een sms'je. Het com­man­do om dat te doen va­ri­eert per mo­del. Voor de LK109 die we in het ar­ti­kel op pa­gi­na 68 heb­ben ge­test, is het com­man­do bij­voor­beeld:

ad­mi­nip654321 ct.example.com 5013

De­ze re­gel be­staat uit het com­man­do, ge­volgd door het wacht­woord van de trac­ker, het ser­ver­adres en diens poort. In het

ka­der rechts op de­ze pa­gi­na staan tips over wat je kunt doen als het com­man­do niet in de hand­lei­ding staat.

Als de con­fi­gu­ra­tie ge­lukt is en de trac­ker ge­ge­vens naar je Trac­car-ser­ver stuurt, kijk dan eens in het log­be­stand en zoek naar een waar­schu­wing over een nieuw ap­pa­raat:

WARN: Un­known de­vi­ce - 577751 (192.168.1.23)

Die waar­schu­wing be­te­kent dat de poort cor­rect is en dat Trac­car het pro­to­col kan de­co­de­ren. Het num­mer di­rect ach­ter het streep­je is de ap­pa­raat-ID van de trac­ker. Voeg net als eer­der voor de smartpho­ne een nieuw ap­pa­raat toe en ge­bruik de ID uit het log­be­stand. Het in­stel­len van je trac­ker is dan vol­tooid.

Pro­to­col zoe­ken

Als je trac­ker niet op de lijst staat, moet je zelf op zoek naar het ge­bruik­te pro­to­col. Een goed be­gin­punt is het Trac­car-fo­rum. Typ het mo­del­num­mer van je trac­ker in op de Trac­car-web­si­te en laat de fa­bri­kant­naam en even­tu­e­le toe­voe­gin­gen weg. Als de vol­le­di­ge naam bij­voor­beeld 'Shenz­hen TKStar TK905' is, zoek dan op 'TK905'. Als je een ap­pa­raat voor het pro­to­col ge­von­den hebt, stel op je rou­ter zijn poort dan open voor de Rasp­ber­ry Pi. Con­tro­leer in het log­be­stand of de Trac­car-ser­ver het pro­to­col heeft her­kend: zie de ter­mi­nal­com­man­do's hier­bo­ven bij het her­con­fi­gu­re­ren van de trac­ker. Als dat zo is, maak dan een nieuw ap­pa­raat aan via de Trac­car-we­bin­ter­fa­ce.

Als je zoek­tocht niets heeft op­ge­le­verd, open dan een wil­le­keu­ri­ge poort tus­sen 5001 en 5155 voor je Rasp­ber­ry Pi. Wij­zig de in­stel­ling van je trac­ker dan naar je open­ba­re ip-adres of DynDNS-adres en de ge­o­pen­de poort. Het log­be­stand geeft de bin­nen­ko­men­de da­ta hexa­de­ci­maal weer.

In veel ge­val­len kan dat je ver­der hel­pen om het pro­to­col te iden­ti­fi­ce­ren. Ko­pi­eer de hexa­de­ci­ma­le da­ta van een in­put en zet ze om met de HEXASCII-con­ver­ter op de Trac­car-si­te. In het on­der­staan­de voor­beeld zie je een mo­ge­lij­ke in­put van het pro­to­col H02.

*HQ,4109200000,NBR,155910,262,3,0,7,104 06,44047,55,10406[..]

Ver­vol­gens open je het Py­thon-script van de ont­wik­ke­laar (zie de link on­der­aan dit ar­ti­kel). Daar­in staan on­der 'mes­sa­ges' voor­beel­den van tal­lo­ze trac­ker­pro­to­col­len in plat­te tekst. Ver­ge­lijk de uit­voer van je trac­ker met de voor­beel­den en neem de poort over die bij jouw pro­to­col op de mo­del­len­lijst staat. Als je geen pas­send pro­to­col vindt, kun­nen de test­be­stan­den van de Trac­car-ont­wik­ke­laar op GitHub even­tu­eel nog hel­pen (zie we­der­om de link aan het eind).

Be­rich­ten

Trac­car slaat po­si­ties au­to­ma­tisch op in zijn da­ta­ba­se, sa­men met aan­vul­len­de pa­ra­me­ters als de mo­bie­le sig­naal­kwa­li­teit (GSM-RSSI) en het ni­veau van de ac­cu. Je vindt die da­ta in het me­nu 'Rap­por­ta­ges' op de on­der­ste rand van de we­bin­ter­fa­ce. Om op­ge­sla­gen po­si­ties te to­nen, se­lec­teer je het ty­pe 'Rou­te' en klik je op 'Con­fi­gu­reer'. Kies je ap­pa­raat en een be­paal­de pe­ri­o­de. Be­ves­tig dat met een vin­kje en klik op 'Laat zien'.

Af­han­ke­lijk van de om­vang van de da­ta­set, kan een query aan de da­ta­ba­se bij een licht sys­teem zo­als de Rasp­ber­ry Pi even du­ren. Trac­car toont de lo­ca­tie­ge­ge­vens van de op­ge­ge­ven pe­ri­o­de na een suc­ces­vol­le query en te­kent de rou­tes op de kaart. In de ta­bel kun je op wil­le­keu­ri­ge lo­ca­ties klik­ken en de bij­be­ho­ren­de pa­ra­me­ters in het sta­tus­over­zicht zien. Als je be­paal­de pa­ra­me­ters in de ta­bel wilt zien, klik je op de pijl rechts naast de ko­lom­be­schrij­ving en kies je de ge­wens­te en­try. Dat is han­dig voor als de trac­ker pa­ra­me­ters zo­als het ac­cu­ni­veau al­leen mee­s­tuurt als die wij­zi­gen. Op die ma­nier kun je de laatst ont­van­gen waar­de een­vou­dig in de ta­bel vin­den.

Het is ech­ter mooi­er om de da­ta die over een lan­ge­re pe­ri­o­de ver­za­meld zijn in een dia­gram weer te ge­ven. Wij­zig het ty­pe naar 'Gra­fiek', kies in de con­fi­gu­ra­tie een dia­gram­ty­pe, be­ves­tig de aan­wij­zin­gen en klik op 'Laat zien'. Als de trac­ker de ge­ge­vens niet mee­s­tuurt, le­vert dat geen fout­mel­ding op, maar wel een leeg dia­gram.

Ge­o­fen­ces & ge­beur­te­nis­sen

Met be­hulp van ge­o­fen­ces kun je ge­bie­den de­fi­ni­ë­ren waar­in Trac­car een ge­beur­te­nis ge­ne­reert in het pro­to­col tel­kens als je het ge­bied be­treedt of ver­laat. Je stelt een ge­o­fen­ce in door in het me­nu te klik­ken op 'Ge­o­gra­fi­sche ge­bie­den' en dan op het plus­je om een nieuw ge­bied te ma­ken. Voer een naam in en klik op 'Ge­bied'. Maak een ge­bied door een cir­kel te trek­ken of het ge­bied zelf te de­fi­ni­ë­ren (po­ly­goon). Als al­ter­na­tief kun je ook met de po­ly-lijn een rou­te de­fi­ni­ë­ren ter con­tro­le van hoe ver de trac­ker daar­van af­wijkt. Je wijst een ge­o­fen­ce toe door bij 'Ap­pa­ra­ten' de ge­wens­te trac­ker te se­lec­te­ren en ver­vol­gens in het snel­me­nu (tand­wiel­tje) te klik­ken op 'Ge­o­gra­fi­sche ge­bie­den'.

Om ge­o­fen­ces en an­de­re ge­beur­te­nis­sen weer te ge­ven, wij­zig je in het me­nu 'Rap­por­ta­ges' het ty­pe naar 'Ge­beur­te­nis­sen'. Bij de con­fi­gu­ra­tie stel je het ap­pa­raat of de groep in en de­fi­ni­eer je ver­vol­gens wel­ke ge­beur­te­nis­sen uit wel­ke pe­ri­o­de je wilt zien. Be­ves­tig je keu­ze met 'Laat zien'.

Ver­de­re in­for­ma­tie en hand­lei­din­gen voor on­der meer Trac­car kun je vin­den via de link hie­ron­der. (ddu)

Voor extra vei­lig­heid maak je een nieuw be­heer­ders­ac­count aan in plaats van het stan­daard­ac­count te ge­brui­ken.

De ID moet over­een­ko­men met die van de trac­ker om er­voor te zor­gen dat de Trac­cer-ser­ver de da­ta kan toe­wij­zen. De naam speelt daar­bij ver­der geen rol.

Trac­car ont­houdt de lo­ca­ties in een da­ta­ba­se en voegt die met een paar keer klik­ken met de muis aan de plat­te­grond toe.

Newspapers in Dutch

Newspapers from Netherlands

© PressReader. All rights reserved.