Algumas partes desta página ainda estão em inglês: o original em inglês sofreu alterações após ter sido traduzido.
Referência / Configuração
Instalar, verificar e atualizar
Instale com um único comando, verifique assinaturas e hashes, atualize e remova uma instalação.
TgWitness / Documentação · Introdução
Projeto · Introdução rápida · Implantação
Nesta página
Instale com um único comando#
O instalador guiado inclui um ambiente de execução Python privado. Use o mesmo endereço para instalações futuras: cada publicação atualiza o instalador, os hashes, as assinaturas e as informações de compilação em conjunto.
Linux / macOS (Bash):
curl -fsSL https://get.destroy.tools/install.sh | bash
Em um servidor Ubuntu, execute como root para instalar um serviço em segundo plano. Em um computador desktop, execute como seu usuário normal.
Windows (PowerShell ou Prompt de Comando):
powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "irm https://get.destroy.tools/install.ps1 | iex"
Não é necessário nenhum administrador no Windows. O processo filho do PowerShell mantém seu terminal aberto com o resultado. O Python e as dependências permanecem na instalação.
No Ubuntu, escolha “Este computador”, “Link HTTPS temporário” ou “Domínio próprio”.
O instalador exibe o endereço do painel e a chave de acesso. Para obter um link temporário, abra
esse endereço HTTPS no seu navegador e insira a chave. Com acesso local em um servidor remoto,
use um encaminhamento SSH a partir do seu computador (ssh -L 8787:127.0.0.1:8787 user@server)
e abra http://127.0.0.1:8787. No macOS e no Windows, o painel local abre no seu
navegador; mantenha o terminal em execução.
Faça login no Telegram no painel e escolha o que coletar. A instalação por si só não inicia a coleta do Telegram.
Onde tudo funciona#
get.destroy.tools É um Cloudflare Worker que fornece downloads estáticos. Não possui o painel
TgWitness, nem sessão do Telegram, nem banco de dados de evidências do usuário. Não é roteado para
um VPS do projeto. O aplicativo é executado na máquina em que você executa o comando.
| Instalação | Programa | Dados |
|---|---|---|
| Ubuntu como root | /opt/tgwitness |
Serviço do sistema: /var/lib/tgwitness-<installation ID>; use tgwitness paths para o caminho exato. |
| Usuário de Linux / macOS | ~/.local/share/tgwitness |
data/live nessa instalação. |
| Usuário do Windows | %LOCALAPPDATA%\TgWitness |
data\live nessa instalação. |
Defina TGWITNESS_INSTALL_DIR para escolher outra pasta. As versões instaladas e os dados
são separados. O instalador não envia suas contas, mensagens ou chaves para
o site de download. Ao escolher um túnel do Cloudflare, o tráfego do painel passa pelo
Cloudflare; ao usar seu próprio domínio, o tráfego é direcionado para o seu próprio servidor.
With TGWITNESS_TRUSTED_PROXIES, the panel accepts a single X-Forwarded-Proto: https from a trusted proxy to set Secure download cookies.
Cada instalação inclui os arquivos START-HERE.html e START-HERE.txt, com
caminhos locais, comandos e links para o repositório. Execute tgwitness guide para abrir o guia.
No Windows, use & "$env:LOCALAPPDATA\TgWitness\bin\tgwitness.cmd" guide no PowerShell.
Configurações de pesquisa de texto completo#
A pesquisa de texto completo (visualização) não requer configuração. Seu índice é criado em segundo plano após uma atualização.
| Variável ou comando | Efeito |
|---|---|
TGWITNESS_FULLTEXT=disk |
Padrão: o índice é mantido em search/fulltext.sqlite3 de cada espaço de trabalho |
TGWITNESS_FULLTEXT=memory |
Não há arquivo de índice; o índice é reconstruído a cada inicialização |
TGWITNESS_FULLTEXT=off |
Sem índice; apenas pesquisa por texto exato |
tgwitness index status |
Indexar o estado de cada espaço de trabalho |
tgwitness stop, tgwitness index rebuild, tgwitness start |
Recriar todos os índices a partir do diário assinado |
A escolha do administrador em Diário → Filtros → Índice de pesquisa substitui a
variável para aquele espaço de trabalho. Os comandos localizam o diretório de dados da instalação
que os executa; em outros casos, adicione --data-dir o caminho de tgwitness paths.
Para obter um dicionário completo de ucraniano (dados GPL-3.0), instale pymorphy3-dicts-uk no
ambiente Python da instalação.
Acesso por linha de comando#
A linha de comando (pré-visualização) lê o arquivo em busca de scripts e agentes.
| Variável | Efeito |
|---|---|
TGWITNESS_URL |
Endereço do painel para tgwitness search, context, messages, stats e export; padrão http://127.0.0.1:8787 quando um token estiver definido |
TGWITNESS_MCP_TOKEN |
Arquive o token de conexão em Integrações → MCP, compartilhado com os clientes do MCP; --token-file em vez disso, lê-o de um arquivo |
TGWITNESS_DATA |
O diretório de dados é lido diretamente quando nenhum --data-dir, URL ou token for fornecido |
Verifique antes de executar#
O comando de uma linha confia no HTTPS para seu script inicial. Esse script verifica SHA-256 e a assinatura RSA do projeto no aplicativo e nas restrições antes da instalação. Você também pode baixar e verificar o script inicial primeiro.
A chave de lançamento pública é release-signing.pub. Seu SHA-256 é:
039d98a658ccda14253e45a00335b4a68d840976d8ec18b8d4355cc7c458447d
Guarde essa impressão digital de uma revisão do repositório em que você confia. Uma soma de verificação proveniente do mesmo servidor de download detecta uma incompatibilidade; a chave pública, cuja confiabilidade é verificada de forma independente, é o que autentica a assinatura de uma versão.
Use um diretório novo e vazio para os downloads de verificação abaixo.
Linux / macOS — execute em um diretório de downloads novo e vazio (requer curl e OpenSSL):
curl -fSLO https://get.destroy.tools/install.sh &&
curl -fSLO https://get.destroy.tools/install.sh.sig &&
curl -fSLO https://get.destroy.tools/release-signing.pub &&
test "$(openssl dgst -sha256 release-signing.pub | awk '{print $NF}')" = \
'039d98a658ccda14253e45a00335b4a68d840976d8ec18b8d4355cc7c458447d' &&
openssl dgst -sha256 -verify release-signing.pub -signature install.sh.sig install.sh &&
bash install.sh
A && cadeia é interrompida antes da execução se um download, uma verificação de impressão digital da chave ou de assinatura
falhar. Se houver uma publicação entre o download do script e sua
assinatura, baixe ambos novamente. Instaladores antigos mantêm suas URLs de pacotes imutáveis.
Windows — verifique a imagem SHA-256 antes de executar:
Invoke-WebRequest https://get.destroy.tools/install.ps1 -OutFile install.ps1 -UseBasicParsing
Get-FileHash .\install.ps1 -Algorithm SHA256
Invoke-RestMethod https://get.destroy.tools/SHA256SUMS.txt
Compare o hash com a install.ps1 linha. Para uma verificação independente da assinatura,
use o OpenSSL (por exemplo, no Git Bash) e a mesma impressão digital da chave pública acima:
curl -fSLO https://get.destroy.tools/install.ps1 &&
curl -fSLO https://get.destroy.tools/install.ps1.sig &&
curl -fSLO https://get.destroy.tools/release-signing.pub &&
test "$(openssl dgst -sha256 release-signing.pub | awk '{print $NF}')" = \
'039d98a658ccda14253e45a00335b4a68d840976d8ec18b8d4355cc7c458447d' &&
openssl dgst -sha256 -verify release-signing.pub -signature install.ps1.sig install.ps1 &&
powershell.exe -NoProfile -ExecutionPolicy Bypass -File install.ps1
A própria instalação no Windows verifica as assinaturas dos pacotes com o .NET e não
requer o OpenSSL. Trata-se de assinaturas RSA-3072 independentes / SHA-256, e não de Authenticode.
O manifesto registra a versão do software,
o commit exato do Git, o ID de lançamento imutável e o SHA-256 de cada artefato. A página contém um link
para a fonte correspondente. O manifesto e a lista de checksums também possuem assinaturas
independentes (manifest.json.sig e SHA256SUMS.txt.sig).
Atualizar uma instalação existente#
Uma nova publicação atualiza o site de download; os programas instalados são atualizados quando você
executa o instalador novamente. Não há atualizador automático nem reinício automático de uma
coleção em execução. O canal atual do instalador é o “preview”; ele segue
versões publicadas e verificadas de main, cujo commit pode ser mais recente do que a última
versão numerada do GitHub. A versão da página provém de pyproject.toml; seu commit
e o ID da compilação distinguem as atualizações dentro da mesma versão de pré-visualização.
A publicação ocorre automaticamente após esse commit específico passar pelas verificações de aplicativo e segurança e o pacote assinado passar nos testes de instalação no serviço Ubuntu e no Windows PowerShell. Enquanto as verificações estão em andamento, ou caso falhem, os mesmos comandos continuam a instalar a compilação verificada anteriormente. O manifesto da compilação mostra qual commit está disponível no momento; o número da versão por si só pode permanecer o mesmo entre as atualizações de pré-visualização.
Use a mesma pasta de instalação e o mesmo usuário do sistema operacional de antes. Faça backup do diretório de dados
completo com a coleta interrompida; tgwitness paths identifica-o. Uma exportação assinada
não é um backup completo da instalação.
Instalação como root no Ubuntu em /opt/tgwitness:
curl -fsSL https://get.destroy.tools/install.sh | TGWITNESS_INSTALL_DIR=/opt/tgwitness bash -s -- --no-start
Após uma instalação bem-sucedida:
/opt/tgwitness/bin/tgwitness restart
/opt/tgwitness/bin/tgwitness status
/opt/tgwitness/bin/tgwitness open
Para a instalação em Linux/macOS, use a configuração original TGWITNESS_INSTALL_DIR ou
as configurações padrão e execute o primeiro comando de instalação novamente. Feche um painel em primeiro plano
antes da atualização e reinicie-o depois. Para um serviço configurado no Linux,
execute o comando tgwitness restart comando.
Windows: feche o painel em execução, execute o comando de instalação do Windows novamente e,
em seguida, abra bin\tgwitness.cmd na mesma instalação. O instalador mantém os dados,
sessões, configurações de acesso e chaves de assinatura. Ele alterna o iniciador somente após
o novo ambiente passar nas verificações; uma instalação com falha mantém o
iniciador anterior em vigor. Guarde o backup pré-atualização para alterações no formato de armazenamento.
Comandos de uso diário no Ubuntu#
| Comando | Resultado |
|---|---|
tgwitness open |
URL atual do painel e chave de acesso. |
tgwitness paths |
Caminhos exatos dos programas, dados e guias. |
tgwitness guide --print |
Instruções de operação offline. |
tgwitness status / tgwitness logs |
Disponibilidade / registros de serviço. |
tgwitness stop / tgwitness start |
Interromper/retomar o serviço; reter dados. |
tgwitness token rotate |
Substitua a chave de administrador e encerre as sessões do navegador. |
tgwitness tunnel off |
Desative o túnel rápido público; mantenha o painel local. |
tgwitness tunnel on / tgwitness tunnel restart |
Crie um link de túnel rápido / substitua seu endereço. |
Consulte a seção “Acesso” para obter informações sobre tokens de colegas, sessões e restrições de IP, e a seção “Publicação do instalador” para conhecer o fluxo de trabalho de lançamento do GitHub para o Cloudflare.
Remover TgWitness#
Não há desinstalador: basta fechar o painel e excluir suas pastas. A exclusão da pasta de dados destrói definitivamente os diários, as chaves de assinatura, as sessões do Telegram e os arquivos salvos. Antes disso:
- Exporte o que você precisar (Exportações → Baixar ZIP assinado) e mantenha a impressão digital da chave de assinatura e os pontos de verificação fora desta máquina. Para manter o próprio espaço de trabalho, copie toda a pasta de dados com a coleta interrompida.
- Exclua os servidores criados em Extras → Servidor 24/7 na seção Seus servidores ou com
python -m tgwitness.cloud destroy; o provedor os cobra até que sejam excluídos. - Encerre a sessão de cada conta no Telegram em Configurações → Dispositivos. A exclusão dos arquivos não encerra a sessão no lado do Telegram.
Instalação como root no Ubuntu. Observe a pasta de dados, interrompa o serviço e, em seguida, remova o serviço, as pastas e o atalho:
/opt/tgwitness/bin/tgwitness paths
/opt/tgwitness/bin/tgwitness stop
systemctl list-unit-files 'tgwitness-*'
systemctl disable tgwitness-<ID>
rm /etc/systemd/system/tgwitness-<ID>.service
systemctl daemon-reload
rm -rf /opt/tgwitness /var/lib/tgwitness-<ID> /usr/local/bin/tgwitness
Instalação para usuários de Linux ou macOS. Feche o painel. Um serviço de usuário configurado no Linux
é interrompido com systemctl --user disable --now tgwitness-<ID>; sua unidade está em
~/.config/systemd/user/. Em seguida, exclua ~/.local/share/tgwitness (ou o seu
TGWITNESS_INSTALL_DIR) e o ~/.local/bin/tgwitness atalho.
Windows. Feche o painel e exclua %LOCALAPPDATA%\TgWitness (ou o seu
TGWITNESS_INSTALL_DIR). O instalador não adiciona nenhum serviço, tarefa agendada ou atalho.