Skip to content

MalwareDataLab/autodroid-watcher-client

Repository files navigation

AutoDroid Watcher Client

📝 Índice

📖 Sobre

Este repositório contém o código-fonte do cliente do AutoDroid Watcher, um projeto desenvolvido para coletar dados de telemetria e conduzir experimentos do software AutoDroid da Malware DataLab.

Este cliente deve ser instalado nas máquinas onde o AutoDroid Worker está instalado. O cliente é responsável por coletar os dados de telemetria e enviá-los para o servidor, além de iniciar os experimentos e a coleta de dados.

🏁 Primeiros Passos

Estas instruções irão ajudá-lo a obter uma cópia deste projeto e executá-lo em sua máquina local para fins de desenvolvimento e teste.

Configuração do AutoDroid Worker

Antes de configurar este cliente, é necessário ter o AutoDroid Worker instalado e configurado em sua máquina. Siga as instruções de instalação disponíveis no repositório do Worker.

Configuração deste AutoDroid Watcher Client

Clone este repositório em sua máquina local:

git clone https://github.com/MalwareDataLab/autodroid-watcher-client.git

Entre no diretório do projeto:

cd autodroid-watcher-client

Este software foi desenvolvido para ser executado em um ambiente Linux.

Pré-requisitos

Para executar o projeto, você precisará ter o Node.js e o npm instalados em sua máquina. Você pode baixar o Node.js aqui ou através do comando abaixo:

# Gerenciador de versões do Node.js:
curl -o- https://fnm.vercel.app/install | bash

# Baixar e instalar o Node.js:
fnm install 22.14.0

# Definir a versão do Node.js:
fnm use 22.14.0

Instalação

Após clonar o repositório, entre no diretório do projeto e instale as dependências:

npm install

📱 Utilização

Parâmetros do Cliente

O cliente requer os seguintes parâmetros para execução:

--token, -t TOKEN    # Token de autenticação do worker
--url, -u URL        # URL do servidor
--name, -n NAME      # Nome do worker

Exemplo de uso:

node dist/index.js --token abc123 --url http://server:3000 --name worker1
# ou usando formas curtas
node dist/index.js -t abc123 -u http://server:3000 -n worker1

Instalação Automática

Para instalar e executar o cliente automaticamente, você pode usar o script de instalação:

curl -s https://raw.githubusercontent.com/MalwareDataLab/autodroid-watcher-client/main/install.sh | bash -s -- --token abc123 --url http://server:3000 --name worker1

O script irá:

  1. Verificar os pré-requisitos (Node.js v22+, npm)
  2. Instalar o PM2 se necessário
  3. Clonar/atualizar o repositório
  4. Iniciar o serviço com os parâmetros fornecidos
  5. Configurar o serviço para iniciar automaticamente

Opções adicionais do script:

-d, --dir DIR        # Diretório de instalação (padrão: ./autodroid-watcher-client)
-h, --help           # Mostrar mensagem de ajuda

Exemplos:

# Instalação padrão
curl -s https://raw.githubusercontent.com/MalwareDataLab/autodroid-watcher-client/main/install.sh -H "Cache-Control: no-cache" | bash -s -- --token abc123 --url http://server:3000 --name worker1

# Instalação em diretório específico
curl -s https://raw.githubusercontent.com/MalwareDataLab/autodroid-watcher-client/main/install.sh -H "Cache-Control: no-cache" | bash -s -- -t abc123 -u http://server:3000 -n worker1 -d /opt/autodroid

Comandos Úteis

Após a instalação, você pode usar os seguintes comandos para gerenciar o serviço:

pm2 logs autodroid-watcher  # Visualizar logs
pm2 monit                   # Monitorar recursos
pm2 stop autodroid-watcher  # Parar o serviço

Executando o Cliente (Desenvolvimento)

Para executar o cliente em modo de desenvolvimento, utilize o comando abaixo:

npm run dev

Para executar o cliente em modo de debug:

npm run dev:debug

Compilando o Projeto

Para compilar o projeto:

npm run build

Verificação de Código

Para verificar o código:

npm run lint

⛏️ Tecnologias Utilizadas

Geral

É importante mencionar as demais ferramentas que serão utilizadas nas duas partes do projeto:

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors