Proteggere cartelle o file con password

Ciao a tutti,

la domanda può sembrare sciocca o banale (e forse lo è…) ma:

è possibile proteggere cartelle e/o files con password? Senza cambiare i permessi, intendo,
semplicemente impedire la lettura del contenuto delle cartelle e dei files in esse contenute,
pur mantenendo gli stessi permessi/utenti/gruppi, in particolare di esecuzione.
Ad esempio avere uno script bash che può essere tranquillamente eseguito, ma che senza password non si può visualizzare…

Grazie,
Fabio.

Potresti rendere la cartella nascosta aggiunge un . prima del nome e crearti uno script da mettere tipo in /bin che apra la cartella all’inserimento della password così da richiamarlo sia da terminale che da Alt + F2.

ES:
ti crei un file contenente solo la password all’interno (io nello script il file lo ho messo all’interno della home)

echo -e Password: read pass check_pass=cat ~/.pass if $pass == $check_pass ]; then nautilus ~/.cartella_nascosta else echo "Password sbagliata" exit 1 fi

per richiamarlo da Alt + F2 devi usare questo comando (mi baso sul fatto che usi il terminal di gnome se usi altri terminali tipo quello di KDE allora è konsole)

gnome-terminal -e nome_script

Potresti provare programmi tipo eCryptfs o simili che ti permettono di creare cartelle criptate a cui è possibile accedere
esclusivamente previo inserimento di password.
eCryptfs è semplicissimo da utilizzare e in rete puoi trovare diversi howto a riguardo.

Aggiungo truecrypt o luks per creare files criptati (le cartelle nascoste sono comunque accessibili senza password, ed è anche possibile scegliere di visualizzarle).

Grazie ragazzi per le risposte… proverò il discorso della criptatura… ma il problema è sempre che l’esecuzione di uno script o la lettura dei files da parte del sistema dev’essere possibile come prima (inteso come accesso da parte di altri programmi o scripts “accreditati”), solo che se uno cerca di vederne il contenuto non può farlo… immagino che non sia banale perché se un programma può accedere… lo potrà fare anche un programma di lettura…
Forse faccio prima semplicemente a non fornire le credenziali di accesso all’utente definito nel sistema (l’idea è di “proteggere” alcuni scripts che si trovano su un computer che devo consegnare a terzi, sul quale però devono girare tali scripts…)

Appunto… Se metti lo script sulla macchina X lo script, o si trova in un file criptato (e, allora, non puoi eseguirlo senza prima digitare la password), o chiunque accede alla macchina X sarà in grado di leggerlo. In ogni caso, mentre è in esecuzione, deve essere stato come minimo montato l’eventuale file criptato, quindi è visibile in chiaro.
Quindi l’unica soluzione è… far girare lo script su una macchina a cui solo tu hai accesso (come per il php, per capirci: se accedi alle pagine web non vedi il codice che le ha generate).

Chiarissimo, grazie!

Non conoscendo i dettagli dell’eseguibile e le sue interazioni, se è crittografato non è accessibile tanto per l’utente quanto per altre applicazioni di sistema; al post #1 c’è anche la preoccupazione di non cambiare i permessi. Cambiare proprietario o agire sui gruppi potrebbe essere una soluzione, fintantoché l’utente non è tra i sudoers e l’utente non ha accesso root. Oppure, si potrebbe passare per SELinux. Ma in entrambi i casi, se l’utente ha la disponibilità fisica della macchina, potrebbe aggirare questi blocchi. Se l’utente è un “avversario” in questo senso, concordo con il post #6.