rsync mantenere permessi e ACL su host remoto
Un saluto a tutta la lista,
mi ritrovo a dover sincronizzare un dataset con molti file su un server
remoto dovendo però mantenere permessi e possibili ACL. Ho pensato di
utilizzare rsync + SSH con autenticazione con chiave.
Al momento sto valutando tre modalità:
1. rsync+SSH con utente root e autenticazione con chiave. Questo rimuove
ogni problema con i permessi e ACL perche con l'utente root, rsync
riesce ad impostare qualsiasi permesso. Questo però mi lascia l'host con
un ssh accessibile da root (anche se è con chiave). Potrei rinforzare la
chiave caricata indicando che può lanciare solo rsync (in daemon mode) e
creare profilo di AppArmor per circoscrivere rsync solo dove può
scrivere, ma è abbastanza sicuro? Lascio cmq un host con SSH root con
chiave...
2. rsync+SSH con utente normale (non privilegiato) con chiave. In questa
modalità perdo i permessi e a volte qualche file potrebbe non essere
recuperabile per permessi insufficienti. Qui risolvo la problematica
dell'accesso root ma ho grane con i permessi. Per ovviare al problema
dei permessi potrei salvare le ACL con 'getfacl -R', caricare l'ACL
sull'host remoto e riapplicare l'ACL ma risulta macchinoso, dispendioso
in termini di tempo anche solo recuperare l'ACL di tutto il dataset.
3. rsync+SSH con utente non privilegiato configurato con una direttiva
sudo per lanciare solo rsync con maggiori privilegi (al solo scopo di
salvare i permessi e le ACL) corredato di un profilo di AppArmor per
non permettere ad rsync di poter scrivere su tutto il sistema ma solo su
una specifica dir.
4. Ci sto pensando troppo e vado col primo metodo?
Ho fatto alcune prove e la terza modalità mi sembra la migliore ma
gradirei un consiglio dal punto di vista della sicurezza, quindi quale
tra questi metodi è più sicuro e migliore?
Grazie a tutti in anticipo,
Saluti, Alessandro.
Reply to: