ssh / scp funciona, mas o rsync apenas diz “não”

3

Oi Eu tenho um servidor windows 2003 que eu preciso fazer backup em um cliente linux , então eu instalo cygwin no Win2k3 . No Win2k3 , ativei ssh , scp but (porque o servidor Win2k3 usa um servidor SFTP windows personalizado ouvindo na porta 22) Eu tive que definir scp / ssh para executar em port 222 em cygwin. Funciona bem. Contanto que eu use ssh / scp e use a opção -p / -P na linha de comando.

Eu estabeleci um SSH Public/Private Key Pair para meu usuário sobre o ssh / scp, o que funciona muito bem de linux client para Win2k3 server .

Eu então inicio o rsyncd no Win2k3 e adiciono o usuário no /etc/rsyncd.conf , criei os privilégios /etc/rsyncd.secrets e atribuídos e parece bem.

Então quando eu tento rsync connect / not / sobre o ssh ele funciona mas eu quero / somente / connect via ssh e quando faço isso ele falha toda vez com 0 bytes. Eu tentei vários usuários e reescrevi o rsyncd.conf um milhão de vezes, mas ele falha constantemente. Eu estou começando a pensar que preciso dizer ao cliente rsync que a porta ssh é 222 da perspectiva do cliente. Se sim, como faço isso?

    
por MacLovin 11.05.2013 / 19:31

2 respostas

6

Sim, claro que você precisa:

rsync -e 'ssh -p 222' ...

ou:

RSYNC_RSH='ssh -p 222' rsync ...

Como alternativa, você pode especificar em ~/.ssh/config que ssh conexões para esse host devem estar na porta 222 por padrão:

Host that-host
Port 222
    
por 11.05.2013 / 19:45
1

Uma resposta muito tardia, mas que pode ajudar os outros ...

rsync é executado em um dos dois modos.

  1. Você pode executá-lo em ssh e o processo rsync local iniciará um processo rsync no sistema remoto para atuar como seu servidor, com ssh fornecendo o transporte criptografado entre os dois sistemas. Este modo é indicado por um único cólon entre o host remoto e o caminho remoto:

    rsync /path/to/local/ remote:/path/to/remote
    
  2. Você pode executá-lo como um daemon, e o processo rsync local se conectará diretamente a um processo rsync do servidor já em execução. Não há criptografia (ou ssh ) oferecida com esse cenário. Este modo é indicado por dois pontos duplos entre o host remoto e o caminho remoto:

    rsync /path/to/local remote::/path/to/remote
    

Você não precisa instalar um ssh server e um daemon rsync . Um ou outro é suficiente.

Para uma LAN segura ou onde o conteúdo do arquivo é público, o daemon rsync pode ser mais adequado, pois não exige que os usuários façam logon no sistema remoto. A abordagem ssh é melhor para redes inseguras ou não confiáveis (ou seja, a Internet), mas requer uma configuração muito cuidadosa ou a capacidade de os usuários poderem efetuar logon no sistema remoto.

Na sua situação, onde você deseja conectar-se somente a ssh , não faz sentido configurar ou executar um daemon rsync .

    
por 03.11.2018 / 00:30