Repository 32bit  Forum
Repository 64bit  Wiki

[RISOLTO]Debian NAS: problema con rsync e ssh

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.

[RISOLTO]Debian NAS: problema con rsync e ssh

Messaggioda rik70 » lun ott 17, 2011 11:56

Sto assemblando un vecchio PC da utilizzare come NAS.

Ho scelto una Debian stable più che altro per comodità e per i tempi di boot davvero rapidi, ma non è escluso che metterò su slackware.

Sto facendo delle prove con qemu, sopratutto per imparare bene a gestire il raid. Ho già messo su samba e funziona bene. Ma come da titolo, ho un problema con rsync + ssh. In pratica quando tento di accedere via ssh al server rsync da utente normale, ottengo il seguente errore:
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(601) [sender=3.0.7]


Il comando utilizzato è il seguente:
Codice: Seleziona tutto
rsync --verbose -e "ssh -l [USERNAME]" -avz . ftp@192.168.2.100::back/


Qui il file di configurazione utilizzato:
Codice: Seleziona tutto
[back]
   path = /media/md0/backup
   comment = Rsync Server
   uid = nobody
   gid = nogroup
   read only = no
   list = yes
   auth users = ftp
   secrets file = /etc/rsyncd.secrets


La directory /media/md0/backup appartiene all'utente nobody e al gruppo nogroup.

Se come [USERNAME] uso root, funziona perfettamente.

Qualche idea?

Grazie per la pazienza.
Ultima modifica di rik70 il mar ott 18, 2011 11:21, modificato 1 volta in totale.
rik70
Linux 3.x
Linux 3.x
 
Messaggi: 1255
Iscritto il: gio mar 10, 2011 9:21
Slackware: 14.1
Kernel: generic-smp
Desktop: Xfce

Re: Debian NAS: problema con rsync e ssh

Messaggioda fgcl2k » mar ott 18, 2011 7:20

Potrebbe essere un problema di permessi. Lo USERNAME che usi è "ftp"?
Avatar utente
fgcl2k
Linux 2.0
Linux 2.0
 
Messaggi: 131
Iscritto il: gio ott 29, 2009 10:14
Nome Cognome: Federico
Slackware: 14.1 (64bit)
Kernel: 3.10.17
Desktop: KDE 4.13.3

Re: Debian NAS: problema con rsync e ssh

Messaggioda rik70 » mar ott 18, 2011 10:16

No, non è ftp.

Bhò qualcosa mi sfugge, forse leggendo il man non ho capito bene come funziona la faccenda del ssh.

Ad es. senza ssh funziona perfettamente:
Codice: Seleziona tutto
rsync -avz . ftp@192.168.2.100::back/

Chiede la password dell'utente ftp - impostata nel file /etc/rsyncd.secrets - e copia tutto quello che deve nella directory /media/md0/backup del server.
rik70
Linux 3.x
Linux 3.x
 
Messaggi: 1255
Iscritto il: gio mar 10, 2011 9:21
Slackware: 14.1
Kernel: generic-smp
Desktop: Xfce

Re: Debian NAS: problema con rsync e ssh

Messaggioda rik70 » mar ott 18, 2011 11:20

Ok, ho scoperto l'arcano rileggendo il manuale di rsync.

In pratica perché funzioni, bisogna creare - sul server - il file rsyncd.conf nella home dell'utente che deve fare il login via ssh.

Un esempio minimale:
/home/user/rsyncd.conf
Codice: Seleziona tutto
[test]
 path = /media/md0/user/backup
 comment = Rsync Server
 use chroot = no          #disattivare il chroot, fondamentale.
 read only = no

La directory /media/md0/user/backup deve essere scrivibile dall'utente.

A questo punto:
Codice: Seleziona tutto
rsync -avz . -e "ssh -l user" 192.168.2.100::test/
[...]

sending incremental file list

sent 19511162 bytes  received 9530 bytes  830667.74 bytes/sec
total size is 24281560  speedup is 1.24

Perfetto!

Grazie comunque per l'interessamento.

Ciao

-------------------
Edit:

per fare le cose "complete", utilizzando un secondo metodo di autenticazione - quello del demone rsyncd, da cui eravamo partiti - il config completo è il seguente:

Codice: Seleziona tutto
[test]
 path = /media/md0/user/backup
 comment = Rsync Server
 use chroot = no          #disattivare il chroot, fondamentale.
 read only = no
 auth users = ftp
 secrets file =[HOME DELL'UTENTE 'user']/rsyncd.secrets     # chmod 600 o 400


Gli "auth users" devono essere utenti esistenti nel server, ma: con una home "fittizia", senza shell di login e senza password. Si possono usare sia quelli di sistema - ftp nell'esempio - o crearli ad hoc.

Il file rsyncd.secrets è in questo formato (nell'esempio l'utente è ftp):
Codice: Seleziona tutto
ftp:password


A questo punto il comando rsync cambia in:
Codice: Seleziona tutto
rsync -avz . -e "ssh -l user" ftp@192.168.2.100::test/
e verrà richiesta anche la passord dell'utente ftp, come impostata in *rsyncd.secrets

E' tutto

Bye
rik70
Linux 3.x
Linux 3.x
 
Messaggi: 1255
Iscritto il: gio mar 10, 2011 9:21
Slackware: 14.1
Kernel: generic-smp
Desktop: Xfce


Torna a Gnu/Linux in genere

Chi c’è in linea

Visitano il forum: Bing [Bot] e 1 ospite