Здравствуйте! :)
Какими средствами можно стирать информацию с диска без возможности ее восстановления в дальнейшем в OC Linux?
Комментарии
— andrew (11/03/2006 13:52) Наиболее часто в этом контексте упоминается dd, но многопроходную перезапись обычно проводят с помощью shred(1). shred здаётся мне вообще более удобным средством уничтожения как отдельных файлов, так и целого раздела. На моём Gentoo он является частью coreutils...
Снова таки, на shred нельзя полагаться в том случае, если ФС журналируема и настроена на журналирование всего содержимого файлов, а не только метаданных (режим data=journal в случае ext3), а также когда речь идёт о NFS или сжатых ФС. Про случай зеркалирования с помощью RAID, думаю, и упоминать не стоит :)
Наиболее часто в этом контексте упоминается dd, но многопроходную перезапись обычно проводят с помощью shred(1).
На рабочем столе KDE есть значок "шредер". Это и есть shred? Если нет то какой утилитой и алгоритмом при использовании этой опции осуществляется удаление информации с винчестера? Используется ли для этого GPG (насколько мне известно, поправьте если я не прав, в gpg нет команды типа "удалить безвозвратно" как в PGP команда shred или wipe). Хотя, открыв свойства ярлыка, я в описании увидел команду kgpg -X %U.
— sentaus (04/06/2006 19:44) Вий,
Нет, shred – это консольная утилита, она всё сама делает без чьей-либо помощи.
kgpg -X %U.
Это у KGpg какой-то свой шредер есть. Но он, например, у меня не работает.
— Гость (08/06/2006 11:59) С систем файлов с журналом ничего бесследно удалить невозможно используя API файловой системы. Вообще, такое удаление может быть ненадежным даже в случае обычных файловых систем из-за реализации жесткого диска.
Альтернативы:
– Купить побольше памяти, и временные файлы держать в ОЗУ
– Физически уничтожить накопитель
– Шифровать на уровне блочного девайса
— Вий (03/02/2009 19:36, исправлен 03/02/2009 19:38) Провел эксперимент и обнаружил, что Shreder от Kgpg действительно не работает. Файл размером в 100 Мб удаляет за 1 секунду! И зачем его только таким делали? Только в заблуждение людей вводит.
Однако в нете обнаружил другую информацию[link1].
Затирание свободного места нулями (хотя это конечно не метод Гутмана) в разделе /home выглядит так:
Я давал команды с инструкцией sudo
Первая команда создает файл c именем bigfile, содержащий нули, на всем свободном пространстве раздела, т.е. фактически заливает все свободное место нулями.
Третья команда возвращает свободное место пользователям.
Команду sync представляю себе смутно :(
Более полная информация, в том числе по "слабым местам" приведена в статье.
— SATtva (03/02/2009 20:15)
Команду sync представляю себе смутно :(
Выполняет отложенные операции записи, сбрасывая данные из буферов файловой системы на физический носитель. Если из приведённого листинга опустить команды sync, то при большой ёмкости кэша ФС обе указанные операции (dd и rm) могут целиком пройти только в ОЗУ, не затронув жёсткий диск, т.е. фактически никакой перезаписи не произойдёт.
— Вий (04/02/2009 16:08, исправлен 04/02/2009 16:14) Сегодня протестировал на время уничтожения файлов утилиту shred. Файл размером 208 МБ затирался около 2 минут. Интересно, какое количество проходов и какие комбинации бит используются в работе этой утилиты?
Кстати, удобно сделать кнопку запуска с подходящим изображением на рабочем столе, в этом случае просто перетаскивая файл на эту кнопку (как в корзину) мы отправляем файл на затирание.
— Вий (04/02/2009 16:54)
Кстати, удобно сделать кнопку запуска с подходящим изображением на рабочем столе, в этом случае просто перетаскивая файл на эту кнопку (как в корзину) мы отправляем файл на затирание.
Поторопился, не трет при повторном опробовании. Через консоль то же не хочет. Синтаксис команды правильный?
— Вий (06/02/2009 19:45, исправлен 06/02/2009 19:56) Разобрался, к команде shred нужно добавить параметр -u, т.е. команда выглядит так
Кнопка запуска на рабочем столе так же работает, однако на журналируемых ФС удаление файлов может иметь нюансы. Более подробно:
shred --help
или
man shred
Интересно, какое количество проходов и какие комбинации бит используются в работе этой утилиты?
Ответы известны:
По умолчанию 25 проходов, комбинации можно просмотреть, добавив параметр -v, количество проходов можно задать параметром -n
Без параметра -u файл только перезаписывается, но не удалается (используется для уничтожения данных разделов диска)
Пример – удаление файла name:
дает вывод:
shred: name: проход 1/10 (random)...
shred: name: проход 2/10 (000000)...
shred: name: проход 3/10 (6db6db)...
shred: name: проход 4/10 (ffffff)...
shred: name: проход 5/10 (555555)...
shred: name: проход 6/10 (random)...
shred: name: проход 7/10 (aaaaaa)...
shred: name: проход 8/10 (249249)...
shred: name: проход 9/10 (924924)...
shred: name: проход 10/10 (random)...
shred: name: удаление
shred: name: переименован в 0000
shred: 0000: переименован в 000
shred: 000: переименован в 00
shred: 00: переименован в 0
shred: name: удален
Я несколько раз давал эту команду в качестве эксперемента и обнаружил, что первый и последний проходы перезаписи всегда делаются случайными данными (random). А вот для чего после перезаписи делается несколько операций переименования уже перезаписанного файла мне не сосем ясно. Видимо для того, что бы замести следы его прошлого присутсвия на диске.
Обратил внимание, что утилита shred по умолчанию удаляет файлы 3-мя проходами random. Не помню откуда была информация, что по умолчанию используется 25 проходов, но оказалось, что это неверно. Для того, что бы сделать 25 проходов необходимо жестко задать параметр -n25.
— BrainSlug (16/07/2010 23:22) Удобней сделать сделать файл в /usr/bin с таким, к примеру, содержанием
#!/bin/bash
sudo find -type f -execdir shred -fuvz -n 35 '{}' \;
sudo rm -rf *
Пользоваться этим удобно с помощью mc – зашел в нужную папку, переключился в консоль (ctrl-o) и запустил внутри директории этого шредера. Работает рекурсивно, изничтожит и файлы и папки.
— chemical_brother (27/07/2010 15:20) разложить жесткий дйск на атомы – универсально самый безопасный способ (улыбка)
a shred sync использует ?
— Гость (27/07/2010 18:34)
a shred sync использует
Во всяком случае взаимодействие шреддинга и журналирования ФС (данных/метаданных) штука нетривиальная, и вызывала баталии при обсуждении.
— ГОСТЬ (09/12/2010 20:38) А как удалять каталоги с подкаталогами и файлами? shred хорошо удаляет отдельные файлы. Попробовал с каталогами, не пошло. Есть команда для удаления каталогов?
Наиболее часто в этом контексте упоминается dd, но многопроходную перезапись обычно проводят с помощью shred(1). shred здаётся мне вообще более удобным средством уничтожения как отдельных файлов, так и целого раздела. На моём Gentoo он является частью coreutils...
Снова таки, на shred нельзя полагаться в том случае, если ФС журналируема и настроена на журналирование всего содержимого файлов, а не только метаданных (режим data=journal в случае ext3), а также когда речь идёт о NFS или сжатых ФС. Про случай зеркалирования с помощью RAID, думаю, и упоминать не стоит :)
http://wipe.sourceforge.net/
http://freshmeat.net/projects/securedelete/
я предпочитаю последний
На рабочем столе KDE есть значок "шредер". Это и есть shred? Если нет то какой утилитой и алгоритмом при использовании этой опции осуществляется удаление информации с винчестера? Используется ли для этого GPG (насколько мне известно, поправьте если я не прав, в gpg нет команды типа "удалить безвозвратно" как в PGP команда shred или wipe). Хотя, открыв свойства ярлыка, я в описании увидел команду kgpg -X %U.
Вий,
Нет, shred – это консольная утилита, она всё сама делает без чьей-либо помощи.
Это у KGpg какой-то свой шредер есть. Но он, например, у меня не работает.
С систем файлов с журналом ничего бесследно удалить невозможно используя API файловой системы. Вообще, такое удаление может быть ненадежным даже в случае обычных файловых систем из-за реализации жесткого диска.
Альтернативы:
– Купить побольше памяти, и временные файлы держать в ОЗУ
– Физически уничтожить накопитель
– Шифровать на уровне блочного девайса
Провел эксперимент и обнаружил, что Shreder от Kgpg действительно не работает. Файл размером в 100 Мб удаляет за 1 секунду! И зачем его только таким делали? Только в заблуждение людей вводит.
Однако в нете обнаружил другую информацию[link1].
Затирание свободного места нулями (хотя это конечно не метод Гутмана) в разделе /home выглядит так:
Я давал команды с инструкцией sudo
Первая команда создает файл c именем bigfile, содержащий нули, на всем свободном пространстве раздела, т.е. фактически заливает все свободное место нулями.
Третья команда возвращает свободное место пользователям.
Команду sync представляю себе смутно :(
Более полная информация, в том числе по "слабым местам" приведена в статье.
Выполняет отложенные операции записи, сбрасывая данные из буферов файловой системы на физический носитель. Если из приведённого листинга опустить команды sync, то при большой ёмкости кэша ФС обе указанные операции (dd и rm) могут целиком пройти только в ОЗУ, не затронув жёсткий диск, т.е. фактически никакой перезаписи не произойдёт.
В debian существует средство для полной шифровки виртуальной памяти рандомным ключем на время жизни сессии: http://wejn.org/how-to-make-pa.....less-cryptsetup.html[link2]
dd if=/dev/urandom ...
Сегодня протестировал на время уничтожения файлов утилиту shred. Файл размером 208 МБ затирался около 2 минут. Интересно, какое количество проходов и какие комбинации бит используются в работе этой утилиты?
Кстати, удобно сделать кнопку запуска с подходящим изображением на рабочем столе, в этом случае просто перетаскивая файл на эту кнопку (как в корзину) мы отправляем файл на затирание.
Поторопился, не трет при повторном опробовании. Через консоль то же не хочет. Синтаксис команды правильный?
Разобрался, к команде shred нужно добавить параметр -u, т.е. команда выглядит так
Кнопка запуска на рабочем столе так же работает, однако на журналируемых ФС удаление файлов может иметь нюансы. Более подробно:
shred --help
или
man shred
Ответы известны:
По умолчанию 25 проходов, комбинации можно просмотреть, добавив параметр -v, количество проходов можно задать параметром -n
Без параметра -u файл только перезаписывается, но не удалается (используется для уничтожения данных разделов диска)
Пример – удаление файла name:
дает вывод:
shred: name: проход 1/10 (random)...
shred: name: проход 2/10 (000000)...
shred: name: проход 3/10 (6db6db)...
shred: name: проход 4/10 (ffffff)...
shred: name: проход 5/10 (555555)...
shred: name: проход 6/10 (random)...
shred: name: проход 7/10 (aaaaaa)...
shred: name: проход 8/10 (249249)...
shred: name: проход 9/10 (924924)...
shred: name: проход 10/10 (random)...
shred: name: удаление
shred: name: переименован в 0000
shred: 0000: переименован в 000
shred: 000: переименован в 00
shred: 00: переименован в 0
shred: name: удален
Я несколько раз давал эту команду в качестве эксперемента и обнаружил, что первый и последний проходы перезаписи всегда делаются случайными данными (random). А вот для чего после перезаписи делается несколько операций переименования уже перезаписанного файла мне не сосем ясно. Видимо для того, что бы замести следы его прошлого присутсвия на диске.
Обратил внимание, что утилита shred по умолчанию удаляет файлы 3-мя проходами random. Не помню откуда была информация, что по умолчанию используется 25 проходов, но оказалось, что это неверно. Для того, что бы сделать 25 проходов необходимо жестко задать параметр -n25.
Удобней сделать сделать файл в /usr/bin с таким, к примеру, содержанием
#!/bin/bash
sudo find -type f -execdir shred -fuvz -n 35 '{}' \;
sudo rm -rf *
Пользоваться этим удобно с помощью mc – зашел в нужную папку, переключился в консоль (ctrl-o) и запустил внутри директории этого шредера. Работает рекурсивно, изничтожит и файлы и папки.
разложить жесткий дйск на атомы – универсально самый безопасный способ (улыбка)
a shred sync использует ?
Во всяком случае взаимодействие шреддинга и журналирования ФС (данных/метаданных) штука нетривиальная, и вызывала баталии при обсуждении.
А как удалять каталоги с подкаталогами и файлами? shred хорошо удаляет отдельные файлы. Попробовал с каталогами, не пошло. Есть команда для удаления каталогов?
/comment7052[link3]