GNU/Linux >> Linux Esercitazione >  >> Linux

Nascondere i dati nei filesystem?

Voglio nascondere alcuni file in modo tale che nemmeno ls -a può trovarlo. Non sto parlando di aggiungere '.' davanti al nome del file.
Stavo pensando se potessi creare chiamate di sistema separate per accedere a quei file. L'effettiva necessità è nascondere alcuni file di registro all'utente. Sto memorizzando i dati MAC di alcuni file e non voglio che l'utente veda quei file di registro. Al momento conosco solo un modo per nascondere i dati, ad esempio aggiungendo "." davanti al nome del file. Ma il file può essere visto dall'utente con la semplice chiamata ls -a . Quindi voglio sapere se esiste un altro modo per nascondere quei dati di registro?

Risposta accettata:

Come altri hanno notato, se lo scopo di ciò è ostacolare l'accesso a un file persistente, nasconderlo è probabilmente l'approccio sbagliato. In questo caso l'uso di adeguate misure di controllo degli accessi o anche la crittografia, se l'applicazione lo giustifica, potrebbe essere una soluzione. D'altra parte, creare "nascosti" temporanei files è un caso d'uso perfettamente legittimo.

In Linux, dalla versione del kernel 3.11 il open() la chiamata di sistema supporta O_TMPFILE flag, che può essere utilizzato per creare file temporanei senza nome. Quando viene utilizzato questo flag, il percorso argomento in open() viene utilizzato per specificare una directory, in cui viene creato un inode senza nome. Tuttavia, come caso d'uso principale per O_TMPFILE è, come suggerisce il nome, la creazione di temporaneo file, questo non è adatto per l'archiviazione permanente poiché il file andrà perso quando l'ultimo descrittore di file del file viene chiuso, a meno che al file non venga assegnato un nome. Al file può essere assegnato un nome con linkat() chiamata di sistema, a meno che non sia O_EXCL flag è stato specificato in aggiunta a O_TMPFILE , nel qual caso viene impedito il collegamento del file al file system.

Il O_TMPFILE aggiunto di recente la funzionalità è importante perché può essere utilizzata per fornire le seguenti proprietà ai file temporanei:

  1. Creazione senza condizioni di gara.
  2. Eliminazione automatica alla chiusura.
  3. Irraggiungibile tramite qualsiasi percorso.
  4. Non soggetto ad attacchi con link simbolici.
  5. Non è necessario che il chiamante elabori nomi univoci.

Inoltre, la funzionalità può essere utilizzata per creare file inizialmente invisibili, dopodiché è possibile modificare gli attributi del file system appropriati sul file, prima di collegarlo al file system in un'operazione atomica. Questo può essere utilizzato per evitare determinate condizioni di gara TOCTOU.

Correlati:estrarre i dati CSV dall'URL al foglio di lavoro di Google?

Uno svantaggio con O_TMPFILE flag è che solo un sottoinsieme di file system fornisce supporto per esso. Inizialmente il supporto era fornito nei filesystem ext2, ext3,
ext4, UDF, Minix e shmem. Il supporto XFS è stato aggiunto in Linux 3.15.


Linux
  1. Spostare file su Linux senza mv

  2. Come prevenire e ripristinare l'eliminazione accidentale di file in Linux

  3. Pseudo file per dati temporanei?

  4. Linux:recupero dati dopo aver copiato il file per bloccare il dispositivo?

  5. I file vengono salvati su disco in sequenza?

Come rinominare uno o più file in Linux

Scripting Bash:come leggere i dati dai file di testo

Recupero dati Ext4?

File Manager vs FTP

Trasferisci file usando WinSCP

Come comprimere un file in Linux