Guida server privato per Traccar (GPS SinoTrack e Tracking vari)

Con questa guida andremo a scoprire come configurare un server privato per Traccar (GPS SinoTrack e Tracking vari).

In precedenza vi ho spiegato come configurare e utilizzare i GPS Tracking SinoTrack attraverso i server Demo forniti dall’ottimo Traccar. Ultimamente però questi server stanno avendo problemi offerendo molte volte dati incompleti o risultano non raggiungibili. Per ovviare a queste problematiche abbiamo due alternative:

  1. Pagare per attivare un abbonamento per un server Traccar
  2. Attivare un server privato Traccar attraverso il piano gratuito di Amazon AWS EC2.

Per chi come me utilizza il prodotto a livello casalingo (controllare dove si trovano i miei veicoli e tenere traccia delle mie uscite in moto) il sevizino offerto gratuitamente da Amazon è un ottima soluzione.

Prerequisiti:

Per procedere alla configurazione del server lavoreremo prevalentemente su Amazon AWS e per mantenere il tutto gratuito anche al termine del periodo di prova andremo a utilizzare solamente un istanza EC2 per hostare il tutto.
Se volete essere precisi precisi vi consiglio di acquistare anche un vostro dominio (con SSL). Tenete in considerazione che il dominio gratuito offerto da Amazon EC2 (*.compute.amazonaws.com) non viene riconosciuto dal servizio di certificazione SSL gratuita Let’s Encrypt.

  1. Account Amazon AWS
  2. *Dominio gratuito
  3. *Certificato SSL per il dominio

Il server vero e proprio:

Quale configurazione scelgo?

Per la configurazione del server possiamo scegliere due strade distinte: Invariato: Per la configurazione del server possiamo scegliere due strade distinte:

1.Easy Docker:

Useremo un container Docker per far girare Traccar. Il server girerà in HTTP sulla porta 80 Invariato: Useremo un container Docker per far girare Traccar. Il server girerà in HTTP sulla porta 80

PRO
Procedura facile e veloce

CONTRO
Istanza non sicura

Loggatevi sulla console di AWS e selezionate EC2 Service –> “Instances” –> “Launch Instance”. A questo punto continuate selezionando Amazon Linux 2 AMI(64-bit (x86)) e “t2.micro”. Cliccate “Next: Configure Instance Details” e scorrete fino a trovare “Advanced Details” e inserite nello spazio “User Data” questo testo:

curl -sSL https://raw.githubusercontent.com/xadmi/traccar-aws/master/get.sh -o get.sh && sudo bash -e get.sh –no-le

Cliccate. “Next: Add Storage” e quindi “Next: Configure Security Group” qui dovrete andare a definire alcuni parametri relativi alle porte TCP e UDP. I
Create ora un nuovo “Security Group”, selezionatelo e inserite i seguenti parametri: Invariato: Create ora un nuovo “Security Group”, selezionatelo e inserite i seguenti parametri:

Parametri server UDP TCP

Procedete e cliccate su “Review and Launch” e date un ultima conferma con il pulsante “Launch”. Create o aggiungete una nuova chiave. Questa chiave vi permetterà di accedere alla vostra istanza EC2 via SSH.

Ora spostiamoci su “View Instances” e attendiamo che la nostra istanza EC2 venga inizializzata. La procedura può durare anche 3-4 minuti quindi rilassatevi e attendete. Una volta terminata la compilazione dello script il vostro server Traccar sarà online.

Per accedere al server vi basterà selezionare la vostra istanza e copiate l’indirizzo pubblico IPv4 nella barra degli indirizzi del vostro browser.

Per magia dovrebbe apparire la pagina di login di Traccar.

login_server_traccar
Per accedere al server con utilizzate le credenziali di default user: admin e password: admin. Ricordatevi si cambiarle una volta loggiati.

2.Docker sicuro con SSL

In questo caso utilizzeremo sempre un container Docker ma con l’utilizzo di un proxy Nginx con un certificato SSL acquisito automaticamente dal servizio gratuito Let’s Encrypt.

PRO
Server protetto da SSL

CONTRO
Procedura più elaborata

