Come posso proteggere un file dalle modifiche dell'utente?


15

Sto usando Ubuntu 12.04 e voglio proteggere alcune immagini di un altro utente usando il comando su (Ho i privilegi di amministratore). Come posso proteggere un file usando il terminale pur consentendo al resto degli utenti di leggerlo?


Voglio che chiunque possa vederlo, il bot non può modificarlo e cancellarlo
Jatttt,

@ user222588 sembra abbastanza chiaro, nessuna preoccupazione
Bruno Pereira,

Il metodo dipende dove sono i file, dove sono? Un usb, il tuo disco rigido principale?
Braiam,

Risposte:


25

Ubuntu utilizza il formato di file system EXT4 per impostazione predefinita (presumo che non stiamo parlando di nient'altro qui).

Se non si desidera assumere la proprietà del file senza rimuovere la possibilità per l'utente di leggere quel file, è possibile iniziare consentendo loro di leggere, ma non scrivere su quel file con:

chmod a-w,ug+r foo_file

descrizione: modifica i permessi dei file, non tutti possono scrivere , l'utente + gruppo può leggere

Quindi può rendere i file immutabili in modo che anche gli utenti con permesso di root non possano cambiare quindi usando quanto segue:

sudo chattr +i foo_file

Per poter eliminare o persino modificare questo file, è necessario utilizzare il comando:

sudo chattr -i foo_file

e poi sarai in grado di farci qualcosa.

Il vantaggio di usarlo è che la maggior parte degli utenti (e amministratori) non ha mai sperimentato file immutabili in Linux.

Quello era che l'utente vedrà questo quando tenterà di rimuovere (o alterare) il file:

~> sudo chmod a-w,ug+r asd
~> ll asd
-r--r--r-- 1 bruno bruno 156 feb 21 20:46 asd
~> sudo chattr +i asd
~> chmod +w asd
chmod: changing permissions of ‘asd’: Operation not permitted
~> rm asd
rm: remove write-protected regular file ‘asd’? y
rm: cannot remove ‘asd’: Operation not permitted
~> sudo rm asd
rm: cannot remove ‘asd’: Operation not permitted

pur potendo ancora leggerlo:

~> cat asd
asd
...
Videos

Dopo aver emesso chattr +iil file è "bloccato", non è possibile apportare modifiche fino a quando un utente con autorizzazioni di root non lo disattiva chattr -i.


Saluta amico mio. che bella spiegazione.
rʒɑdʒɑ

8

Usa come di seguito nel tuo terminale ( CTRL+ ALT+ T)

chmod 700 -R /path/to/directory

cosa c'è di sbagliato in questo? voto negativo con una ragione adeguata molto apprezzata.
rɑːdʒɑ

1

Prova il comando seguente sul terminale,

chmod u-rw /path/to/directory

Il comando sopra non consente a un altro utente o gruppo di leggere o scrivere quella directory in cui sono memorizzate le immagini.

chmod u+rw /path/to/directory

Per ripristinare le modifiche, eseguire il comando sopra.


1
si prega di fornire il motivo del downvote.
Avinash Raj,

2
Immagino che il downvote sia perché stai togliendo i diritti al proprietario, non ad altri utenti e gruppi.
Ben Voigt,

0

Se si desidera crittografare il file, è possibile utilizzare bcryptper crittografare e decodificare il file. Utilizza la crittografia dei file blowfish.

digitare: sudo apt-get install bcryptper installarlo.

Dopo l'installazione digitare sudo bcrypt file-nameper crittografarlo.


0

Consiglio di usare Truecrypt per creare un "disco rimovibile" crittografato su 1 file. Se ad esempio crei una partizione TrueCrypt da 1 GB e puoi proteggere questo file con password. (Opzione esperto: puoi impostare 2 password per quel file: con la prima password vedi una parte normale del file e con password 2 vedi la parte nascosta) Puoi montare questo file su Linux, Mac o Windows (mount to drive e:) e mostrerai quel file da 1 GB come un drive pendrive / flash e puoi smontare quando vuoi.

Se crei quel file da 1 GB (o qualsiasi dimensione, o un disco intero o pendrive) puoi aggiungere qualsiasi estensione per quel file da nascondere. (Non posizionare mai quel file nella directory home come secret.truecrypt.file.with.pwd lol)

Se usi un nome di file di sistema nella cartella di sistema, forse l'utente normale non si accorgerà mai che non è un file di sistema, ma un file crittografato privato.

Ad esempio per nascondere questo file:

/usr/lib/libc8.2.so
/usr/lib/libxml24.so.9.1.3

Altri nomi di file temporanei:

Win386.swp
nsz17BE.tmp
mmc00C1B00C.xml
jusched.log
IMT211.xml
i4j8470767517827925011.tmp
FTP7F0.tmp
e4j3B.tmp
  • Scegli uno schema e cambia i numeri per un nome di file.

  • e anche impostare i diritti ... e dopo aver rimosso i comandi della cronologia

  • Con quella soluzione l'utente normale non troverà mai il tuo file segreto.

  • In Pendrive crea una cartella TEMP e usa un nome di file temporaneo, come esempi di file. e fare alcuni backup con un nome diverso ...

Puoi installare TrueCrypt se vuoi, ad esempio:

sudo add-apt-repository ppa:michael-astrapi/ppa
sudo apt-get update
sudo apt-get install truecrypt

Maggiori informazioni nella homepage di Truecrypt


0

Se per protezione, intendi impedire qualsiasi modifica a questi file, considera l'utilizzo dell'utilità chattr . Ha l'opzione di contrassegnare i file come immutabili (impossibile modificarli).

chattr +i /home/username/pictures/example1.png

Ciò impedirà a tutti gli utenti e persino all'utente root di rimuovere o modificare qualsiasi file impostato come immutabile.

È possibile annullare questa azione sostituendo "+ i" con "-i".

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.