BACKUP automatico con SSH + RSYNC: occhio alle versioni

 

 

Supponete di avere due server. Uno master e uno mirror.

Supponete di volere copiare alcune cartelle del master sul mirror, in modalità sicura.

Ogni sysadmin sa che deve usare rsync, potente programma di trasferimento incrementale di file che riduce di molto il tempo di backup (copia infatti solo i file che non sono stati modificati). 

 

Come si fa? Dopo mille peripezie a capire cosa non andava, sono riuscito a capirci qualcosa. Seguite questi passi.

1) Sul server master, ovvero il server da cui vogliamo prelevare e copiare i file, generare le chiavi pubblica e private, senza password

ssh-keygen -t rsa -b 1024 -f master-key
XX">

Il programma vi chiederà un passphrase. Non inserite nulla. Al termine avrete due file, master-key e master-key.pub (chiave privata e pubblica).

2) Se non esiste la cartella $HOME/.ssh, crearla e copiarvi il file master-key.

mv master-key $HOME/.ssh/.

touch authorized_keys

chmod authorized_keys

cat master-key.pub >> authorized_keys

3) Copiare la chiave privata master-key.pub sul server mirror

scp $HOME/.ssh/master-key.pub <some user>@<server-mirror>:$HOME/.ssh/

4) Sul server "mirror", se state usando le recenti versione id openssh,

cat master-key.pub >> authorized_keys2

altrimenti

cat master-key.pub >> authorized_keys

5) Cambiare i permessi di authorized_keys2 sul mirror:

chmod 744 authorized_keys2

6) Sul master, testate la connessione (non dovrebbe chiedervi la password)

ssh -i $HOME/.ssh/master-key <mirror>

 

Per copiare in automatico dei file ecco la linea di comando

rsync  -avz --delete -e 'ssh -o "NumberOfPasswordPrompts 0" -i  <your private master key> '<folder to backup> <some user>@<mirror IP>:<where to backup>

 

E il gioco è fatto. Attenzione a non copiare il contenuto di .ssh del master nella stessa cartella .ssh del mirror.

Se non ci riuscite, provate a lanciare in verbose mode ssh

ssh -v

e a stare in ascolto dei log sul server di destinazione, ovvero il mirror

tail -f /var/log/secure.

Modulo di contatto

Per contattaci compila il form in tutte le sue parti.

Japita-se
Via Apollo, 6 
84043 Agropoli SA
 
TEL. 0974.551001
P.Iva: 04854760651
info_at_japita-se.it

Privacy & Cookie Policy
 

Reference

NAVIGANDO SU QUESTO SITO ACCONSENTI ALL'UTILIZZO DEI COOKIE, DESCRITTI NELLA PAGINA Privacy Policy.