Как удалить файл (ы) безопасным способом?

Есть ли способ убедиться, что удаленный файл не может быть восстановлен?

Как вы знаете, удаление файла нажатием shift-del или использованием корзины не означает, что файл исчезнет навсегда. Он находится где-то в компьютере.

В повседневной жизни правоохранительные органы или воры используют программы восстановления, чтобы раскрыть наши личные данные или что-то еще.

Они могут восстановить все данные, которые находятся на жестком диске, в оперативной памяти и даже на USB.

Чтобы защитить нас от этих людей, что нужно делать? Какую программу следует использовать?

Примечание: я не хочу получить ответ, как сначала использовать программу восстановления, а затем стереть этот файл в клочья. С помощью одной программы я хочу стереть все неиспользуемые / удаленные файлы на моем компьютере.

11 ответов

Решение

шинковать

Этот инструмент командной строки уже установлен из основных утилит в Ubuntu для безопасного стирания и перезаписи отдельных файлов с использованием метода Gutman.

Быстрое измельчение

shred -vzn 0 /dev/sdc1

стирает целые разделы, перезаписывая все 0в одну итерацию. Если никакие правовые аспекты не требуют другой процедуры, наиболее вероятно, что это безопасно для безопасного удаления ваших личных данных. Craig Wright Lecture Notes в Computer Science, 2008, 5352, 243-257.

Безопасное измельчение

shred -vzn 3 /dev/sdc1

стирает весь раздел, используя 3 итерации со случайными числами. Дополнительно (опция -z) это записывает нули, чтобы скрыть процесс измельчения в конце. Это займет в 4 раза больше времени, чем быстрый метод.

ПРИМЕЧАНИЕ. Уничтожая раздел, мы перезаписываем этот раздел 0 или случайные числа. Поэтому он эффективно удаляет все, включая кеши файловой системы в этом разделе навсегда. Это также может быть использовано для удаления нежелательных остатков удаленных файлов. Файлы, которые мы хотим сохранить, должны быть сохранены перед уничтожением.


протирать Установить вайп

Утилита командной строки предоставляет дополнительные параметры и возможность удаления каталогов в дополнение к отдельным файлам.

wipe filename
wipe -r dirname

Дополнительные примечания по журналированию файловых систем и SSD:

  • Пожалуйста, прочитайте примечания на связанных страницах по вопросам безопасности, возникающим из-за все еще восстанавливаемых резервных копий в журнальных файловых системах при удалении отдельных файлов. Перезапись целых разделов, а не отдельных файлов, эффективно удалит все данные даже при использовании файловой системы журналирования.

  • Стирание данных на твердотельном диске (SSD) может быть выполнено только путем перезаписи всего диска (не только отдельных разделов) за несколько итераций. Некоторые SSD могут иметь встроенную функцию для удаления данных, но это не всегда эффективно (см. Эту ссылку в комментарии). В настоящее время нет общих рекомендаций относительно процессов очистки или количества итераций стирания, необходимых для безопасного удаления всех остатков данных на всех доступных SSD.

Эти параметры могут быть добавлены в контекстное меню Nautilus и Thunar.

  • В Thunar откройте "Редактировать", затем "Настроить пользовательские действия"

Добавить (знак плюс)

Название "Shred File"

Описание, что вам нравится

Действие "шред -у% ф"

Аналогично для wipe,

Выберите "Условия внешнего вида" и выберите "Другие файлы"

Вы не можете выполнить ни одной команды, которая бы легко очистила все уже удаленные файлы. Тем не менее, есть ряд вещей, которые вы можете сделать, чтобы снизить уязвимость к такого рода атакам в будущем.

Как уже говорили другие, использование таких инструментов, как shred или srm, позволяет вам удалить конкретный файл, перезаписав его, а не просто удалив его из файловой системы. Если вы чувствуете себя смелым, вы можете заменить rm команда с shred или же srm безопасно удалить файлы в будущем. Это означает, что всякий раз, когда вы (или другая программа) пытается что-то удалить, используя rmвместо этого будет запущена команда безопасного удаления.

