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
rsyncinstalado 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
-
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. -
(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. -
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/
-
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.
- 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-runjunto de--deleteprimeiro, 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
.sshrestritas (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-nantes, tenha cuidado redobrado com--delete, e prefira chave SSH à senha. Qualquer dúvida, nosso suporte está por aqui! 🥋