Come permettere l'accesso in lettura ad una directory via cwRsync

Sul server sono installati il client ed il server di cwRsync (la versione windows del tool unix rsync).
I comandi sono accessibili via "start menu":

  • "Start"->"cwRsync" il client rsync
  • "Start"->"cwRsyncServer" il server rsync (che gira come servizio con lo stesso nome)

I questo doc, dove non specificato differentemente, si fa riferimento solo al SERVER

Scopo:

permettere ad un utente esterno autenticato di copiare il contenuto di una directory

Dati

  • nome modulo accesso (il nome con cui il client di rsync potra' connettersi)
  • directory D:\Repositories\prova
  • nome e password dell'utente: marco PassWorD
  • IP dal quale potra' connettersi 222.222.222.222 (sono permessi anche dei range ... guardate il manuale)

Procedura

dovete essere gli amministratori della macchina

  1. se non esiste aggiungete l'utente rsync:
    • aprite con un editor il file d:\rsync\rsync.secret
    • aggiungete la riga marco:PassWorD
    • salvate il file
  2. cliccate su Start->cwRsyncServer->rsyncd.conf (per aprire il file di configuarzione del servizio rsync con un editor)
  3. modificate il file come sotto descritto
  4. salvate il file
  5. cliccate su "Start->cwRsyncServer->Prep a Dir for Upload".
    Un wizard vi chiedera' quale directory volete preparare. Digitate D:\Repositories\prova. Premete OK
  6. riavviate il servizio

Modifiche da apportare al file di configurazione

file: "C:\Program Files (x86)\ICW\rsyncd.conf"
Testo origninale

# 
# sotto windows lo strict mode non funziona
# come descritto nelle FAQ sul sito

strict modes = false

pid file = /cygdrive/d/rsync/rsyncd.pid
lock file = /cygdrive/d/rsync/rsync.lock

# Module definitions
# Remember cygwin naming conventions : c:\work becomes /cygdrive/c/work
#

[mnt]
  use chroot = yes
  uid = cwRsync
  gid = cwRsync
  max connections = 5
  path = /cygdrive/d/Repositories/latte
  read only = yes
  list = no
  auth users = rbidr
  secrets file = /cygdrive/d/rsync/rsync.secret
  log file = /cygdrive/d/rsync/rsync.log
  transfer logging = yes
  hosts allow = 111.111.111.111

Si tratta di aprire un nuovo modulo rsync (specificato dal nome tra parentesi quadre)
Testo da aggiungere in fondo (le righe vuote o che iniziano con # sono ignorate)

[accesso]
  use chroot = yes
  uid = cwRsync
  gid = cwRsync
  max connections = 5
  path = /cygdrive/d/Repositories/prova
  read only = yes
  list = no
  auth users = marco
  secrets file = /cygdrive/d/rsync/rsync.secret
  log file = /cygdrive/d/rsync/rsync.log
  transfer logging = yes
  hosts allow = 222.222.222.222

Il client rsync potra' accedere solo dall'ip 222.222.222.222 digitando

rsync marco@URL_SERVER::accesso directory_dove_copiare

Per scaricare dovra' prima immettere la password per l'utente marco

Note sull'accesso via ssh

NdR: note prese da una mail tecnica, il lavoro e' stato effettuato a piu' mani,
QUINDI prima di effettuare modifiche bisogna verificare se quanto scritto sopra e' tutt'ora valido.

Utilizzo la mail ed aggiungo note:
Le cose da sapere sono le configurazioni che trovi per l'rsyncd e l'sshd (/etc/sshd_config)

in buona sostanza si e` trattato di

  • mettere a posto i permessi dell'utente cwRsync (consiglio: copiare senza modifiche)
  • mettere alcune opzioni dell'sshd (sono quelle non commentate, come lo StrictMode)
  • mettere la chiave pubblica fornita nel file .ssh/authorized_keys dell'utente cwRsync

Se devi replicare la configurazione

  • installi cwRsync
  • installi copssh
  • copii le configurazioni di cui sopra
  • metti le chiavi di quelli che vuoi che possano accedere al sistema nell' .ssh/authorized_keys

Fai partire SOLO il servizio ssh (rsync daemon, come detto, non serve piu`)

1.1.2-pro © 2008-2009 agile42 all rights reserved (this page was served in: 0.31000 sec.)