Авторские статьи Продвинутый способ шифрования разделов в Linux, или мной овладела паранойя.

Discussion in 'Статьи' started by BMaster, 19 Oct 2007.

  1. BMaster

    BMaster Elder - Старейшина

    Joined:
    12 Jan 2006
    Messages:
    32
    Likes Received:
    34
    Reputations:
    7
    Содержание

    Введение
    Постановка задачи
    1. Шифрование разделов
    1.1 Подготовим ядро Linux
    1.2 Переходим к шифрованию
    2. Загрузчик на usb флешке (grub)
    2.1 Подготовим флешку
    2.2 Переходим к загрузчику
    2.3 Автоматизация монтирования шифрованных разделов при загрузке
    2.4 Уничтожение загрузчика
    2.5 Шифрование swap раздела
    3. Паранойя
    3.1. Ставим на флешку линукс (Gentoo)
    3.2. Доводим дело до конца

    Введение

    Чтобы не тратить напрасно ваше время, отмечу сразу, что к Windows данная статья не имеет никакого отношения, все действия описаны исключительно для OS Linux.
    Со второго пункта описываются действия, для которых требуется иметь поддержку загрузки с hdd-usb или flash на материнской плате. Думаю сейчас это не проблема, даже моя не новая Gigabyte GA-8PE800-RS имеет поддержку загрузки с hdd-usb.

    Каждый рано или поздно начинает задумываться о безопасности своих данных. Эта статья именно для тех, кто уже задумался, либо задумается после ее прочтения.

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

    Имеется винчестер на котором установлена OS Linux, множество винчестеров с конфиденциальной информацией.
    Цель: Зашифровать конфиденциальные данные, сделать возможным загрузку OS только с usb флешки, затереть все следы "рабочего" жесткого диска.

    Определения принятые в этой статье:
    Основной винчестер - понимается винчестер, на котором установлена загружаемая OS Linux, под это определение попадает единственный в системе винчестер.
    Прочий винчестер - понимается второй, третий, либо любой другой, с которого не производится загрузка OS Linux.
    Раздел - если обозначается точкой монтирования (например: раздел /home/vasya), понимать как блочное устройство из /dev смонтированное в определенную точку монтирования. Иначе (например: раздел /dev/hda2), просто блочное устройство из /dev.
    Бэкап - копия данных, временно сохраненная на другом разделе, либо другом носителе информации.

    Все вводимые команды заключены в тег [code], если перед командой присутствует символ # - значит команда вводится с правами суперпользователя (root).

    1. Шифрование разделов

    Желательно на загрузочном винчестере отделить и зашифровать разделы /home и /var.
    На разделе /home находятся домашние папки пользователей, а следовательно все личные конфигурационные файлы, cookies браузеров, история оболочки bash (по умолчанию).
    На разделе /var могут находиться логи сервера apache, логи ftp сервера, системные логи, также там может находиться папка tmp. Папка tmp находится еще и в корневом разделе, поэтому желательно сделать симлинк /tmp на папку /var/tmp2 - чтобы шифровалось содержание обоих. Но симлинк лучше сделать с помощью LiveCD, предварительно удалив папку /tmp.

    Code:
    # rm -r /tmp
    # mkdir /var/tmp2 
    # ln -s /var/tmp2 /tmp
    
    1.1 Подготовим ядро Linux

    Необходимо, чтобы в ядре были включены следующие опции:

    Алгоритмы, которыми будем пользоваться необходимо собрать в ядре (*), остальные можно модулем (M).
    Пересобрать ядро просто:

    Code:
    # cd /usr/src/linux
    # make xconfig или make menuconfig
    # make && make modules_install
    # cp ./arch/i386/boot/bzImage /boot/bzImage
    
    В случае необходимости, подправить конфиг загрузчика. Об этом ниже.
    В случае возникновения вопросов по сборке ядра, всегда пожалуйста: Ставим ядро 2.6, или Ядерная физика для домохозяйки. Версия 2.0

    1.2 Переходим к шифрованию

    1. Для того чтобы зашифровать раздел, например hda2, необходимо сделать бэкап данных, т.к. текущие данные на разделе уничтожатся без возможности восстановления.
    2. После бэкапа данных с раздела, необходимо вполнить следующее:

    Code:
    # dd if=/dev/urandom of=/dev/hda2
    
    Теперь ждать, для больших объемов (раздел на 250Гб и более) эта операция может достигать нескольких суток, для небольших объемов (раздел 20-50 Гб) нескольких часов.
    Посмотреть прогресс можно так:

    Code:
    # kill -USR1 pid
    
    Здесь pid - цифровое значение.
    Узнать pid процесса dd можно так:

    Code:
    # ps ax|grep "dd if"
    
    Суть операции: забиваем раздел рандомным значением, т.е. мусором, для того чтобы нельзя было отличить какая часть раздела зашифрована.

    После выполнения этой операции приступаем непосредственно к шифрованию:

    Code:
    # losetup -e blowfish-128 -T /dev/loop0 /dev/hda2
    
    Здесь:
    blowfish-128 - алгоритм шифрования.
    T - параметр указывает на то, чтобы мы дважды ввели парольную фразу, т.е. повторили ее.
    /dev/hda2 - раздел который шифруем.
    /dev/loop0 - блочное устройство, к которому мы в дальнейшем должны обратиться чтобы получить доступ к зашифрованному разделу. По умолчанию ожно использовать от 0 до 7 петлевых устройств, при необходимости можно добавить еще, выполнив скрипт add_loop:

    Code:
    # chmod +x add_loop
    # ./add_loop
    
    За подробностями по команде losetup, можно обратиться к мануалу:

    Code:
    # man losetup
    
    Итак, ввели команду, придумали парольную фразу - минимум 20 символов, чтобы не ошибиться ввели ее дважды. Все. Теперь можно работать с зашифрованным разделом.
    Создадим на нем файловую систему:

    Code:
    # mkfs.ext3 /dev/loop0
    
    Здесь мы указываем /dev/loop0 - блочное устройство которое связано с нашим разделом /dev/hda2. Про /dev/hda2 можно забыть, теперь все операции осуществляем только с /dev/loop0.

    Монтируем:

    Code:
    # mkdir /mnt/crypt_part
    # mount /dev/loop0 /mnt/crypt_part
    
    Теперь открываем любимый файловый менеджер, либо просто консольной командой cp возвращаем предварительно сохраненный бекап на место. Т.е. копируем данные:

    Code:
    # cp -rp /mnt/backup/* /mnt/crypt_part
    
    /mnt/backup - папка в которой был сохранен бэкап.

    Все, данные надежно защищены.
    Как проверить?
    Например консольным hex редактором hexedit:

    Code:
    # hexedit /dev/loop0
    
    Увидим вначале нули, что свойственно файловой системе ext3.
    Теперь посмотрим на сам раздел:

    Code:
    # hexedit /dev/hda2
    
    Увидим кучу мусора, неотформатированное пространство, что-то неизвестное, и самое главное - никаких признаков наличия зашифрованных данных. Просто обыкновенный мусор, который неизвестно откуда и как образовался :)

    После того как все скопировали, если не собираемся пользоваться этим разделом до лучших времен, просто делаем следующее:
    a) Отмонтируем его

    Code:
    # umount /dev/loop0
    
    b) И удалим связь /dev/loop0 с /dev/hda2

    Code:
    # losetup -d /dev/loop0
    
    Все. Сохранив парольную фразу в надежном месте, можно не волноваться за свои данные.
    Проверка:

    Code:
    # hexedit /dev/loop0
    
    Увидим что файл пуст.
    Теперь посмотрим на сам раздел:

    Code:
    # hexedit /dev/hda2
    
    Таже куча мусора что и была.

    Как только появится необходимость поработать со своими данными, повторяем:

    Code:
    # losetup -e blowfish-128 -T /dev/loop0 /dev/hda2
    # mount /dev/loop0 /mnt/crypt_part
    
    Работаем, закрываем все:

    Code:
    # umount /dev/loop0
    # losetup -d /dev/loop0
    
    Но этот способ хорош в том случае, если мы работаем с зашифрованным разделом крайне редко. О том как автоматизировать процесс монтирования зашифрованных разделов при загрузке, написано в следующей части статьи.

    2. Загрузчик на usb-flash

    Понятие шифрованный раздел /dev/hdXX - означает то, что для этого раздела вы проделали операцию шифрования, описанную в первой части статьи.

    Постановка задачи

    Имеется один или несколько винчестеров содержащие шифрованные разделы, обыкновенная usb флешка более 5 Мб :)
    Цель: Затереть загрузчик на загрузочном винчестере, автоматизировать монтирование шифрованных разделов.

    Рассмотрим следующий пример:

    Имеется флешка на 1 Гб.

    Имеется загрузочный винчестер 60Гб с зашифрованными разделами:
    /dev/hda3 - точка монтирования /var
    /dev/hda4 - точка монтирования /home
    /dev/hda6 - точка монтирования /mount/crypt_data

    Не зашифрованные разделы (эти разделы не будут иметь никакого отношения к дальнейшим манипуляциям):
    /dev/hda1 - корневой раздел /
    /dev/hda5 - точка монтирования /mount/opensource_files

    Имеется прочий винчестер 120Гб с двумя зашифрованными разделами:
    /dev/hdb1 - точка монтирования /mount/1
    /dev/hdb2 - точка монтирования /mount/2

    2.1 Подготовим флешку

    Все usb флешки определяются в системе как sata устройства, т.е. /dev/sdXX.
    Работа с ними аналогична работе с жестким диском.

    В нашем примере флешка доступна при обращении к блочному устройству /dev/sda.
    Разобьем ее на 2 раздела: sda1 = 20Мб и sda2 = остальное пространство.

    В случае, если на ней имеются другие разделы, то удалить их можно командой d:

    Code:
    Command (m for help): d
    Partition number (1-4): 1
    
    Command (m for help): d
    Selected partition 2
    
    Command (m for help): p
    
    Disk /dev/sda: 1027 MB, 1027603456 bytes
    32 heads, 62 sectors/track, 1011 cylinders
    Units = cylinders of 1984 * 512 = 1015808 bytes
    
       Device Boot      Start         End      Blocks   Id  System
    
    Command (m for help):
    
    А теперь создадим разделы:

    Code:
    # fdisk /dev/sda
    
    Command (m for help): n
    Command action
       e   extended
       p   primary partition (1-4)
    p
    Partition number (1-4): 1
    First cylinder (1-1011, default 1):
    Using default value 1
    Last cylinder or +size or +sizeM or +sizeK (1-1011, default 1011): +20M
    
    Command (m for help): n
    Command action
       e   extended
       p   primary partition (1-4)
    p
    Partition number (1-4): 2
    First cylinder (22-1011, default 22):
    Using default value 22
    Last cylinder or +size or +sizeM or +sizeK (22-1011, default 1011):
    Using default value 1011
    
    Command (m for help):
    
    В итоге:

    Code:
    Command (m for help): p
    
    Disk /dev/sda: 1027 MB, 1027603456 bytes
    32 heads, 62 sectors/track, 1011 cylinders
    Units = cylinders of 1984 * 512 = 1015808 bytes
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1               1          21       20801   83  Linux
    /dev/sda2              22        1011      982080   83  Linux
    
    Command (m for help):
    
    После чего сохраняем таблицу разделов:

    Code:
    Command (m for help): w                                     
    
    Создадим на всех разделах файловую систему ext3:

    Code:
    # mkfs.ext3 /dev/sda1
    # mkfs.ext3 /dev/sda2
    
    2.2 Переходим к загрузчику

    Предполагается что grub у вас установлен в системе.
    Скопируем папку /boot/grub на раздел /dev/sda1, предварительно смонтировав его в /mount/f1:

    Code:
    # mkdir /mount/f1
    # mount /dev/sda1 /mount/f1
    # cp -r /boot/grub /mount/f1
    
    Подправим наш файл конфигурации grub:

    Code:
    # nano -w /mount/f1/boot/grub/grub.conf
    
    Хеш пароля можно сгенерировать так:

    Code:
    # grub
        GNU GRUB  version 0.97  (640K lower / 3072K upper memory)
    
     [ Minimal BASH-like line editing is supported.  For the first word, TAB
       lists possible command completions.  Anywhere else TAB lists the possible
       completions of a device/filename. ]
    
    grub> md5crypt
    
    Password: ******
    Encrypted: $1$uRKm8$2TToFr6o/wDpC54hBaBTo/
    
    grub> quit
    
    При выборе в списке LINUX, необходимо ввести пароль qqqqqq, для загрузки Windows в меню необходимо нажать "p" и ввести пароль 123456. За это отвечает опция lock.

    Чтобы загрузка системы протекала с разрешением экрана 1024x768, к опциям загрузчика добавлена строка: video=vesafb:1024x768 , но необходимо чтобы в ядре была включена поддержка Frame Buffer:

    Теперь произведем установку загрузчика на /dev/sda:

    Code:
    # grub
    
    grub> root (hd<TAB>
     Possible disks are:  hd0 hd1 hd2
    
    grub>root (hd2,0)
    grub>setup (hd2)
    grub>quit
    
    Все, загрузчик установлен. Здесь, hd2 - наша флешка, 0 - первый раздел, тот где находится /boot на флешке - /dev/sda1.
    В биосе поставьте загрузку с usb-hdd либо непосредственно с flash, если ваша м/п поддерживает эту опцию.
    Ядро можно разместить и на флешке, но т.к. оно считывается с flash довольно долго (зависит от размера ядра), я оставил его на винчестере.
     
    12 people like this.
  2. BMaster

    BMaster Elder - Старейшина

    Joined:
    12 Jan 2006
    Messages:
    32
    Likes Received:
    34
    Reputations:
    7
    2.3 Автоматизация монтирования шифрованных разделов при загрузке

    Итак, имеем несколько зашифрованных разделов и флешку с загрузчиком.
    Необходимо сделать, чтобы при загрузке шифрованные разделы монтировались, иначе, если /var зашифрован и его не подмонтировать вовремя, система может не загрузиться.
    Рассмотрим два варианта монтирования зашифрованных разделов:

    1) Вариант не безопасный.

    Вернемся к примеру:
    /var - /dev/hda3
    /home - /dev/hda4

    Редактируем файл /etc/fstab

    Code:
    /dev/hda3		/var	           ext3		rw,loop=/dev/loop3,encryption=blowfish-256 0 0
    /dev/hda4		/home       	ext3		rw,loop=/dev/loop4,encryption=blowfish-256 0 0
    
    Подразумевается что /dev/hda3 и /dev/hda4 зашифрованны алгоритмом blowfish-256.
    После загрузчика, как только система дойдет до монтирования разделов, для того чтобы примонтировать hda3 и hda4, необходимо будет ввести парольную фразу.
    Как правило, фразу с символами различного регистра и длинной более 20 держать в голове не просто, особенно если этих фраз около 7-20. Поэтому вы должны будете каждый раз вводить ее с листочка, а соответственно кто-то может узнать вашу фразу "из-за плеча".

    2) Вариант безопасный. Монтирование с помощью скомпилированной программы, которая расположена на флешке.

    Создадим файл amount.cpp :

    И скомпилируем его:

    Code:
    # g++ ./amount.cpp
    
    Получим файл a.out
    Переименуем его в amount

    Code:
    # mv ./a.out ./amount
    
    12345678901234567890 - парольная фраза как для hda3 так и для hda4.
    12345678901111111111 - парольная фраза как для hda6 так и для hdb1.
    12345678901111111111 - парольная фраза для hdb2.

    Скопируем файл amount на флешку, на раздел sda1:

    Code:
    # cp amount /mount/f1
    
    Теперь добавим в /etc/fstab автомонтирование флешки:

    Code:
    /dev/sda1		/mount/f1	auto		ro		0 0
    
    Теперь создадим еще один файл amount, но с другим содержанием.
    Отмонтируем флешку и создадим файл: amount1.cpp

    Code:
    # umount /mount/f1
    
    Содержание файла amount1.cpp:

    Скомпилируем его и получим файл amount, после чего скопируем его в /mount/f1:
    Внимание! Здесь /mount/f1 всего лишь папка на винчестере.

    Code:
    # cp amount /mount/f1
    
    Внимание! Здесь наверное единственно место, где могут возникнуть трудности. Я опишу изменение конфигурационного файла только для систем Gentoo и Ubuntu.
    Для того чтобы сразу после монтирования всех разделов указанных в /etc/fstab (соответственно и после монтирования нашей флешки /dev/sda1 в /mount/f1), выполнить программу amount которая находится на флешке, и тем самым продолжить монтирование зашифрованных разделов:

    Для Gentoo:
    Отредактируем файл /etc/init.d/localmount:

    Просто добавили в конец файла перед закрывающейся скобкой одну строчку.

    Для Ubuntu:
    Создадим в папке /etc/init.d/ файл mountcrypt

    Code:
    # nano -w /etc/init.d/mountcrypt
    
    Следующего содержания:

    Сделаем его исполняемым:

    Code:
    # chmod +x /etc/init.d/mountcrypt
    
    Добавим его в runlevel для выполнения сразу после localmount:

    Code:
    # ln -s /etc/init.d/mountcrypt /etc/rcS.d/S35mountcrypt
    
    В случае, если мы после загрузчика и начала загрузки ядра извлекаем флешку, то вместо программы amount, которая находится на флешке и должна монтировать разделы, выполнится программа amount, которая находится на жестком диске, и соответственно монтироваться ничего не будет, появится надпись "Hi, i'am bug :)", но система продолжит грузится, в итоге исход будет неудачным.

    2.4 Уничтожение загрузчика

    Уничтожим загрузчик на /dev/hda:

    Code:
    # dd if=/dev/urandom of=/dev/hda bs=446 count=1
    
    2.5 Шифрование swap раздела

    Для этого необходимо установить пакет loop-aes и в /etc/fstab подредактировать строку swap раздела:

    где /dev/hda7 - swap раздел

    3. Паранойя

    Цель: установить на раздел /dev/sda2 Linux.
    Для чего: чтобы восстанавливать постоянно удаляющуюся при выключении таблицу разделов на винчестере.

    Себе я разумеется для флешки выбрал Gentoo Linux :)
    Но существует много готовых дистрибутивов для флешек, нам всего лишь потребуется наличие команды dd и правильное определение жестких дисков. С этим проблем быть не может.

    Если кто-то захочет поставить себе на флешку Gentoo, опишу как это делается.

    3.1 Ставим Gentoo Linux на флешку в 1Гб

    Потребуется:
    Архив со stage, для моей архикектуры это: stage3-i686-2007.0.tar.bz2
    Снапшот портежей: portage-20070918.tar.bz2
    Исходники ядра: linux-2.6.22.tar.bz2
    И разумеется линукс с компилятором, подойдет даже LiveCD.
    Скачать все файлы можно с любого из зеркал gentoo, например с http://gentoo.osuosl.org
    Скачаем и разместим эти файлы в /mount/opensource_files, где /mount/opensource_files - папка корневого раздела, либо точка монтирования одного из разделов, если установка протекает с LiveCD, то в эту папку необходимо примонтировать раздел жесткого диска:

    Code:
    # mkdir /mount
    # mkdir /mount/opensource_files
    # mount /dev/hda5 /mount/opensource_files
    
    Смонтируем /dev/sda2 в /mount/f2 и начнем установку

    Code:
    # mkdir /mount/f2
    # mount /dev/sda2 /mount/f2
    # cd /mount/f2
    # tar -xvjpf /mount/opensource_files/2007.0/stage3-i686-2007.0.tar.bz2
    # tar -xvjf /mount/opensource_files/portage-20070918.tar.bz2 -C /mount/f2/usr
    # mkdir /mount/f2/distfiles
    # mount -o bind /mount/opensource_files /mount/f2/distfiles
    # mount -o bind /mount/opensource_files /mount/f2/usr/src
    
    Внимание!
    # mount -o bind /mount/opensource_files /mount/f2/distfiles
    # mount -o bind /mount/opensource_files /mount/f2/usr/src
    Эти команды монтируют папку /mount/opensource_files в папки /mount/f2/distfiles и /mount/f2/usr/src для того, чтобы использовать место для скачки файлов и дальнейшей распаковки ядра не на флешке, а на винчестере, иначе объема флешки может не хватить.

    Теперь чрутнимся, и продолжим:

    Code:
    # chroot /mount/f2 /bin/bash
    # emerge -pvf gentoo-sources
    
    Команда emerge -pvf gentoo-sources выдаст нам ссылки на нужные файлы, т.к. ядро уже скачено, останется скачать несколько патчей, скачаем их самостоятельно и скопируем в /mount/opensource_files.

    Идем дальше:

    Code:
    # env-update
    # source /etc/profile
    # ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime
    # emerge -pv gentoo-sources
    # emerge gentoo-sources
    # cd /usr/src/linux && make menuconfig
    
    Необходимо сконфигурировать и собрать ядро. Для того, чтобы загрузить линукс с флешки, в ядре должны быть включены следующие опции:

    По желанию можно сделать ядро монолитным, т.е. все опции соберутся непосредственно в ядро, модулей не будет:

    Просто отключим следующее:

    В случае, если ядро монолитное, далее выполняем:

    Code:
    # make
    # cp ./arch/i386/boot/bzImage /boot
    
    Если не монолитное (с поддержкой модулей) то выполняем:

    Code:
    # make && make modules_install
    # cp ./arch/i386/boot/bzImage /boot
    
    Последние штрихи:

    Редактируем /etc/fstab:

    Code:
    # nano -w /etc/fstab
    
    Если убрать все комментарии, то получим:

    Code:
    /dev/uba2             /                    ext3            noatime         0 1
    /dev/cdrom           /mnt/cdrom      audo           noauto,ro       0 0
    /dev/fd0               /mnt/floppy     auto            noauto          0 0
    shm                     /dev/shm        tmpfs           nodev,nosuid,noexec     0 0
    
    /dev/uba2 - именно так в ядре определяется наш второй раздел на флешке.

    Теперь установим пароль root и выйдем из chroot среды:

    Code:
    # passwd
    New UNIX password:
    BAD PASSWORD: it does not contain enough DIFFERENT characters
    Retype new UNIX password:
    passwd: пароль успешно обновлён
    # exit
    
    Изменим конфиг grub, который находится на /dev/sda1
    Добавим в конец следующие строки:

    На этом установка Gentoo Linux на флешку завершена. За всеми подробностями, а также за послеустановочной настройкой, если вам это потребуется, обращайтесь Gentoo Handbook

    А теперь самое интересное.

    3.2 Имитация не рабочего винчестера

    Создадим копию первых 512 байт с раздела hda:

    Code:
    # dd if=/dev/hda of=/mount/f2/image_hda bs=512 count=1
    
    Копию байт разместим на флешке в файле image_hda.

    В Gentoo в файл /etc/conf.d/local.stop добавляем:

    В Ubuntu создадим в папке /etc/init.d/ файл destroy

    Code:
    # nano -w /etc/init.d/destroy
    
    Следующего содержания:

    Сделаем его исполняемым:

    Code:
    # chmod +x /etc/init.d/destroy
    
    Добавим его в runlevel для выполнения при выключении:

    Code:
    # ln -s /etc/init.d/destroy /etc/rc6.d/K03destroy
    
    Т.е. при выключении первые 512 байт будут забиваться рандомом. И соответственно таблица разделов от 446 до 512 байт тоже. Определить где начинается какой раздел, да еще если половина из них зашифрована, будет практически невозможно. И всегда с гордостью можно заявить, что винчестер не рабочий, он был отфортирован, были удалены разделы...

    Правда вот загрузка несколько усложняется, сначала необходимо загрузить с флешки линукс, и выполнить:

    Code:
    # dd if=/image_hda of=/dev/hda
    # reboot
    
    А после грузить с флешки основную систему.

    Отмонтируем все разделы с которыми работали:

    Code:
    # mount /mount/opensource_files /mount/f2/distfiles
    # mount /mount/opensource_files /mount/f2/usr/src
    # umount /dev/sda1
    # umount /dev/sda2
    
    В случае, если какой-то из разделов откажется отмонтироваться, вычисляем процесс которым он занят, и убиваем его:

    Code:
    # fuser -u -m /dev/sda1
    # kill PID
    
    На этом все.

    p.s. Заранее извиняюсь за ошибки, неточности, очепятки. За потерю данных, при выполнении действий описанных в этой статье, ответственности не несу.
    p.p.s. Спасибо за найденную ошибку, разумеется count=1, исправил. http://www.linux.org.ru/jump-message.jsp?msgid=2215881&cid=2216553

    © BMaster
     
    #2 BMaster, 19 Oct 2007
    Last edited: 21 Oct 2007
    1 person likes this.
  3. sergio_nsk

    sergio_nsk New Member

    Joined:
    22 Oct 2007
    Messages:
    1
    Likes Received:
    1
    Reputations:
    0
    Я на 100% не уверен, но слышал, что Linux считывает таблицу разделов всего один раз при загрузке. Следовательно, затирать таблицу разделов можно сразу после удачной или не удачной загрузки операционной системы. Это снижает вероятность сохранения на диске таблицы разделов при пропадании или экстренном отключении электропитания и просто после нажатия кнопки reset.
     
    1 person likes this.
  4. drive_pan

    drive_pan Elder - Старейшина

    Joined:
    18 Oct 2007
    Messages:
    178
    Likes Received:
    78
    Reputations:
    5
    Хорошая статья. +4 Но не надо быть на столько параноиком.
     
  5. [Paran0ik]

    [Paran0ik] Elder - Старейшина

    Joined:
    22 Dec 2006
    Messages:
    219
    Likes Received:
    145
    Reputations:
    16
    быть параноиком никогда не помешает, на след неделю буду ставить сибе линь :)
    +
     
    1 person likes this.
  6. genom--

    genom-- Elder - Старейшина

    Joined:
    9 Jul 2006
    Messages:
    668
    Likes Received:
    416
    Reputations:
    288
    я сижу хоть и под виндой -- но у меня тоже весь раздел с софтом и скриптами etc.. зашифрован -- помойму немного толсто написал -- но зачет ничего статейка
     
  7. Zitt

    Zitt Elder - Старейшина

    Joined:
    7 May 2006
    Messages:
    736
    Likes Received:
    268
    Reputations:
    59
    Шифрования никогда не было лишним.... Если есть что скрывать, то надо это шифровать..=))
     
  8. fYt

    fYt Elder - Старейшина

    Joined:
    11 Jan 2007
    Messages:
    54
    Likes Received:
    36
    Reputations:
    7
    Хорошая статья, но удобнее взять тот же truecrypt....
     
  9. BMaster

    BMaster Elder - Старейшина

    Joined:
    12 Jan 2006
    Messages:
    32
    Likes Received:
    34
    Reputations:
    7
    Да не удобнее. Зачем монтировать разделы через TC, если можно обойтись без него, используя тот же losetup.
    Truecrypt это всего лишь некая "оболочка" к dm-crypt и loopback.
     
  10. DisturbeR

    DisturbeR Elder - Старейшина

    Joined:
    11 Mar 2006
    Messages:
    95
    Likes Received:
    40
    Reputations:
    25
    Ну не буду спорить о степенях пароноидальности...
    На ноуте при установке я сразу выбрал шифрование разделов и не стал искать лишних приключений на голову. Даже попсовая убунта при установке предлагает сразу выбрать и зашифровать все окромя boot :) Так что с одной стороны прочитал с интересом с другой – зачем такие сложности?
     
  11. Namelles One

    Namelles One Elder - Старейшина

    Joined:
    8 Jul 2005
    Messages:
    43
    Likes Received:
    14
    Reputations:
    19
    Хммм... Описано все очень грамотно и красиво, спорить не буду...

    Но, возникает один, на мой взгляд, достаточно резонный вопрос - а какая реальная ценность подобного метода/
    То есть - пришли, к примеру, ко мне менты. Флэшка с Гентой - в кармане, логично, что они её не найдут там (доказано, личный обыск при конфискации компа не проводится).
    Итак. скоммуниздили они мой ноут. Хотя бы примерно - какой процент вероятности, что они восстановят инфу?
     
  12. ground_zero

    ground_zero Elder - Старейшина

    Joined:
    11 Oct 2006
    Messages:
    398
    Likes Received:
    85
    Reputations:
    5
    lol кем доказано ? если у них есть ордер на обыск и изьятия чеволибо из твоей квартиры ... ТЕБЯ ОНИ ОБЫЩЮТ В ПЕРВУЮ ОЧЕРЕДЬ ! у них такие правила внутренние ... чтобы ты несмог оказать сопротивления .

    а статья на самом деле интересная .