Самое время это сделать.
Да, статья посвящена в первую очередь владельцам ноутбуков, которые не хотят, чтобы их данные были прочитаны третьими лицами.
Для начала приготовим к процедурам жесткий диск: разобьем его.
Я сделал это так:
- /dev/sda1 swap 1.2GiB
- /dev/sda2 reiserfs 12GiB
- /dev/sda3 reiserfs 4GiB
Сразу отвечаю почему я разметил все разделы в reiserfs. Это шустрая fs, она быстро работает с маленькими файлами, очень удобно для ноутбуков. Но если вы собираетесь хранить фильмы и большие изображения, или музыку в корневом разделе, то советую разметить этот раздел в ext3, но лучше создать отдельный раздел для таких вещей, например /dev/sda4/ ext3 36GiB
/dev/sda1 весит 1.2 Гигабайта, так как я программирую под СУБД Oracle, она требует не меньше гига свопа, но Вы можете создать своп с 700мб памяти
В /dev/sda2 будет лежать наша будущая зашифрованная системы, в которой будут храниться Ваша почта (Evolution, Icedove, Thunderbird), кэш браузера (Epiphany, Iceweasel, Firefox), логи мессенджеров (Pidgin, GAIM, jabber, psi) и прочая конфиденциальная информация, которую сможет прочитать только владелец ноутбука
/dev/sda3 будем использовать как временную fs
О том, что разделы на жестком диске бывают активными, основными и логическими я не буду рассказывать рецепты - солите, перчите, гуглите (что-то мне подсказывает, что можно использовать панель поиска с надписью Google на блоге сверху). Могу только предупредить что ОС возможно установить только в основной раздел.
Итак, установите Debian или Ubuntu на раздел /dev/sda3 с минимальной конфигурацией (без Окружения или server версию), потом Вы сможете установить иксы X11, офисные и прочие пакеты. Как правильно установить Debian?
Загрузитесь в свежеустановленную систему.
Далее все танцы с бубном будут производится от root'а, поэтому:
~$ su -
Устанавливаем дополнительные пакеты
~# aptitude install cryptsetup reiserfsprogs
cryptsetup - инструмент для управления модулем dm-crypt
dm-crypt - модуль ядра, входит в его состав linux начиная с версии 2.6.4
~# mkdir /media/sda2
~# mount /dev/sda2 /media/sda2
создайте в /media/sda2 любой файл с любым содержанием
можно заполнить диск произвольным методом
~# if=/dev/urandom of=/dev/sda2
Криптуем
~# cryptsetup -y create root /dev/sda2
dm-crypt отобразит зашифрованный диск в /dev/mapper/root
Поскольку это блочное устройство мы просто его форматируем как жесткий диск
~# mkfs -t reiserfs /dev/mapper/root
Перед тем как скопировать временный дистрибутив с диска /dev/sda3 нужно смонтировать его в удобном месте и скопировать в зашифрованную fs (/dev/mapper/root)
~# mkdir /mnt/enc_fs
~# mount /dev/mapper/root /mnt/enc_fs/
нужно изменить порядок загрузки, начнем с fstab
~# nano /etc/fstab
/dev/mapper/root / reiserfs defaults,errors-ro 0 1
~# nano /etc/crypttab
root /dev/sda2 none cipher=aes-cbc-essiv:sha256
[
~# nano /etc/kernel-img.conf
ramdisk = /usr/sbin/mkinitrd
]
~# cp -axv / /mnt/enc_fs
переходим к зашифрованной файловой системе
~# chroot /mnt/enc_fs /bin/bash
монтируем файловые системы ядра
~# mount sysfs /sys -t sysfs
~# mount proc /poc - proc
[~# mount /dev/sda2 /boot]
добавляем следующие строки в /etc/mkinitrd/modules
sha256
aes_i586
~# nano /boot/grub/menu.lst
kopt=root=/dev/mapper/root devfs=mount ro
~# dpkg-reconfigure linux-image-2.6.18.4-686
Вот и всё. Для восстановления разделов пользуйте утилиты gpart и testdisk
3 комментария:
Статься очень хорошая - думаю, что наконец сделаю себе шифрованный диск со всеми паролями и прочими конфиденциальными вещами. Спасибо!
@virens
Вообще все оказывается намного банальнее. При установке системы в разделе разбивки диска есть пункт "Использовать весь диск с шифрованием данных LVM". Повторяет всю суть статьи, но не требует усилий от пользователя.
root /dev/sda2 none cipher=aes-cbc-essiv:sha256
Truecrypt-овцы когда то писали, что CBC-block mode дескать не очень надежен, и поэтому использовали сначала LRW, а сейчас XTS-block mode. Как их использовать в данном примере (если ядро их уже поддерживает - LRW in 2.6.20 and XTS in 2.6.24)?
Отправить комментарий