Olá, pessoal.
Hoje venho falar de um aplicativo de código aberto chamado Syncthing. Syncthing é um aplicativo open source e grátis que visa sincronizar(como diz o nome Sync) dados entre vários dispositivos, estando eles na mesma rede ou não.
Eu sempre tive esse problema aqui com meus dispositivos como PC,
notebook e celular. Tipo, eu cheguei a usar o aplicativo de sync do
Onedrive no celular, mas isso deixava meus dados expostos à
administração do Onedrive, e como tenho dados confidenciais, não quero
ter problemas com isso.
Daí que, estava navegando no X(Twitter) e vi alguém comentando sobre um app chamado SyncThing. Instalei ele no PC e no celular pra testar. Além de mostrar, lhes darei um guia inicial de como usar este aplicativo no Windows. Mais pra frente, farei um do android.
Testando o SyncThing
Executei o serviço no PC(funciona como serviço) e o aplicativo no android. Selecionei as pastas e logo vi que estava funcionando bem. A única limitação da versão android é ter de ficar abrindo o aplicativo toda hora pra receber e conectar.
Eu obtive o aplicativo pro celular via APK(Syncthing-Fork), mas se você instalar a loja F-Droid, você consegue achá-lo também. O desenvolvedor do APK disse que estará excluindo o aplicativo da Play Store, devido aos inúmeros requisitos para atualização do aplicativo na loja. Porém, dá, como disse acima, para obtê-lo instalando a loja F-Droid e procurando nela.
Configurei as pastas no PC, conectei o celular ao PC por um código de sincronização(você pode ler QR para se conectar ao PC para sincronizar) e o celular começou a receber os arquivos do PC que eu colocava na pasta Sync.
Acessando o painel de controle
Para aceder ao painel de controle do Syncthing no PC, basta digitar 127.0.0.1:8384 na barra de endereço do navegador e dar enter. Se o serviço estiver executando no seu PC, o painel do Syncthing surgirá na tela.
Em relação ao celular, basta abrir o aplicativo.
Ao abrir o painel no navegador, uma mensagem aparecerá no topo da tela sugerindo colocar senha na interface gráfica do Syncthing. Recomendo apenas se você deixa o computador parado sem tela de login com senha, ou se o aplicativo é usado em ambiente de trabalho.
A pasta padrão estará ali já, que é localizada em X:\usuarios\seunome\Sync(onde X é a letra do drive principal[Windows] e "seunome" é seu nome de usuário no computador). Se você usa Linux, veja este video do Diolinux para saber onde fica no sistema.
Editando Pastas
Para configurar a pasta padrão, clique em Pasta Padrão e depois em Editar. Na janela Editar, tem as abas Geral, Compartilhamento, Versionamento, Ignorar e Avançado.
Na aba Geral, terá Nome da pasta(o nome dado, como Pasta Padrão), o ID(seria default nesse caso) e o caminho, como falei acima.
Em compartilhamento, você verá quais dispositivos estão recebendo esta pasta(marcados com tick). Se os que você quer não estiverem marcados, marque-os e clique em SALVAR. Assim que você clicar em OK, uma solicitação aparecerá nos dispositivos de destino(se o destino for um computador, abra o painel Syncthing no mesmo). Dê SIM na solicitação e o dispositivo de destino passará a receber e enviar atualizações desta pasta para todos os outros.
Adicionando Novas Pastas
Para adicionar uma nova pasta, clique em Nova Pasta e a janela Editar aparecerá com a aba Geral aberta. Coloque o nome e o caminho para a pasta no seu computador, vá em compartilhamento e selecione os dispositivos de destino, clique em SALVAR. Aceite as solicitações dos outros dispositivos e pronto.
Conexões
Bom, antes de entrar no último tópico, vamos falar das conexões do Syncthing. O Syncthing consegue sincronizar arquivos até se os dispositivos de destino não estiverem na mesma rede, através do modo TCP WAN, transferência criptografada via internet. Se os dispositivos estiverem sob o mesmo roteador/na mesma rede, o Syncthing usará o modo TCP LAN, que é bem mais rápido do que o modo WAN, por não usar internet.
A criptografia do Syncthing é 256 bits, nenhum servidor de retransmissão sabe o que está passando e nem o conteúdo do que está passando. Além disso, os servidores de retransmissão só serão utilizados para transferir arquivos para dispositivos que não estejam na mesma rede.
Segurança
Vamos ao tópico final desta análise. A segurança de Syncthing. É um aplicativo seguro com criptografia ponta a ponta, porém, recomendo cautela quando utilizar para compartilhar arquivos com amigos via syncthing.
Para isso, ao adicionar o computador ou dispositivo de seu amigo como dispositivo remoto, vá na aba Avançado/Advanced e marque Untrusted/Não Confiável. Isso fará com que todos que utilizem a pasta precisem usar uma senha para acessar o conteúdo da mesma, ou o conteúdo ficará ilegível se não fizerem essa autenticação via senha.