Confuso sobre rsync, porta 873 e NAS

Confuso sobre rsync, porta 873 e NAS

Estou tentando configurar um backup do meu NAS (QNAP TS-469 Pro) para o meu PC rodando Ubuntu 16.10, usando a "Estação de Backup" oferecida pelo NAS.

Se eu fizer ssh no NAS e executar os seguintes comandos, o rsync funcionará:

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

No entanto, ao configurar um backup a partir da GUI do NAS (em um navegador), recebo o erro

Número de porta inválido ou o serviço está desativado.

Eu li algumas coisas sobre a porta 873 ou a execução de um daemon rsync, mas tudo isso não está claro para mim.

Por que a execução rsyncmanual funciona, enquanto recebo um erro com o "Backup Station"? É claro que, no final das contas, estou interessado em fazer o backup automático funcionar.

Responder1

O Rsync pode funcionar em dois modos diferentes:

  • via SSH:Conexão Rsync (tanto para controle quanto para transferência de dados) dentro de um túnel SSH (basicamente usando pipes). Devido à onipresença do acesso SSH e à sua segurança, esta é frequentemente a abordagem preferida. No entanto, para ser verdadeiramente transparente e automatizado (sem necessidade de senha), era necessário configurar a autenticação RSA. Além disso, como todos os dados são criptografados por SSH, pode ser mais lento que a outra abordagem;
  • via modo daemon (ou serviço):No sistema remoto, o Rsync é executado como um daemon/serviço, escutando na porta TCP 873. Este modo não possui criptografia integrada e, portanto, é mais rápido e menos seguro que o túnel SSH. É o modo usado pela QNAP para backups locais e remotos. Para permitir que a QNAP use seu PC como destino de backup (ou seja: fazer backup do NAS no PC), você precisa ativar o serviço Rsyncno seu computador. Embora não seja difícil, certamente é mais complexo do que um simples túnel SSH. Você pode encontrar mais informações na rede, por exemploaqui.

Responder2

Você provavelmente está ficando rsync over rsyncconfuso rsync over ssh.

Sincronizar novamente por SSH(usando sua configuração ssh)

rsync -av file.txt username@ipaddress:~

Este método atravessa um canal SSH e é criptografado.

Rsync sobre Rsyncusando o protocolo rsync padrão

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

O último pressupõe que você configurou o rsyncd.conf e iniciou o rsync como um daemon. Como um daemon, toda a autenticação/segurança é definida em rsyncd.conf e não usa criptografia.

A maneira mais fácil de identificar a diferença são dois pontos após o endereço e o nome do compartilhamento após os dois pontos.

Aqui está um método muito simples eperigosoexemplo de rsyncd.conf (simples, porque root e permissões não são um problema. perigoso, porque rodar como root e não como 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

E aqui estou eu começando o dito daemon:

#!/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

informação relacionada