Однако, если вы используете твердотельный диск или даже некоторые более новые механические диски, уничтожение и другие методы, основанные на перезаписи, могут оказаться неэффективными, поскольку диск может фактически не записывать то, что, по вашему мнению, записывает ( источник).


Полнодисковое шифрование

Более удобным вариантом является полное шифрование диска. Если вы используете альтернативный установщик, Ubuntu может автоматически настроить для вас полностью зашифрованный диск, но вы также можете самостоятельно настроить и настроить параметры. После установки шифрование для вас практически невидимо: после ввода ключевой фразы (обязательно выбирайте хорошую, длинную), когда компьютер запускается, все выглядит и чувствует себя как обычная Ubuntu.

Вы также можете зашифровать внешние носители, такие как USB-диски, с помощью Дисковой утилиты Ubuntu. Настроить зашифрованный внешний диск так же просто, как установить флажок "зашифровать базовую файловую систему" ​​при форматировании диска. Вы даже можете сохранить фразу-пароль в вашей (зашифрованной) связке ключей, чтобы вам не приходилось вводить фразу каждый раз, когда вы подключаете этот диск к компьютеру.

Если весь ваш диск - и все сменные носители - зашифрованы, беспокоиться гораздо меньше. Чтобы получить доступ к вашим данным, вор или сотрудник полиции должен будет провести по компьютеру, пока он включен (или через минуту или две после его выключения, если они очень хороши). Если вы переводите компьютер в спящий режим (а не приостанавливаете его), когда он не используется, вы должны быть в полной безопасности.

Если вам когда-нибудь понадобится полностью уничтожить все ваши данные, вам не нужно делать Gutmann стирание всего вашего диска. Просто перезапишите самое начало диска, чтобы уничтожить заголовки зашифрованного тома. В отличие от обычной файловой системы, это фактически сделает невозможным восстановление данных.


Итак, как перейти от текущей настройки к надежно зашифрованному диску? Достаточно сложно переоборудовать установленную в настоящее время операционную систему для использования зашифрованного диска. Самый простой подход - сделать резервную копию всех ваших данных и настроек, а затем переустановить их с зашифрованного диска. При резервном копировании обязательно создайте резервную копию своих данных на зашифрованном внешнем диске, но не сохраняйте ключевую фразу в вашем брелоке.

После того, как вы все сделали резервную копию, вы можете захотеть агрессивно стереть ваш жесткий диск, чтобы убедиться, что ни одна из ваших существующих данных не может быть восстановлена ​​в будущем. Если вы используете твердотельный накопитель, процесс становится еще более сложным, поэтому в зависимости от того, сколько вы хотите инвестировать в этот процесс, возможно, стоит уничтожить ваш текущий диск ( сложное предложение) и начать с нового.

При переустановке ОС, если вы еще не агрессивно очистили диск, вы должны обязательно заполнить новый зашифрованный раздел, который перезапишет все ваши старые данные. После того, как вы восстановили свою резервную копию, вы можете активно стереть начало резервного диска, чтобы уничтожить заголовок шифрования, чтобы его нельзя было восстановить снова.

Обновление: если вы еще не удалили файл, который вы хотите восстановить, используйте принятый ответ. Однако, если вы уже удалили файл [s], то это следующий лучший метод, который я знаю.

Если я правильно вас понял, вы хотите стереть все ранее удаленные файлы. Вот простой способ сделать это:

$ dd if=/dev/zero of=/path/to/mounted/partition/tmp_file bs=1M count=999999999999

Пусть это работает до тех пор, пока не получит жалобу, пока не получит ошибку записи на диск [не хватает места]. Затем удалите файл! Это просто заполняет ваш пустой диск тысячами, поэтому все ваши предыдущие файлы перезаписываются. Обязательно удалите файл сейчас, иначе у вас не останется диска. Возможно, вы захотите сделать это несколько раз, если вы действительно параноик. Или, если вы хотите записать в случайном порядке на ваш диск, я бы предложил заменить /dev/zero с /dev/urandom,

