SSH+netcat을 통한 멀티홉 rsync가 빠르게 실패함: 연결이 예기치 않게 종료됨

SSH+netcat을 통한 멀티홉 rsync가 빠르게 실패함: 연결이 예기치 않게 종료됨

서버에서 클라이언트로 디렉터리를 동기화하고 싶습니다. 서버에 직접 접속할 수는 없지만 SSH 게이트웨이를 거쳐야 합니다. 내 ".ssh/config"에서:

Host gw
    User ab123456
    HostName gw.somewhere.ac.uk
    IdentityFile ~/.ssh/id_dsa.pub
    ServerAliveInterval 60

Host remote
    User me
    HostName remote.somewhere.ac.uk
    IdentityFile ~/.ssh/id_dsa.pub
    ProxyCommand nohup ssh gw netcat -w1 %h %p
    ServerAliveInterval 60

대화형 세션에서는 작동 ssh하지만 rsync실패합니다. 때로는 즉시, 때로는 몇 초 후, 항상 파일을 복사하기 전:

$ rsync -av remote:/path/to/somewhere/ somewhere/
nohup: redirecting stderr to stdout
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: unexplained error (code 255) at io.c(226) [Receiver=3.1.0]

$ rsync -av remote:/path/to/somewhere/ somewhere/
nohup: redirecting stderr to stdout

            Access to this system is monitored etc. etc.

receiving incremental file list
Write failed: Broken pipe
rsync: connection unexpectedly closed (12288 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(226) [receiver=3.1.0]
rsync: connection unexpectedly closed (16336 bytes received so far) [generator]
rsync error: unexplained error (code 255) at io.c(226) [generator=3.1.0]

netcat문제는 기기의 게이트웨이와 관련된 것 같습니다 gw. 다중 홉 연결을 사용해야 할 때 rsync를 올바르게 사용하는 방법은 무엇입니까?

저는 동료가 일반 SSH에서 작동하는 이 구성 파일을 제공했기 때문에 netcat을 사용하고 있습니다.

경우와는 다르다는 점 참고하세요이 문제rsync -av, 으로 교체했을 때도 같은 문제가 발생했습니다 (그리고 제대로 동기화하는 기능이 scp -pr정말 필요했습니다 ).rsync

답변1

교체해서 작동시킬 수 있어요

#ProxyCommand nohup ssh gw netcat -w1 %h %p

그리고

ProxyCommand nohup ssh gw -W %h:%p

최신 OpenSSH와 함께 작동합니다. 이제는 즉시 멈추지 않습니다.

관련 정보