Como Criar Seu Próprio Rastreador GPS com Ulogger no Linux

Uma fotografia de uma pessoa olhando para um mapa digital enquanto faz trilha.

Ulogger é um servidor leve de rastreamento GPS para Linux com um aplicativo móvel dedicado. Este artigo mostrará como instalar o Ulogger em um servidor Ubuntu 24.04 e vinculá-lo a um telefone Android.

Índice

  • Por que rastrear dados GPS com Ulogger?
  • Obtendo as dependências para o Ulogger
  • Construindo e instalando o Ulogger
  • Configurando um proxy reverso SSL usando Nginx
  • Executando o Ulogger pela primeira vez

Por que rastrear dados GPS com Ulogger?

Um dos maiores pontos de venda do rastreador GPS Ulogger é que você pode hospedá-lo diretamente em seu sistema Linux. Isso permite que você registre suas trilhas de geolocalização sem o risco de pessoas mal-intencionadas espionarem seus dados.

Uma captura de tela da interface padrão do ulogger.

Outra vantagem do Ulogger é que ele pode importar e exportar formatos de arquivo de geolocalização padrão, como KML e GPX. Esta é uma característica inestimável se você estiver usando uma solução GPS existente e quiser migrar seus dados para o Ulogger.

Por último, o Ulogger é um software livre e de código aberto. Isso significa que qualquer pessoa pode acessar o código-fonte do programa, tornando as vulnerabilidades mais fáceis de detectar e corrigir. Como resultado, o Ulogger pode ser uma opção mais resiliente se você estiver procurando por um servidor de registro GPS de longo prazo para Linux.

FYI: aprenda como a tecnologia GPS funciona em termos simples.

Obtendo as dependências para o Ulogger

Suposição: Este artigo assume que você está instalando o Ulogger em um VPS Ubuntu 24.04 com 2GB de RAM e que você possui atualmente um nome de domínio.

O primeiro passo na instalação do Ulogger é obter as dependências para o Docker. Para fazer isso, importe a chave de assinatura do repositório do projeto Docker:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg |sudo gpg --dearmor-o/etc/apt/keyrings/docker.gpg  
sudochmod a+r /etc/apt/keyrings/docker.gpg

Crie um novo arquivo de repositório para o projeto Docker usando seu editor de texto favorito:

sudonano/etc/apt/sources.list.d/docker.list

Cole a seguinte linha de código dentro do seu novo arquivo de repositório:

deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu noble stable

Atualize as listagens do repositório da sua máquina e atualize todos os pacotes atuais do sistema:

sudo apt update &&sudo apt upgrade

Certifique-se de que o pacote Snap “core” está em execução em seu servidor:

sudo snap install core

Instale o pacote Certbot da Electronic Frontier Foundation:

sudo snap install certbot --classic

Instale o Docker, Docker Compose e as dependências para implantar o Ulogger:

sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx unzipgit

Construindo e instalando o Ulogger

Crie uma nova pasta em seu diretório home e entre nela:

mkdir ~/ulogger &&cd ~/ulogger

Puxe a versão mais recente do Ulogger do repositório Github do desenvolvedor:

git clone https://github.com/bfabiszewski/ulogger-server.git  
cd ./ulogger-server

Mude para o branch estável mais recente do programa:

git checkout-b v1.2 tags/v1.2

Abra o Dockerfile do Ulogger usando seu editor de texto favorito:

nano ./Dockerfile

Encontre as linhas que contêm “DB_ROOT_PASS” e “DB_USER_PASS” e substitua seus valores por duas strings aleatórias de texto.

Um terminal destacando as duas senhas aleatórias para o banco de dados do servidor ulogger.

Nota: você pode gerar seu próprio texto aleatório executando o seguinte comando: cat /dev/urandom | tr -dc 'A-Za-z0-9' | fold -w 32 | head -n 1.

Salve seu Dockerfile, em seguida, crie um arquivo “docker-compose.yml” usando seu editor de texto favorito:

nano ./docker-compose.yml

Cole o seguinte bloco de código dentro do seu arquivo compose:

services:  
  ulogger:  
    container_name: ulogger-instance  
    build:  
      context: .  
      dockerfile: Dockerfile  
    ports:  
      - 8080:80

Salve seu arquivo docker-compose.yml, depois execute o seguinte comando para iniciar seu contêiner Docker Ulogger:

sudodocker compose up -d

Verifique se o Ulogger está funcionando corretamente listando os contêineres em execução no sistema:

sudodockerps

Um terminal destacando o contêiner Docker ulogger-server em execução.

Configurando um proxy reverso SSL usando Nginx

Neste ponto, você agora tem o servidor Ulogger rodando na porta 8080. No entanto, para acessá-lo, você precisa criar um proxy seguro para conexões de entrada usando o Nginx.

