rsync의 SSH 전송에서는 포워드 프록시 연결을 SSH 호스트 별칭에 두십시오. OpenBSD 구현의 nc를 쓰면 ~/.ssh/config에서 계정이 필요 없는 HTTP 프록시를 고를 수 있습니다:

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

프록시는 files.example.net:22로의 CONNECT를 허용해야 합니다. 공용 중계가 허용된 공용 SSH 호스트라면 HTTP 프록시 목록이 계정 없는 프록시 호스트와 포트 후보를 제공하지만, 실제 SSH 대상과 포트에 대한 허가를 확인하십시오. nc의 -x 주소는 중계를 지정하고 %h와 %p는 SSH 대상과 포트로 확장됩니다. 같은 nc라는 이름의 다른 프로그램은 이 스위치를 지원하지 않을 수 있습니다.

rsync에서 그 별칭을 원격 호스트로 사용하십시오:

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

콜론 하나짜리 경로는 원격 셸 형식을 선택합니다. SSH는 평소의 대상 계정과 호스트 키 설정을 쓰고, 도우미가 바이트 스트림을 HTTP 프록시로 나릅니다. 대상에는 원격 명령을 위한 rsync도 있어야 합니다.

반면 RSYNC_PROXY는 rsync의 데몬 직접 연결을 설정합니다. 이 SSH 호출에는 적용되지 않습니다. 마찬가지로 SSH의 Port를 8080으로 바꾸면 프록시 수신자를 가리키는 것이 아니라 대상 서비스의 다른 포트를 고르게 됩니다.

프록시 인증이 필요하면 선택한 도우미가 지원하는 인터페이스로 처리하십시오. SSH 사용자 이름은 프록시 사용자 이름이 아닙니다.

관련 글