Однако, это займет гораздо больше времени, поэтому я бы запустил это в одночасье. Также, если вам нужен индикатор прогресса, сделайте это вместо:

$ free=$( df {PARTITION OR MOUNTPOINT}  |awk '{print $3}'|tail -1 )
$ dd if=/dev/zero bs=1M count=999999999999 | pv -s "$free" > /path/to/mounted/partition/tmp_file

Сначала вы получаете свободное место на диске с помощью du, awk и tail, затем используете dd для получения /dev/zero, передавая его в pv что означает "просмотрщик труб", который перенаправляет все на tmp_fileЕще раз удалите файл после этого. $ rm tmp_file

В любом случае, надеюсь, кто-то найдет это полезным!:)

Сначала удалите файлы с помощью rm на терминале или с помощью shift-delete на nautilus. Еще лучше, используйте srmиз пакета инструментов безопасного удаления.

Вы можете установить инструменты безопасного удаления, например:

apt-get install secure-delete

Во-вторых, используйте sfill, чтобы стереть неиспользуемое пространство на вашем диске:

sudo sfill -f <directory>

Это займет некоторое время, так как для заполнения диска используются криптографические методы.

Предупреждение: это проходит через всю вашу файловую систему, и вы являетесь пользователем root. Используйте с осторожностью!

Это создаст файл, который уничтожит все ранее существующие данные. Файл будет создан в <directory>,

Программа с графическим интерфейсом для этого - BleachBit (она также есть в источниках). Более свежая (deb file) версия на странице BleachBit Sourceforge.

Помимо простого удаления файлов, он включает в себя расширенные функции, такие как уничтожение файлов для предотвращения восстановления, удаление свободного дискового пространства, чтобы скрыть следы файлов, удаленных другими приложениями.

