Apa itu Linux untuk SET FILE / ERASE_ON_DELETE?

16

Dalam VMS, seseorang dapat memberi tahu sistem file untuk menulis sampah di atas isi file yang sudah ada saat dihapus. Berikut adalah perintah DCL untuk mengidentifikasi file untuk jenis perawatan ini:

 $ SET FILE/ERASE_ON_DELETE SAMPLE.TXT

Ini memungkinkan kebijakan diatur pada satu titik waktu kemudian pengguna file tidak harus menangani detail keamanan itu. Penghapusan standar yang mengeluarkan nama file dari direktori dan membebaskan ruang bagi file lain untuk digunakan juga akan mengubah konten yang ada untuk mencegah pengguna berikutnya membacanya. Penghapusan normal:

$ DELETE SAMPLE.TXT.*

Apa itu Linux untuk ini?

CW Holeman II
sumber

Jawaban:

19

Ini hanya didukung oleh beberapa sistem file Linux:

chattr +s sample.txt

mungkin (atau mungkin tidak) melakukan apa yang Anda inginkan.

Dari man chattr:

NAME
       chattr - change file attributes on a Linux second extended file system
...
       When a file with the ‘s’ attribute set is deleted, its blocks are
       zeroed and written back to the disk.  Note: please make sure to read
       the bugs and limitations section at the end of this document.
...
BUGS AND LIMITATIONS
       The  ‘c’, ’s’, and ‘u’ attributes are not honored by the ext2
       and ext3 filesystems as implemented in the current mainline Linux
       kernels. These attributes may be implemented in future versions of
       the ext2 and ext3 filesystems.

Saya tidak tahu versi kernel arus utama mana (jika ada) yang mengimplementasikan ini.

Anthon
sumber
2
Wow, kamu belajar sesuatu yang baru setiap hari. Apakah xfs atau zfs menerapkan flag ini?
8

Perhatikan bahwa dengan teknologi saat ini terkadang Anda tidak dapat mengendalikannya. Dengan disk SSD setiap penulisan dapat dilakukan di lokasi yang berbeda, menyimpan data lama ... dan ini tidak dapat ditimpa oleh OS, sistem file atau apa pun dalam perangkat lunak. Lebih lanjut tentang http://www.anandtech.com/printarticle.aspx?i=3531 .

liori
sumber
7

Setara terdekat yang biasanya Anda temukan pada sistem unix adalah enkripsi. Cara mudah untuk mengatur direktori terenkripsi di Linux (dan sebagian besar lainnya) adalah Encfs . Mulai cepat:

mkdir .ciphertext encrypted
encfs .ciphertext encrypted
# work on encrypted/file
fusermount -u encrypted

Ada beberapa opsi lain untuk enkripsi sistem file. Lihat Cara terbaik mengenkripsi dan mendekripsi direktori melalui baris perintah atau skrip? , Cara terbaik untuk melakukan enkripsi disk penuh? , dan beberapa utas lainnya tentang Pengguna Super , Kesalahan Server dan Tanya Ubuntu .

Saya tidak tahu ancaman apa yang FILE/ERASE_ON_DELETEmelindungi. Perhatikan bahwa pada unix, konten sebelumnya dari file yang ditulis ulang atau dihapus hanya dapat dilihat oleh administrator sistem atau seseorang dengan akses fisik ke drive: tidak ada "mode pembuatan file cepat" yang akan mengisi file dengan data acak yang hanya kebetulan berada di wilayah disk yang digunakan oleh file.

Gilles 'SANGAT berhenti menjadi jahat'
sumber
4

Saya tidak yakin apakah ini yang Anda cari:

dd if=/dev/urandom of=FILE

Ini menulis byte acak ke FILE.

Alan Haggai Alavi
sumber
Bukan hal yang sama, tetapi mungkin sedekat yang Anda dapatkan di Linux standar.
Oh begitu. Terima kasih telah memberi tahu saya, Paul.
Alan Haggai Alavi