ssh fornece um fluxo conectado do sistema local que está executando o rsync para outra instância em execução no servidor remoto. O rsync local o inicia como parte do processo de conexão ssh - não é a mesma instância de rsync que pode estar sendo executada como um daemon nesse servidor remoto.
O que é um fluxo ssh ?
Um fluxo ssh é o que você usa quando você usa ssh para um sistema remoto. Você pode preferir chamá-lo de uma sessão ssh . Isso é bom. Como exemplo, ssh [email protected] conectaria você a esse sistema remoto e forneceria uma sessão interativa. Qualquer coisa que você digitasse localmente seria recebida e acionada remotamente, e qualquer coisa gerada remotamente seria apresentada localmente para você.
Da mesma forma, ssh -t [email protected] vi /etc/hosts configuraria uma conexão para executar vi /etc/hosts no sistema remoto como se você estivesse usando localmente. (O -t sinalizador diz ssh para garantir que o comando remoto, vi , seja executado em um pseudo-terminal; caso contrário, ele ignoraria essa camada de complexidade.)
Agora, para rsync , a conexão é configurada pela instância local com algo como ssh [email protected] rsync --server -nlogDtpre.iLsf {local_path} {remote_path} . Isso permite que o local rsync fale com o controle remoto rsync em uma conexão como você usaria para acessar o mesmo servidor remoto. A instância remota de rsync sabe que é um servidor por causa dos sinalizadores que foram fornecidos quando iniciados pela instância local.
Você pode ver como rsync foi chamado remotamente executando algo como ssh [email protected] 'ps -ef | grep [r]sync' enquanto o rsync está em andamento.
Por que não ter apenas rsync falando diretamente sem ssh ?
A vantagem de usar ssh é dupla
- É um protocolo bem conhecido e os mecanismos de autenticação e login em um sistema remoto são bem compreendidos (por aqueles que precisam entendê-lo) e confiáveis
- Ele fornece um canal seguro e criptografado, sobre o qual todos os dados confidenciais podem ser passados com segurança. Sem essa camada
rsyncteria que implementar sua própria criptografia ou ignorar o problema. Ambos são perigosos no mundo conectado à Internet de hoje.