rsync, 포트 873 및 NAS에 대해 혼란스러워함

rsync, 포트 873 및 NAS에 대해 혼란스러워함

NAS에서 제공하는 "백업 스테이션"을 사용하여 NAS(QNAP TS-469 Pro)에서 Ubuntu 16.10을 실행하는 PC로 백업을 설정하려고 합니다.

NAS에 ssh를 연결하고 다음 명령을 실행하면 rsync가 작동합니다.

touch file.txt                             # Create "file.txt" on the QNAP 
rsync file.txt username@ipaddress:~        # Backup "file.txt" on the backup PC

그러나 NAS의 GUI(브라우저)에서 백업을 설정할 때 오류가 발생합니다.

포트 번호가 잘못되었거나 서비스가 비활성화되었습니다..

포트 873이나 rsync 데몬 실행에 대한 내용을 읽었지만 이 모든 것이 나에게는 매우 명확하지 않습니다.

rsync"Backup Station"에 오류가 발생하는 동안 수동으로 실행하면 왜 작동합니까 ? 물론 결국에는 자동 백업이 작동하게 만드는 데 관심이 있습니다.

답변1

Rsync는 두 가지 모드로 작동할 수 있습니다.

  • SSH를 통해:SSH 터널(기본적으로 파이프 사용) 내부의 Rsync 연결(제어 및 데이터 전송 모두) SSH 액세스의 편재성과 보안으로 인해 이는 종종 선호되는 접근 방식입니다. 그러나 진정한 투명성과 자동화(비밀번호 필요 없음)를 위해서는 RSA 인증을 설정해야 했습니다. 또한 모든 데이터는 SSH로 암호화되므로 다른 접근 방식보다 속도가 느려질 수 있습니다.
  • 데몬(또는 서비스) 모드를 통해:원격 시스템에서 Rsync는 포트 TCP 873에서 수신 대기하는 데몬/서비스로 실행됩니다. 이 모드에는 암호화 기능이 내장되어 있지 않으므로 SSH 터널보다 빠르고 안전하지 않습니다. 이는 로컬 및 원격 백업을 위해 QNAP에서 사용하는 모드입니다. QNAP가 PC를 백업 대상으로 사용하도록 하려면(예: PC에서 NAS 백업) Rsync 서비스를 활성화해야 합니다.당신의 PC에서. 어렵지는 않지만 단순한 SSH 터널보다 확실히 더 복잡합니다. 예를 들어 인터넷에서 더 많은 정보를 찾을 수 있습니다.여기.

답변2

당신은 아마도 혼란스러워하고있을 것 rsync over rsync입니다 rsync over ssh.

SSH를 통한 재동기화(Ssh 구성 사용)

rsync -av file.txt username@ipaddress:~

이 방법은 SSH 채널을 통과하며 암호화됩니다.

Rsync를 통한 Rsync표준 rsync 프로토콜 사용

rsync -av file.txt ipaddress::myhome/.

나중에는 rsyncd.conf를 설정하고 rsync를 데몬으로 시작했다고 가정합니다. 데몬으로서 모든 인증/보안은 rsyncd.conf에 정의되며 암호화를 사용하지 않습니다.

차이점을 알아내는 쉬운 방법은 주소 뒤의 두 개의 콜론과 두 개의 콜론 뒤의 공유 이름입니다.

여기에 정말 간단하고위험한rsyncd.conf의 예(루트와 권한은 문제가 아니기 때문에 간단합니다. chroot가 아닌 루트로 실행하기 때문에 위험합니다)

uid = root
gid = root
use chroot = no
max connections = 64
lock file = /var/tmp/rsyncd.lock
syslog facility = local5
pid file = /var/tmp/rsyncd.pid 
strict modes = false
hosts allow = 192.168.120.2
timeout = 60
dont compress = *.xz *.gz *.tgz *.zip *.rpm *.bz2 *.7z *.rar *.jp* *.gif *.png *.avi *.mp* *.wmv *.asf *.flv *.m4v *.mkv *.mov *.ogm *.rm *.3g*
#refuse options = checksum delete
refuse options = delete
#
[myhome]
list = false
comment = "myhome"
path = /home/myself/mydir
read only = no

그리고 여기 내가 말한 데몬을 시작하고 있습니다.

#!/bin/bash
set -o posix
set -u
# keep nagios happy
renice 19 -p $$ > /dev/null 2>&1
ionice -c3 -p $$ > /dev/null 2>&1
rsync --daemon --ipv4 --address=192.168.120.1 --config=/home/myhome/rsyncd.conf --log-file=/dev/shm/rsync.log

관련 정보