"BleachBit быстро освобождает дисковое пространство и неустанно защищает вашу конфиденциальность. Освободите кеш, удалите куки, очистите историю Интернета, удалите временные файлы, удалите журналы и удалите ненужные ненужные файлы. Разработанный для систем Linux и Windows, он очищается 90 приложений, включая Firefox (пылесос, чтобы ускорить его), Internet Explorer, Adobe Flash, Google Chrome, Opera, Safari и другие ". (с http://bleachbit.sourceforge.net/)

BleachBit имеет несколько продвинутых очистителей:

  • Очистите память и поменяйте местами в Linux
  • Удалить сломанные ярлыки в Linux
  • Удалите историю URL Firefox, не удаляя весь файл, с необязательным уничтожением
  • Найдите распространенные нежелательные файлы, такие как файлы Thumbs.db и.DS_Store.
  • Удалить список последних документов OpenOffice.org без удаления всего файла Common.xcu
  • Перезаписать свободное место на диске, чтобы скрыть ранее файлы
  • Вакуумные базы данных Firefox, Google Chrome, Liferea, Thunderbird и Yum: сжатие файлов без удаления данных для экономии места и повышения скорости
  • Хирургическое удаление личной информации из файлов конфигурации.ini и JSON с удалением всего файла

Подробнее о том, как использовать Bleachbit для безопасного удаления определенных файлов и папок, см. Этот ответ.

Если вы хотите решение, которое не может быть сорвано патологически одержимым человеком, вам следует рассмотреть некоторую комбинацию (ограниченную денежными ресурсами):

  • размагничивание - магнитное стирание жесткого диска
  • физическое отключение жесткого диска - т.е. промышленного дырокола
  • кислотная ванна <- вы не можете получить кусочки от кучи липкой жидкости.

Эти решения значительно отличаются экономичностью и изобретательностью. Несколько:

Для твердотельных накопителей и других флэш-носителей

В твердотельных накопителях и многих других флэш-накопителях используется метод "выравнивания износа", который переназначает неиспользуемые блоки ячеек памяти в зависимости от количества предыдущих циклов записи, чтобы продлить срок службы накопителя. Как следствие, перезапись диапазонов блоков не работает как метод для безопасного (или даже эффективного) стирания содержимого хранилища, как для жестких дисков. С другой стороны, флеш-память позволяет намного быстрее и эффективнее обеспечить безопасное удаление блоков, диапазонов блоков или целых дисков.

Стереть весь диск

Вы должны использовать функцию стирания безопасности диска.

  1. Убедитесь, что защита диска поддерживает безопасное стирание 1 и не "заморожена". Если это так, это может помочь приостановить и возобновить работу компьютера.

    $ sudo hdparm -I /dev/sdX | grep frozen
           not     frozen 
    

    Вывод команды (отфильтрованный) означает, что этот диск поддерживает безопасное стирание, "не заморожен", и вы можете продолжить.

  2. Установить пароль пользователя (Eins в этом примере). Этот пароль тоже очищен, точный выбор не имеет значения.

    sudo hdparm --user-master u --security-set-pass Eins /dev/sdX
    
  3. Выполните команду безопасного стирания ATA.

    sudo hdparm --user-master u --security-erase Eins /dev/sdX
    

См. Статью ATA Secure Erase в вики ядра Linux для получения полных инструкций, включая устранение неполадок.

( источник)

Если выходные данные команды на шаге 1 пусты, накопитель не поддерживает безопасное стирание, но может по-прежнему поддерживать команду TRIM, необходимую для раздела ниже.

Стереть раздел диска

blkdiscard(8) 2 может безопасно удалить блочные устройства, если накопитель поддерживает это 1:

sudo blkdiscard --secure /dev/sdXN

где /dev/sdXN путь к узлу блочного устройства, относящийся к диску или разделу, который необходимо удалить.


1 Если ваш накопитель находится во внешнем корпусе с подключением USB или FireWire, набор микросхем трансляции может блокировать поддержку некоторых дополнительных функций, таких как безопасное стирание и TRIM, даже если прилагаемый накопитель поддерживает его.

2 Доступно и установлено по умолчанию начиная с Ubuntu Xenial Xerus (16.04).

Я бы сказал, что решение - это комбинация нескольких ответов, приведенных здесь. Для уже удаленных файлов и разделов, которые все еще используются, я согласен с Мэттом.

Затем в будущем я бы предложил начать использовать инструменты безопасного удаления вместо простого rm.

Наконец, когда можно будет переформатировать раздел, следует рассмотреть возможность шифрования раздела. Возможно, используя какой-то подход, который предлагает правдоподобное отрицание, как в Truecrypt

Я использую TrueCrypt файл изображения для таких важных данных. Я не удобный, бесплатный, кроссплатформенный, и мне не нужен полный диск, и я не использую никакого дополнительного программного обеспечения, чтобы "действительно удалить" файл.

Просто убедитесь, что у вас есть надежный пароль и сделайте резервную копию файла образа. Я храню резервную копию в облаке.

  1. Первый вариант - клочок. В предыдущем ответе относительно клочка отсутствуют некоторые необходимые детали. Вы не сможете преодолеть кеширование файловой системы, создание снимков, ведение журналов и т. Д., Если запустите shred на разделе (как в примере с sdc5), и данные останутся, потенциально много.

    Чтобы уничтожение было эффективным, особенно на современных SSD и т. Д., Вы должны запускать его на устройстве, а не на разделе. Это было бы /dev/sdc... без номера на конце (номер раздела).

    Вам нужно будет сделать это с живого USB, если диск, который вы хотите почистить, является основным устройством для вашего компьютера. В этом случае вам лучше будет добавить постоянство к работающему USB, когда вы создадите его, чтобы вы могли загрузить несколько дополнительных инструментов для правильной работы.

    Запустите команду: sudo shred -vfxz /dev/sdc или же sda или как там у устройства имя. Если вы не уверены в имени, откройте Disks или GParted, чтобы идентифицировать ваше устройство, или выполните команду: lsblk в терминале и определите там название вашего устройства.

    Добавление букв f а также x Команде важно, так как f= принудительное разрешение и x= точный размер файлов. Без них вы можете пропустить данные, для которых требуется разрешение на чтение или запись, или пропустить данные, когда файл округлен до размера блока.

    Вы можете добавить желаемое количество проходов записи, добавив -n (номер, который вы хотите). Пример: sudo shred -vfxz -n 5 /dev/sdc

    Это первый порт захода, чтобы стереть ваш диск. Это может помочь запустить подобные инструменты, такие как shrub, secure-delete и nwipe. Все они работают одинаково с очень похожими командами и немного разными методами и шаблонами. Перейдите на справочную страницу Linux или Google их, чтобы быстро ознакомиться с тем, как использовать команды. Маловероятно, что вам понадобится больше, чем стандартные 4 прохода, но если это важно, вы могли бы пройти лишнюю милю, поскольку это могло бы помочь.

  2. Ваша RAM может иметь данные на нем. После установки secure-delete выполните команду для sdmem. Это сотрет вашу память RAM. Однако первые данные, которые вы когда-либо заполняли в ОЗУ, плюс любые данные, которые оставались в ОЗУ в течение длительных периодов, вполне могли оставить след.

    При покупке новой оперативной памяти (или HD /SSD в этом отношении) лучше всего заполнить диск до завершения несколько раз. Вы можете использовать shred, но здесь лучше использовать dd. Команда:

    sudo dd if=/dev/urandom of=/dev/ # (insert your device partion name)
    

    Также с ОЗУ лучше повторить эту процедуру перед использованием конфиденциальных данных, если вы хотите повысить свою безопасность, и впоследствии стереть конфиденциальные данные из ОЗУ как можно быстрее. Именно это время осталось на месте, что в основном отвечает за его способность оставлять следы.

    Осталось только создать раздел или установить следующий дистрибутив.

  3. Шифрование. Люди часто заявляют, что это надежный метод, но если вы собираетесь продолжать использовать жесткий диск или передавать его кому-то другому, это неэффективный вариант. Что касается правовых проблем, то неспособность разблокировать зашифрованное устройство часто не является вариантом и во многих местах может считаться виной или фактическим преступлением. Это может остановить вора и т. Д. (Кража данных только лол).

    Также обратите внимание, что зашифрованная домашняя папка очень отличается и ничем не защищает от физического изучения на вашем компьютере, она, по существу, предназначена для сетевой безопасности / безопасности системы и может быть обойдена.

  4. Если вы утилизируете устройство - после очистки с помощью уничтожения, затем шифрования длинным паролем, который содержит специальные символы, такие как * и т. Д., Чтобы разбить буквы и цифры вашего пароля, снова используйте уничтожение, но вы можете просто указать первые 10 гигабайт диска. (зависит от размера, но это большое безопасное число). Пример: sudo shred -vfxzs10G /dev/sdc Это быстрее и эффективнее, чем уничтожение диска в этих условиях.

    Тогда, чтобы быть уверенным, вынуть жесткий диск и ОЗУ, ОЗУ легко защелкивать и уничтожать, а также твердотельные накопители. Вы можете проявить творческий подход и выпустить эту параноидальную энергию, разрушая их.

Вы можете использовать DD для безопасного удаления файла, удачи в восстановлении, когда вы это сделаете. Смотрите пример на этом сайте.

Вот команда для безопасного стирания файла (Настройте bs=xx параметр)

dd if=/dev/urandom of=/tmp/test/myfile.txt bs=27 count=1 conv=notrunc

где bs=## сколько случайных данных записать в файл в байтах (должно соответствовать размеру перезаписываемого файла, введите размер файла в байтах, как показано в ls -l команда)

Другие вопросы по тегам