Para o transporte SSH de rsync, pon a conexión polo proxy de saída no alias de host SSH. Coa implementación nc de OpenBSD, pódese escoller un proxy HTTP sen conta en ~/.ssh/config:

Host sync-target
    HostName files.example.net
    User syncuser
    Port 22
    ProxyCommand nc -X connect -x proxy.example.net:8080 %h %p

O proxy debe permitir CONNECT a files.example.net:22. Nun host SSH público onde se admiten intermediarios públicos, a lista de proxies HTTP ofrece candidatos de host e porto de proxy sen conta; verifica o permiso para o destino e o porto SSH reais. O enderezo -x de nc identifica o intermediario; %h e %p expándense ao destino e ao porto SSH. Outro programa chamado tamén nc pode non admitir estes conmutadores.

Usa o alias como host remoto en rsync:

rsync -av -e ssh sync-target:/srv/export/ ./export/

A ruta cun só dous puntos selecciona a forma de shell remoto. SSH usa a súa configuración habitual de conta de destino e clave de host, mentres que o axudante leva o seu fluxo de bytes polo proxy HTTP. O destino tamén precisa rsync para a orde remota.

RSYNC_PROXY, pola contra, configura a conexión directa de rsync co daemon. Non configura esta invocación SSH. Do mesmo xeito, cambiar o Port de SSH a 8080 escollería outro porto de servizo de destino, en lugar de identificar o receptor do proxy.

Mantén a autenticación do proxy na interface admitida polo axudante escollido cando sexa necesario; un nome de usuario SSH non é un nome de usuario de proxy.

Artigos relacionados