self hosted open source find my devide server

To find my device ειναι μια Foss android εφαρμογή που σου επιτρέπει να δεις ρην τοποθεσία του κινητού σου, το ιστορικό των τοποθεσιών σου, να κλειδώσεις το τηλέφωνο σου αλλά και να το διαγραψεις με factory reset απομάκρυνεμένα με sms η απο κάποιον browser

Fdroid link

Εδώ θα δουμε πως θα κάνουμε self host τον σέρβερ που θα τρέχει την σελιδα διαχείρησης απο την οποία βλέπουμε το ιστορικό τοποθεσίας και διαχείρησης

Προαπαιτούμενο να έχουμε εγκατεστημένη τη γλώσσα go

Την εγκατέστησα από το aur manjaro arm με

sudo pacman -S yay

yay install -S go

debian

sudo apt install golang-go

Ή αν δεν θέλεις αποpackage manager from source

Link

  1. clone το repo

git clone https://gitlab.com/Nulide/findmydeviceserver.git

Η κατεβάζουμε και από συμπιέζουμε από

https://gitlab.com/Nulide/deviceserver/-/releases

  1. πάμε στο φάκελο source

cd ~/findmydeviceserver/src

  1. κάνουμε build το project

sudo go build fmdserver.go

  1. τεσταρουμε

~/findmydeviceserver/src/fmdserver

  1. navigate to localhost:1020

  2. stop the server

ctrl + c

  1. edit το αρχείο .service

nano etc/systemd/system/fmdserver.service

Αντικαθιστούμε στο executable filepath

ExecStart=/home/user/findmydeviceserver/src/fmdserver

Το filepath πρέπει να είναι απόλυτο . Αντικατέστησε το user με το username σου

  1. αντιγραφή του αρχείου στο systemd

sudo cp /home/ippo/findmydeviceserver/src/etc/systemd/system/fmdserver.service /usr/lib/systemd/system/fmdserver.service

Σε debian το path μάλλον είναι

etc/systemd/system/fmdserver.service

  1. εκινούμε το service

sudo systemctl start fmdserver

  1. ενεργοποιούμε το service

sudo systemctl enable fmdserver

  1. Η εφαρμογή κάνει expose μια insecure 1020 και μια secure θύρα 1008
    Λόγω έλλειψης documentation αλλά και εμπειρίας δεν κατάφερα να κάνω τη secure να δουλέψει με κάποιο certificate χρησιμοποίησα την insecure σε συνδυασμό με Κάντυ το οποίο μου έδωσε certificate και https κρυπτογράφηση

sudo nano /etc/caddy/Caddyfile

add

your.domain.name:an.open.router.port { reverse_proxy localhost:1020 }

Στην εφαρμογή

  1. Από ρυθμίσεις>>FMD-SERVER>>url

Βάζω το your.domain.name:an.open.router.port

Κάνω Enable , επιλέγω κάθε πόσα λεπτά θα στέλνει τοποθεσία, και τι είδους Location data (gps,network)

  1. πατάω register on server
    3)βάζω το server is και επιλέγω ανά password στο prompt

Τώρα μπορώ να επισκεφτώ το url από οποιοδήποτε browser

Το παρόν είναι αναδιατύπωση του channel post μου εδώ

5 «Μου αρέσει»

Ευχαριστουμε.

Μια απορια εχω, αν ξερει καποιος. Στην περιγραφη της εφαρμογης στο fdroid, λεει στα
Planned Features πως «Locate the phone without GPS or network». Τι εννοει; Πως μπορει να κανει locate το τηλεφωνο χωρις gps και network; Εγω μεχρι τωρα ηξερα οτι αυτο μπορει να γινει ειτε με gps ή με το σε ποιες κεραιες του παροχου κινητης συνδεεται ή σε ποιο wifi συνδεεται. Τα δυο τελευταια τα περιλαμβανω στο network (μηπως κανω λαθος σε αυτο; )

https://opencellid.org

Μια σύντομη περιγραφή του πως δουλεύει απο ενα ποστ στο φόρουμ τους εδω

Καλη παρατήρηση πάντως
Ουσιαστικά αυτό που λες ειναι ''με το σε ποιες κεραιες του παροχου κινητης συνδεεται ‘’

Το open cell ID είναι ήδη ενσωματωμένο στο app .Απαιτεί ενα sign up και μετα βάζει το api key σου στο app

1 «Μου αρέσει»

Ωστε με το opencellid…
Ευχαριστω…