Como transferir arquivos com rsync via SSH de forma segura e incremental imprimir

  • 0

Como transferir arquivos com rsync via SSH de forma segura e incremental

Oi! Aqui é a Sensei da GeHost 🥋. Se você já perdeu tempo esperando um FTP reenviar tudo de novo só porque mudou um arquivinho, esse guia é pra você. Vou te mostrar como usar o rsync junto com o SSH pra mandar arquivos do seu computador pro seu servidor (ou vice-versa) de um jeito rápido, seguro e incremental — ou seja, só transmite o que realmente mudou.

O que é o rsync e por que ele é tão bom

O rsync é uma ferramenta de linha de comando que compara os arquivos de origem e destino e transfere somente as diferenças. Isso quer dizer que, se você já enviou uma pasta com 2 GB de fotos e mudou só um arquivo, o rsync não vai reenviar os 2 GB inteiros — só aquele pedacinho que mudou. Resultado: transferências muito mais rápidas, principalmente em atualizações e backups recorrentes.

Quando combinamos o rsync com o SSH, a transferência acontece dentro de um túnel criptografado — ou seja, seguro de ponta a ponta, sem expor senha nem dado em texto puro pela rede.

Dica da Sensei: pense no rsync como aquele amigo organizado que só te conta as novidades, não repete a conversa inteira toda vez 😉

Antes de começar: pré-requisitos

  • Ter acesso SSH liberado na sua hospedagem — isso pode variar conforme o seu plano, então confirme no painel.gehost.com.br ou com o nosso suporte se o seu está habilitado.
  • Ter o rsync instalado na sua máquina (a maioria dos sistemas Linux e macOS já vem com ele; no Windows, dá pra usar via WSL ou um cliente compatível).
  • Saber o seu usuário de acesso e o domínio/endereço do servidor (a mesma credencial que você usa para FTP/SSH costuma servir aqui).

Passo a passo

  1. Teste a conexão SSH primeiro. Antes de mexer com arquivos, confirme que a conexão simples funciona:
    ssh usuario@seudominio.com.br
    Se pedir a senha e conectar normalmente, você já está pronto para o próximo passo.
  2. (Recomendado) Configure uma chave SSH em vez de usar senha. É mais seguro e evita ficar digitando senha toda hora:
    ssh-keygen -t ed25519
    ssh-copy-id usuario@seudominio.com.br
    Isso gera um par de chaves no seu computador e copia a chave pública para o servidor. Depois disso, o acesso passa a ser autenticado pela chave.
  3. Faça sempre um teste "a seco" antes da transferência de verdade, usando a flag -n (dry-run). Ela mostra o que seria enviado, sem mover nada de fato:
    rsync -avzn -e ssh ./minha-pasta/ usuario@seudominio.com.br:/caminho/destino/
  4. Rode a transferência de verdade, removendo o n:
    rsync -avz -e ssh ./minha-pasta/ usuario@seudominio.com.br:/caminho/destino/
    Repare nas flags:
    • -a (archive) — preserva permissões, datas e estrutura de pastas.
    • -v (verbose) — mostra o que está sendo enviado.
    • -z (compress) — comprime os dados durante o envio, economizando tempo.
    • -e ssh — diz ao rsync para usar o SSH como canal seguro.
  5. Repita o comando sempre que precisar atualizar. É aí que a mágica do "incremental" acontece: da segunda vez em diante, só o que mudou será enviado.

Cuidado com a flag --delete

Se você usar --delete, o rsync vai apagar no destino tudo que não existir mais na origem, deixando os dois lados idênticos. É poderosa, mas perigosa se usada sem atenção.

Dica da Sensei: sempre rode com --dry-run junto de --delete primeiro, pra ver exatamente o que seria apagado, antes de confirmar de verdade. E, se possível, tenha um backup recente antes de qualquer sincronização que remova arquivos.

Boas práticas de segurança

  • Prefira chave SSH em vez de senha sempre que possível.
  • Nunca compartilhe sua chave privada (o arquivo que fica no seu computador, geralmente sem a extensão .pub) com ninguém.
  • Mantenha as permissões da sua pasta .ssh restritas (no Linux/macOS: chmod 600 ~/.ssh/id_ed25519).
  • Sempre teste com -n (dry-run) antes de rodar comandos que envolvam exclusão de arquivos.

Quer automatizar?

Depois que o comando estiver funcionando do seu jeito, dá pra agendar execuções automáticas (por exemplo, via cron no Linux/macOS) para rodar a sincronização em horários fixos, tipo um backup automático incremental. Se precisar de ajuda para configurar isso no seu ambiente, é só abrir um chamado que a equipe te orienta.

Resumo da Sensei: rsync + SSH = transferência rápida (só o que mudou), segura (tudo criptografado) e confiável. Teste sempre com -n antes, tenha cuidado redobrado com --delete, e prefira chave SSH à senha. Qualquer dúvida, nosso suporte está por aqui! 🥋

Esta resposta lhe foi útil?

« Retornar