Como o rysnc funciona sobre o ssh?

6

Quando o programa rsync é invocado sobre o ssh, como é a interação entre o rsync e o ssh? Qual recurso do ssh está usando o rsync? Estou interessado na interação entre o rsync e o ssh.

    
por ams 21.04.2015 / 18:52

1 resposta

12

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

  1. É 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
  2. Ele fornece um canal seguro e criptografado, sobre o qual todos os dados confidenciais podem ser passados com segurança. Sem essa camada rsync teria que implementar sua própria criptografia ou ignorar o problema. Ambos são perigosos no mundo conectado à Internet de hoje.
por 21.04.2015 / 19:08

Tags