Immagino che la maggior parte di voi desideri un server sicuro, sopratutto oggi che ci sono servizi come Let’s Encrypt che offrono certificati SSL gratuitamente.
La procedura è pressoché simile alla precedente.
Loggatevi sulla console di AWS e selezionate EC2 Service –> “Instances” –> “Launch Instance”. A questo punto continuate selezionando Amazon Linux 2 AMI(64-bit (x86)) e “t2.micro”. In questa configurazione lasceremo il campo “User Data” in “Configure Instance Details” vuoto. Andremo invece a eseguire l’installazione via SSH.

Prima di procedere dovremmo verificare che lo stato della nostra installazione sia “running”. Possiamo dunque spostarci nella sezione “Elastic IPs” e associare l’Elastic IP alla nostra istanza.

AWS_IP
Verifichiamo inoltre che i DNS del nostro dominio si siano propagati correttamente. In questo caso miogpstracker.esempio.com si risolverà correttamente in IPVOSTROSITO.

curl -sSL https://raw.githubusercontent.com/xadmi/traccar-aws/master/get.sh -o get.sh && sudo bash -e get.sh

Vi verrà chiesti di inserire i seguenti parametri:

Domain: miogpstracker.esempio.com
Email: miaemail@esempio.com

L’indirizzo email è richiesto dal servizio Let’s Encrypt. Forniti i dati l’installazione inizierà. Al termine del processo potrete accedere al vostro server Traccar privato digitando l’indirizzo: https://miogpstracker.esempio.com

Configurare il tracker

Ora passiamo alla configurazione del tracker. Se state configurando da zero il tracker vi consiglio di rare uno sguardo alla precedente guida (che utilizzava i server Demo di Traccar) ma che rimane comunque valida per le configurazioni di base.

Se vogliamo andare a utilizzare il nostro server privato dovrebbe andare a modificare la configurazione del tracker come segue:

04AAAA miogpstracker.esempio.com 5001
Per configurare il nostro server privato invieremo il comando 804 e sostituendo AAAA con la nostra password seguita dall’indirizzo del nostro server privato e dal numero di porta, in questo caso 5001. Una volta inoltrato il comando e riavviato il dispositivo (comando RESTART o CQ) attendiamo qualche istante e inviamo il comando RCONF o CXTZ. A questo punto il tracker risolverà il dominio del server scelto e ci restituirà il suo indirizzo IP.
NB. Su alcuni dispositivi è consigliabile inviare direttamente l’indirizzo IP del server invece del dominio. Il comando quindi sarà 804AAAA IPVOSTROSITO 5001

Aggiungere il nuovo device al nostro server.

Prima di poter aggiungere e configurare il tracker all’interno del nostro server dobbiamo associarlo individuando in suo identificativo univoco.
Loggatevi con SSH nel server (“Instances”–>“Connect” sulla pagina “Connect To Your Instance“–>“EC2 Instance Connect”–>“Connect”) e digitate il seguente comando:

docker logs traccar

dovreste ricevere una risposta simile a questa:

2020-09-19 20:23:27 INFO: user: 1, action: login
Aggiunto: 2020-09-19 20:23:06 INFO: [88a32981] connected
Aggiunto: 2020-09-19 20:25:05 INFO: [88a32981: SinoTrack < 44.166.30.131] HEX: 40730e01435668272412132430002b1240d0a
Aggiunto: 2020-09-19 20:25:05 WARN: Unknown device – 423414151566120 (44.166.30.131)
Aggiunto: 2020-09-19 20:25:10 INFO: [88a32981: SinoTrack < 44.166.30.131] HEX: 40730a1304060400010113b6a40d0a
Aggiunto: 2020-09-19 20:25:13 INFO: [88a32981: SinoTrack < 44.166.30.131] HEX: 4073222204010100001fc105634206020544af0004000104015209001dbd00000000042e920d0a

Quello che noi interessa è la riga che inizia con WARN: Unknown Device. Il numero 423414151566120 è l’identificativo univoco del nostro tracker.
Accediamo al nostro server e nella scheda Devices clicchiamo sul “+”, diamo un nome al nostro tracker e inseriamo l’identificativo univoco.

aggiungi_device
Il vostro tracker apparirà online mostrando la sua posizione aggiornata sulla mappa.

NB. controllate che il tracker si trovi in all’aperto e sotto copertura di rete n caso contrario non lo vedrete online o nella posizione aggiornata finche non troverà segnale GPS e telefonico.