Syncthing: sincronização de arquivos entre dispositivos sem depender da nuvem de terceiros
De manhã, você altera um documento no notebook e o desliga. À noite, abre o computador de casa e a versão mais recente já está lá. O arquivo não passou pelo Google Drive nem pelo Dropbox: ele foi recebido pelo seu próprio nó do Syncthing.
O Syncthing sincroniza diretamente as pastas selecionadas entre dispositivos confiáveis, enquanto o usuário mantém o controle sobre o local de armazenamento. Um servidor central não é obrigatório.
No entanto, se dois computadores raramente ficam online ao mesmo tempo, torna-se difícil trocar as alterações. Um VPS sempre ligado resolve esse problema: recebe os arquivos de um dispositivo e depois os transmite para outro.
É importante entender sua finalidade. O Syncthing não é uma unidade de rede nem um gerenciador de arquivos no navegador, mas uma ferramenta para replicar automaticamente as pastas selecionadas.
Syncthing em cinco etapas
A configuração mínima é a seguinte:
- Instalar o Syncthing nos computadores necessários.
- Executar outra instância do Syncthing em um VPS.
- Abrir o painel do servidor por um túnel SSH.
- Trocar os identificadores dos dispositivos e confirmar a conexão.
- Adicionar uma pasta compartilhada, escolher o modo de sincronização e ativar o histórico de versões.
O que é o Syncthing e como ele funciona
O Syncthing é um programa gratuito e de código aberto para sincronização contínua de arquivos. Ele funciona no Windows, macOS, Linux e em outros sistemas operacionais para computadores e servidores.
Cada instalação recebe um Device ID exclusivo, que é um identificador criptográfico. Para que dois nós comecem a trocar dados, eles precisam ser adicionados um ao outro e receber autorização explícita para acessar uma pasta específica. Não existe uma conta central do Syncthing na qual os dispositivos e arquivos sejam armazenados.
Quando um arquivo é alterado, o Syncthing o divide em blocos, compara as somas de verificação e transfere apenas as partes que faltam. Por isso, uma pequena alteração dentro de um arquivo grande nem sempre exige o reenvio do arquivo inteiro.
Os serviços de descoberta ajudam os dispositivos a se encontrar, mas não armazenam arquivos. Se uma conexão direta não for possível, o tráfego criptografado pode passar por um retransmissor mais lento.
O que muda ao usar um VPS
Sem um servidor, o notebook pode sincronizar diretamente com o computador de casa, mas os dois dispositivos precisam ficar online ao mesmo tempo, mesmo que por pouco tempo. Um VPS transforma a configuração em um ponto de troca sempre disponível.
Por exemplo, de manhã o notebook envia um projeto ao servidor e é desligado. À noite, o computador de casa recebe a nova versão pelo VPS.
O Syncthing é adequado para documentos, notas do Obsidian, código-fonte, fotos e pastas da família. É melhor excluir caches, node_modules e resultados de compilação com .stignore. Bancos de dados em execução e imagens de máquinas virtuais não devem ser sincronizados.
O VPS também cria uma cópia dos dados fora de casa. No entanto, ela só se torna um backup completo quando é combinada com versionamento e um arquivo de backup separado: uma exclusão acidental também pode se propagar para todos os dispositivos.
Syncthing ou Nextcloud: qual escolher
As duas ferramentas são frequentemente comparadas, embora resolvam problemas diferentes.
| Critério | Syncthing | Nextcloud |
|---|---|---|
| Modelo | As pastas são copiadas entre os dispositivos | Os arquivos ficam em um servidor central |
| Servidor necessário | Não, o VPS é opcional | Sim |
| Acesso aos arquivos pelo navegador | Não há uma unidade web completa | Sim |
| Links públicos | Não | Sim |
| Edição colaborativa | Não está disponível | Pode ser adicionada |
| Melhor cenário | Manter as mesmas pastas nos próprios dispositivos | Criar uma nuvem pessoal ou para uma equipe |
Escolha o Syncthing para uma sincronização discreta em segundo plano. O Nextcloud é mais adequado quando você precisa de acesso web, links de compartilhamento, contas de usuário, calendário e colaboração.
Como instalar o Syncthing em um VPS com Docker Compose
As etapas abaixo são destinadas a um VPS com Ubuntu 24.04. O painel continuará vinculado ao endereço local do servidor, e o acesso será feito por um túnel SSH.
1. Instale o Docker
sudo apt update
sudo apt install -y docker.io docker-compose-v2
sudo systemctl enable --now docker2. Crie o diretório e o arquivo Compose
sudo mkdir -p /opt/syncthing/data
sudo chown -R 1000:1000 /opt/syncthing/data
cd /opt/syncthing
sudo nano compose.yamlCole o conteúdo abaixo:
services:
syncthing:
image: syncthing/syncthing:latest
container_name: syncthing
hostname: syncthing-vps
environment:
- PUID=1000
- PGID=1000
- STGUIADDRESS=
volumes:
- ./data:/var/syncthing
network_mode: host
restart: unless-stoppedEsta configuração usa a imagem oficial do Syncthing. O modo de rede host facilita as conexões diretas, enquanto o valor vazio de STGUIADDRESS mantém o painel em 127.0.0.1:8384.
Inicie o contêiner:
sudo docker compose up -d
sudo docker compose ps3. Permita as conexões
Primeiro, permita o SSH para não perder o acesso ao servidor:
sudo ufw allow OpenSSH
sudo ufw allow 22000/tcp
sudo ufw allow 22000/udp
sudo ufw enable22000/TCP é usado pelo protocolo principal de sincronização, enquanto 22000/UDP é usado pelo QUIC. Não é necessário abrir a porta 8384 do painel. A porta de descoberta local 21027/UDP normalmente também não é necessária em um VPS público.
4. Abra o painel por SSH
No seu computador, execute:
ssh -L 9999:127.0.0.1:8384 root@SERVER_IPSem fechar o terminal, abra:
http://127.0.0.1:9999No painel, acesse Actions → Settings → GUI e defina um nome de usuário e uma senha. Se depois você quiser acessar o painel por um domínio, coloque-o atrás de um proxy reverso com HTTPS e mantenha a autenticação ativada.
5. Adicione os dispositivos e a pasta
Instale o Syncthing no computador e siga estas etapas:
- No computador e no VPS, selecione Actions → Show ID.
- Adicione o Device ID de cada nó ao outro dispositivo.
- No computador, clique em Add Folder, selecione um diretório e autorize o acesso do servidor.
- No VPS, aceite a pasta e defina um caminho, como
/var/syncthing/Files.
Nos computadores, mantenha Send & Receive para a sincronização bidirecional. No VPS, costuma ser conveniente escolher Receive Only: o servidor continua recebendo e transmitindo alterações entre os nós, mas modificações locais acidentais feitas diretamente no VPS não se espalham por toda a rede.
Por que o Syncthing não substitui um backup
Se um arquivo for excluído ou criptografado em um dispositivo, essa alteração poderá se propagar para os demais. Por isso, abra as configurações da pasta no VPS e ative File Versioning.
Uma opção prática é o Staggered File Versioning, com retenção de 30 a 90 dias. Quando um nó remoto substitui ou exclui um arquivo, a versão anterior é movida para .stversions. As cópias antigas ocupam espaço em disco, portanto limite o período de retenção.
Uma configuração confiável tem três níveis:
- O Syncthing mantém as cópias de trabalho atualizadas.
- O versionamento ajuda a desfazer alguns erros.
- Um backup separado e agendado é armazenado de forma independente do Syncthing.
Um VPS pode armazenar os arquivos sem ver o conteúdo?
O Syncthing possui um modo para dispositivo não confiável. No computador principal, você define uma senha para a pasta e, no VPS, seleciona Receive Encrypted. O servidor armazena os dados criptografados e pode transmiti-los a outro dispositivo confiável que use a mesma senha.
O conteúdo, os nomes dos arquivos, os registros de data e hora e a estrutura de diretórios ficam ocultos. As informações sobre a pasta compartilhada e os tamanhos aproximados dos arquivos continuam visíveis.
Os desenvolvedores ainda consideram esse recurso experimental. Guarde a senha e o Folder ID separadamente: sem eles, pode ser impossível recuperar a pasta criptografada.
Qual VPS é necessário para o Syncthing
O consumo de recursos depende não apenas do volume de dados, mas também da quantidade de arquivos, da frequência das alterações e da indexação inicial. Para um nó pessoal com documentos e algumas dezenas de gigabytes, uma configuração inicial costuma ser suficiente:
- 1 vCPU;
- 1 GB de RAM;
- armazenamento SSD ou NVMe;
- espaço em disco suficiente para os arquivos e
.stversions; - conexão de rede estável.
Uma grande coleção de fotos ou centenas de milhares de arquivos exigirão mais recursos. A maior carga costuma ocorrer durante a primeira verificação e o cálculo dos hashes.
Um VPS básico com Ubuntu da tropic.host é adequado para essa tarefa. Você pode começar com uma configuração pequena e aumentar os recursos conforme a coleção cresce. Ao escolher o tamanho do disco, considere não apenas as pastas atuais, mas também arquivos futuros, dados temporários e o histórico de versões.
Cinco erros que devem ser evitados
- Expor a porta 8384 para toda a internet. Use um túnel SSH na configuração e, para acesso web permanente, HTTPS, senha e proxy reverso.
- Considerar a cópia do servidor um backup completo. Ative o versionamento e crie arquivos de backup separados.
- Sincronizar caches e dependências. Exclua diretórios desnecessários com
.stignore. - Não acompanhar o uso do disco. O diretório
.stversionspode ocupar um espaço considerável com o tempo. - Manter um dispositivo perdido como confiável. Remova-o dos outros nós e proteja a configuração do Syncthing que contém as chaves do dispositivo.
O que é importante saber sobre smartphones
O aplicativo oficial para Android foi descontinuado no fim de 2024, mas existem clientes mantidos pela comunidade. Também não há um cliente oficial para iOS: as restrições de execução em segundo plano dificultam a sincronização contínua. Antes de conectar sua principal biblioteca de fotos, teste o aplicativo móvel escolhido com uma pasta pequena.
Conclusão
O Syncthing é adequado para quem precisa manter as mesmas pastas em vários dispositivos sem depender obrigatoriamente de um intermediário na nuvem. Um VPS torna o sistema mais conveniente: os computadores não precisam mais ficar online ao mesmo tempo, e você passa a ter uma cópia sempre disponível fora de casa.
Para uma configuração segura, não exponha diretamente o painel administrativo, ative o versionamento e complemente a sincronização com um backup independente.
FAQ
É necessário ter um VPS para usar o Syncthing?
Não. Os dispositivos podem sincronizar diretamente. O VPS funciona como um nó sempre ligado para que eles troquem alterações em momentos diferentes.
É possível abrir os arquivos do Syncthing pelo navegador?
O painel web serve para configuração, e não para navegar por documentos como no Google Drive. Se você precisa de uma unidade web, o Nextcloud é mais adequado.
O Syncthing é uma solução de backup?
Não. Exclusões e danos podem se propagar para outros dispositivos. O versionamento ajuda, mas não substitui um backup independente.
É preciso abrir a porta 8384?
Não. Mantenha o painel em 127.0.0.1:8384 e conecte-se por um túnel SSH. Para a sincronização, abra 22000/TCP e 22000/UDP.
O proprietário do VPS pode ler os arquivos?
Em uma configuração comum, potencialmente sim. Receive Encrypted os armazena de forma criptografada, mas o recurso ainda é considerado experimental e exige que a senha e o Folder ID sejam guardados com segurança.