Comece criando um novo registro “A” em seu domínio apontando para o endereço IP da sua máquina Ulogger.

Volte para seu servidor e crie um arquivo de configuração de site para sua instância Ulogger:

sudonano/etc/nginx/sites-available/ulogger

Cole o seguinte bloco de código dentro do seu novo arquivo de configuração:

server{  
  
server_name SUBDOMAIN.YOUR-ROOT.DOMAIN;  
  
location / {  
proxy_passhttp://127.0.0.1:8080;  
proxy_http_version 1.1;  
proxy_redirect off;  
proxy_set_header Upgrade $http_upgrade;  
proxy_set_header Connection "upgrade";  
proxy_set_header X-Forwarded-Proto https;  
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
proxy_set_header Host $host;  
}  
}

Substitua o valor da variável “server_name” pelo seu nome de domínio.

Um terminal destacando a variável server_name no arquivo de configuração do site Nginx para o ulogger.

Salve seu arquivo de configuração do site Nginx, depois crie um link simbólico para ele no diretório “sites-enabled” do Nginx:

sudoln-s/etc/nginx/sites-available/ulogger /etc/nginx/sites-enabled/

Ative e inicie o serviço Nginx em sua máquina:

sudo systemctl enable--now nginx.service

Registre seu servidor Ubuntu na EFF:

sudo certbot register --agree-tos-m [email protected]

Digite “y” e pressione Enter.

Um terminal destacando o prompt para o registro da newsletter do Certbot.

Obtenha um novo certificado SSL para seu nome de domínio Ulogger na EFF:

sudo certbot --nginx-d SUBDOMAIN.YOUR-ROOT.DOMAIN

Bom saber: aprenda como você pode proteger sua identidade online criando um servidor de aliases de e-mail usando o SimpleLogin.

Executando o Ulogger pela Primeira Vez

Teste se sua instância Ulogger está funcionando corretamente navegando até seu subdomínio usando seu navegador web.

Uma captura de tela mostrando a tela de login do ulogger.

Digite “admin” em ambos os campos Nome de Usuário e Senha, e pressione Enter para fazer login.

Clique no nome da sua conta no canto superior direito da página e selecione Mudar senha.

Uma captura de tela mostrando a localização do prompt

Digite “admin” na caixa de texto de Senha antiga e, em seguida, forneça uma nova senha para sua instância.

Uma captura de tela mostrando a janela de prompt de senha do servidor ulogger.

Clique em Enviar para confirmar suas alterações, depois teste fazendo logout do Ulogger e fazendo login novamente.

Bom saber: aprenda como otimizar sua preparação para as férias analisando algumas das melhores ferramentas de viagem para Linux.

Vinculando Seu Servidor Ulogger com Android

Para registrar ativamente suas trilhas GPS, você precisará primeiro obter o aplicativo móvel dedicado do Ulogger. No momento, você só pode obter este programa na F-Droid Store.

Uma captura de tela mostrando o cliente GPS ulogger para Android.

Abra o aplicativo Android Ulogger e clique no ícone de engrenagem no canto superior direito do aplicativo.

Uma captura de tela destacando o ícone de engrenagem no aplicativo móvel do ulogger.

Toque na opção Fornecedor de localização, em seguida, selecione Rede e GPS no menu de botões de rádio.

Uma captura de tela destacando a opção

Selecione a opção Nome de usuário e digite “admin” na caixa de texto.

Toque na opção Senha e forneça a senha que você definiu para sua conta de administrador.

Selecione a opção URL do servidor e forneça a URL base completa para o seu servidor Ulogger. No meu caso, é “https://gps.myvpsserver.top.”

Uma captura de tela mostrando os detalhes da conta e do servidor do backend do ulogger.

Ative a opção Sincronização ao vivo acima da categoria de detalhes do servidor. Isso permitirá que seu telefone Android envie automaticamente os dados GPS para o backend do Ulogger.

Volte à tela principal do aplicativo móvel e toque no botão Nova Trilha.

Uma captura de tela destacando a opção

Ative o interruptor Rastreamento para começar a registrar seus dados GPS em seu servidor Ulogger.

Uma captura de tela destacando o interruptor

Confirme se o Ulogger está rastreando seus dados GPS corretamente, acessando sua conta de administrador.

Hospedar seu servidor e cliente de rastreamento GPS com o Ulogger é apenas uma forma de acompanhar seus registros de geolocalização hoje. Aprenda como você pode rastrear sua localização mesmo sem uma conexão com a internet verificando alguns dos melhores aplicativos GPS offline para Android.

Créditos da imagem: Antonio Groß via Unsplash e Ulogger Github. Todas as alterações e capturas de tela por Ramces Red.