No Unix, um programa "padrão" para sincronizar diretórios em duas máquinas é rsync
.
O Rsync é uma ferramenta de cópia de arquivos rápida e extraordinariamente versátil. isto pode copiar localmente, de / para outro host sobre qualquer shell remoto, ou para / de um daemon rsync remoto. Oferece um grande número de opções que controlam cada aspecto de seu comportamento e permite uma especificação muito flexível do conjunto de arquivos a serem copiados. isto é famosa por seu algoritmo de transferência delta, que reduz a quantidade de dados enviados pela rede somente as diferenças entre os arquivos de origem e os arquivos existentes no destino. O rsync é amplamente utilizado para backups e espelhamento e como um comando de cópia aprimorado para uso diário.
Acontece que há uma versão do Windows de rsync
chamada cwRsync . Aqui estão algumas informações sobre instalação e uso do cwRsync (embora seja mais focado no uso de rsync para backups)
Como você não quer envolver nenhum servidor intermediário no processo, um dos problemas com os quais você terá que lidar é configurar algum tipo de encaminhamento de porta para permitir acesso direto a uma das máquinas da Internet (desde que máquinas que você deseja sincronizar estão em diferentes redes locais). A partir daí, tudo deve ser bastante simples.
Outra opção mencionada nesta resposta a uma questão semelhante é Unison - usá-lo na Internet também exigiria a configuração do encaminhamento de porta. Qual, geralmente, é uma obrigação para qualquer solução sem servidor.