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

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.

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.gpgCrie um novo arquivo de repositório para o projeto Docker usando seu editor de texto favorito:
sudonano/etc/apt/sources.list.d/docker.listCole 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 stableAtualize as listagens do repositório da sua máquina e atualize todos os pacotes atuais do sistema:
sudo apt update &&sudo apt upgradeCertifique-se de que o pacote Snap “core” está em execução em seu servidor:
sudo snap install coreInstale o pacote Certbot da Electronic Frontier Foundation:
sudo snap install certbot --classicInstale 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 unzipgitConstruindo e instalando o Ulogger
Crie uma nova pasta em seu diretório home e entre nela:
mkdir ~/ulogger &&cd ~/uloggerPuxe a versão mais recente do Ulogger do repositório Github do desenvolvedor:
git clone https://github.com/bfabiszewski/ulogger-server.git
cd ./ulogger-serverMude para o branch estável mais recente do programa:
git checkout-b v1.2 tags/v1.2Abra o Dockerfile do Ulogger usando seu editor de texto favorito:
nano ./DockerfileEncontre as linhas que contêm “DB_ROOT_PASS” e “DB_USER_PASS” e substitua seus valores por duas strings aleatórias de texto.

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.ymlCole o seguinte bloco de código dentro do seu arquivo compose:
services:
ulogger:
container_name: ulogger-instance
build:
context: .
dockerfile: Dockerfile
ports:
- 8080:80Salve seu arquivo docker-compose.yml, depois execute o seguinte comando para iniciar seu contêiner Docker Ulogger:
sudodocker compose up -dVerifique se o Ulogger está funcionando corretamente listando os contêineres em execução no sistema:
sudodockerps
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/uloggerCole 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.

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.serviceRegistre seu servidor Ubuntu na EFF:
sudo certbot register --agree-tos-m [email protected]Digite “y” e pressione Enter.

Obtenha um novo certificado SSL para seu nome de domínio Ulogger na EFF:
sudo certbot --nginx-d SUBDOMAIN.YOUR-ROOT.DOMAINBom 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.

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.

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

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.

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

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

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.”

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.

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

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.