|
|||
| Разделы сайта | Cтатьи. |
Статистика сайта.
Посещений за день: 50 Баннеры. Статистика в картинках. |
|
|
|
Шифрование диска в (K)Ubuntu.
Данные в компьютерах обычно хранятся в открытом виде, как в Windows,
так и в Linux, что дает доступ к любой информации практически любому,
на нее покушающемуся (!) или так "случайному прохожему" или даже
неслучайному. Если вы хотите что-то скрыть от посторонних глаз, то эта
статья для вас - умеренных параноиков и пользователей (K)Ubuntu.
Особенно это касается владельцев ноутбуков (про массовые кражи все
читали).
sudo -i
apt-get install cryptsetup
echo aes >> /etc/modules
echo dm_mod >> /etc/modules
echo dm_crypt >> /etc/modules
swapoff -a
cryptsetup -d /dev/urandom create cryptoswap /dev/sda2
mkswap /dev/mapper/cryptoswap -L accessisdenied -v1
echo 'cryptoswap /dev/sda2 /dev/urandom swap' >> /etc/crypttab
В fstab заменить ваш swap на: /dev/mapper/cryptoswap none swap sw 0 0 Далее
dd if=/dev/urandom of=/dev/sda2 count=100
swapon -a
Дальше больше. Размещение в tmpfs
mv /tmp /ttmp
mkdir tmp
chmod 777 tmp
В /etc/fstab добавить:
tmpfs /tmp tmpfs rw,noexec,nosuid,nodev,mode=0777
Далее:
mv /var/tmp /var/ttmp
ln -s /tmp /var/tmp
Теперь помещаем в криптоконтейнер каталоги из /var
mkdir /home/.var
chmod 755 /home/.var
mv /var/spool/ /home/.var/spool
ln -s /home/.var/spool /var/spool
mv /var/mail /home/.var/mail
ln -s /home/.var/mail /var/mail
mkdir /home/.var/lib
chmod 755 /home/.var/lib
mv /var/lib/slocate /home/.var/lib/slocate
ln -s /home/.var/lib/slocate /var/lib/slocate
mv /var/log home/.var/log
ln -s /home/.var/log /var/log
Индексацию зашифрованных разделов нужно отключать, в файле /etc/updatedb.conf, в PRUNEPATHS добавить /home Затем перезагрузиться и удалить каталоги /ttmp, /var/ttmp Следующим этапом идет собственно шифрование раздела /home Я воспользовался руководством от MasterGnome, при этом переделав некоторые моменты, касающиеся инсталляции и форматирования. Для Ubuntu Feisty инсталляция несколько проще: Устанавливаем пакет Automatix2, если его у вас еще нет. Через Automatix устанавливаем TrueCrypt. Тестируем TC: if truecrypt --test &> /dev/null; then echo "Ok"; else echo "Error"; fi TrueCrypt позволяет создавать криптоконтейнеры как в разделах, так и в файлах, которые потом подключаются как разделы. Для замены одного другим в командах, достаточно поменять раздел (например /dev/sda3) на название файла (например home.tc). Truecrypt позволяет шифровать с использованием алгоритмов AES, Twofish, Serpent. Все три алгоритма очень надежны, и сейчас не существует даже теоретического способа взлома, кроме метода полного перебора. AES - выбран как правительственный стандарт в США Twofish - на процессоре AMD64 (linux kernel i386 2.6.20-16) самый быстрый. Опережающий AES в среднем на 20% Serpent - существенно медленнее остальных Заметил, что Twofish быстрее на AMD, а AES на Intel, причем на Intel Mobile оба алгоритма примерно равны. Вы можете выбрать любой из них, но я советую сначала протестировать на скорость на вашем компьютере. Используются хешовые функции RIPEMD-160,SHA-1 и Whirlpool. SHA-1 - появилась теоретическая возможность взлома, и хотя это скорее относится к письмам и цифровым подписям, не рекомендуется к применению. RIPEMD-160 - стоит по умолчанию. Для этого алгоритма даже теоретически взлом пока не возможен. Но вот его предшественник RIPEMD уже себя дискредитировал. Whirlpool - теоретически самая медленная, некоторые источники утверждают, что медленнее в 2-3 раза, чем остальные. Хотя мои тесты показали, что в TrueCrypt это не так. Как в Linux, так и в Windows XP отставание не более 5% от предыдущих. На сегодняшний момент самый стойкий алгоритм. И самый молодой. Можно использовать Whirlpool или RIPEMD-160. В TC есть возможность использовать каскады алгоритмов. Связка AES-Twofish вместе с Whirlpool и скрытый контейнер - это для суперсекретных данных ;) Прежде чем продолжить, сохраните где-нибудь папку /home. После этого, если у вас home расположен на отдельном разделе (пр. sda3), то его надо размонтировать: umount /home Для директории /home создадим внешний криптоконтейнер: truecrypt --encryption AES --type normal -c /dev/sda3 Файловую систему как None, любой алгоритм хэша, и два раза пароль. Потом: truecrypt /dev/sda3 Теперь форматирование контейнера: mkfs.ext2 -v /dev/mapper/truecrypt0 mount /dev/mapper/truecrypt0 /home Переписать туда сохраненный /home со всеми вашими данными. Не забудьте про .var из сохраненного /home и удалите там все файлы
umount /home
truecrypt -d
Вместо ext2 вы можете использовать и другую файловую систему: ext3, ReiserFS Truecrypt несомненно хорош и тем, что внутри зашифрованного контейнера можно спрятать еще один. Хотя в документации сказано, что внешний контейнер должен быть как FAT отформатирован, он прекрасно работает и с ext2. Но при превышении границы между контейнерами с ключом -P система не говорит об окончании места как в Windows, просто данные эти теряются. Журнал файловой системы автоматически размещается в криптоконтейнере. Теперь надо в загрузку вставить скрипт (спасибо тому же MasterGnome), который спрашивает пароль и монтирует:
cd /usr
wget http://privat.heinzelzwerg.de/howtos/debian -->>
-->> /truecrypt/tcbootscreen.tar.bz2
tar -xvjf tcbootscreen.tar.bz2
chown root:root /usr/tcbootscreen/*
chmod ugo+x /usr/tcbootscreen/*
chmod ugo-x /usr/tcbootscreen/tcscreen.tmp
chmod ugo-x /usr/tcbootscreen/main.log
И изменить во всех скриптах вместо #!/bin/sh надо везде #!/bin/bash, иначе в Ubuntu выдается ошибка с declare Теперь скопировать
mv /usr/tcbootscreen/tcbootscreen /etc/init.d/tcbootscreen
update-rc.d tcbootscreen defaults
В файле /usr/tcbootscreen/decrypt подставить свои значения для device и mountpoint >> |
||
| BitByByte, 2000 г. (2025). | |||