it-swarm-korea.com

보안되지 않은 네트워크를 통해 서버간에 보안 재 동기화를 수행하는 방법

기본적으로 내가 묻는 것은 ssh 내부에서 rsync를 래핑하는 수단을 가진 사람이 있다는 것입니다.

OpenSSH v4.9 +를 사용하면 sftp에는 들어오는 연결을 chroot 할 수있는 멋진 옵션이 있습니다. 이것은 내가 볼 수있는 솔루션이지만 RHEL에 갇혀 있으며 RHEL4 또는 RHEL5는 해당 버전에 해당하지 않습니다 ssh.

내 현재 솔루션은 클라이언트 사용자의 키를 사용하여 이와 같은 것을 서버 측에 추가하는 것입니다 ...

 server % cat ~/.ssh/authorized_keys 
 command = "cd/srv/rsync/etl && tar --exclude './lost+found'-pcf-./"ssh-rsa ... 

클라이언트는 한 가지로만 제한됩니다.

 client % ssh -T -i $ {HOME} /. ssh/id_rsa [email protected]> sensative.tar 

이렇게하면 클라이언트뿐만 아니라 서버와의 연결도 보호되지만 모든 파일을 반복해서 검색하므로 비효율적입니다.

Rsync를 사용하여 비슷한 (또는 더 나은) 작업을 수행 한 후입니다.

19
Xerxes

좋아, 마침내 이것을 알아 냈지만 해결책은 내가 기대했던 것만 큼 우아하지 않습니다.

서버 쪽에서 관련 사용자의 authorized_keys 파일에 다음을 추가해야합니다.

no-pty, command="exit"

클라이언트에서 다음과 같이 터널을 만들 수 있습니다.

ssh -l username -fNTL 8073:server:873

터널이 설정되면 이중 콜론 구문을 사용할 수없는 일반적인 방법에 따라 localhost로 재 동기화 할 수 있습니다.

선택한 로컬 호스트 포트 번호 (8073)는 분명히 선택 사항입니다. rsync to ...

rsync --port=8073 -a [email protected]::mySecureStore /srv/some/place/
5
Xerxes

Rsync는 ssh를 전송으로 사용하는 것을 지원합니다

rsync -az /path/to/source [email protected]:/path/to/destination

일부 이전 버전의 rsync에서는 ssh를 명시 적으로 지정해야합니다.

rsync -aze ssh /path/to/source Host:/path/to/destination

Rsync를 사용하는 대안은 B. C. Pierce 's Unison 이며, rsync와 비슷한 기능을 갖지만 델타를 계산하기 위해 파일 시스템을 걸을 필요가 없도록 양쪽 끝에 로컬 인덱스를 유지합니다.

18
Dave Cheney

이 질문의 대상인 daemon-over-ssh-mode에 관심이있을 수 있습니다.

rsync가 데몬 오버 SSH 모드에서 작동하도록 할 수 없음

2
rjmunro