Итоговая система:
keiz@machine:/opt$ uname -a && cat /etc/issue
Linux machine 2.6.38-13-generic #54-Ubuntu SMP Tue Jan 3 13:38:12 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
Ubuntu 11.04 \n \l
Для начала нужно будет создать так называемый контейнер, в котором будут содержаться файлопапки, предназначенные для шифрования. Контейнером будет служить файл с произвольным названием или даже целый раздел диска (что довольно заманчиво). Для доступа к контейнеру обязательно нужно будет указать пароль (придумываете сами), а также можно сделать файл ключа (необязательная опция), с помощью которого будет шифроваться информация. Учтите сразу, что размер контейнера не резиновый, так что придётся подумать над его размером. И последнее: GUI для Truecrypt’а нет, поэтому весь процесс будет проходить в терминале.
Создаём файл ключа:
,где keiz@machine:~$ touch my_secret
– название файла – ключа. Учтите, что директория /home/keiz/test должна существовать.
keiz@machine:~$ truecrypt --create-keyfile /home/keiz/test/my_secret
Please type at least 320 randomly chosen characters and then press Enter: (процесс не быстрый)
Keyfile has been successfully created.
Создаём контейнер, в моём случае раздел:
Для справки:
Будьте аккуратны при выборе раздела, был печальный опыт, затер системный раздел
keiz@machine:~$ sudo truecrypt -k /home/keiz/test/my_secret -c /dev/sdd1
Вместо раздела /dev/sdd1 вполне можно указать и файл, например /home/keiz/test/my_secret, но в этом случае нужно будет указать его размер, это делается параметром --size=5G
до параметра -c
. В указанном примере создастся файл cryptofile размером 5 ГигаБайт. Иногда truecrypt принимает размер только в байтах, для 5 Гбайт можно или высчитать значение заранее и указать --size=5368709120
, или добавить немножко терминальной магии вот так: --size=`echo 1024^3*5 | bc`
.
Для «любителей» информатики: 1 ГБ = 1024 МБ, 1 МБ = 1024 кБ, 1 кБ = 1024 Байт.
[sudo] password for keiz: <указываем_пароль_root>
Следующим вопросом нам предложат выбрать тип контейнера (нормальный / скрытый),
Volume type:
1) Normal
2) Hidden
Select [1]: 1
Enter volume size (sizeK/size[M]/sizeG): 100M
Encryption algorithm:
Также предложат выбрать алгоритм шифрования (например, AES)
1) AES
2) Serpent
3) Twofish
4) AES-Twofish
5) AES-Twofish-Serpent
6) Serpent-AES
7) Serpent-Twofish-AES
8) Twofish-Serpent
Select [1]: 7
Hash algorithm:
а так же hash-алгоритм (например, SHA-1) для шифрования потоков данных.
1) RIPEMD-160
2) SHA-512
3) Whirlpool
Select [1]: 2
Filesystem:
Предложат указать тип создаваемой файловой системы.
1) None
2) FAT
3) Linux Ext2
4) Linux Ext3
5) Linux Ext4
Select [2]: 5
Enter password:
Error: Error: Password must contain only ASCII characters.
Non-ASCII characters in password might cause the volume to be impossible to mount when your system configuration changes.
The following characters are allowed:
! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \\ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w k y z { | } ~
Enter password:
WARNING: Short passwords are easy to crack using brute force techniques!
We recommend choosing a password consisting of more than 20 characters. Are you sure you want to use a short password? (y=Yes/n=No) [No]: y
Re-enter password:
Please type at least 320 randomly chosen characters and then press Enter:
Characters remaining: 139
Characters remaining: 139
Далее идет процесс создания (может быть как слишком быстрым на и долгим)
Пример:
Done: 100,000% Speed: 38 MB/s Left: 0 s
The TrueCrypt volume has been successfully created.
Цепляем шифрованный раздел/файл
keiz@machine:~$ truecrypt -k /home/keiz/test/my_secret /dev/sdd1
Enter mount directory [default]: /mnt/crypto
Enter password for /dev/sdd1:
Protect hidden volume (if any)? (y=Yes/n=No) [No]: n
Enter your user password or administrator password:
Через графический интерфейс это выглядит вот так:
Далее, чтобы что-то зашифровать, нужно теперь просто кинуть информацию в папку /mnt/crypto. А чтобы скрыть шифрованную информацию от чужих глаз, выполняем команду размонтирования, но с помощью Truecrypt’а:
keiz@machine:/mnt$ truecrypt -d
Enter your user password or administrator password:
Вот и всё, теперь без знания файла-ключа и пароля никто не сможет прочесть спрятанную информацию.
Чтобы проверить акт размонтирования, наберём:
Нам покажут примонтированные Truecrypt’ом контейнеры, если такие (примонтированные) имеются.
keiz@machine:/mnt$ truecrypt -v -l
Slot: 1
Volume: /dev/sdd1
Virtual Device: /dev/mapper/truecrypt1
Mount Directory: /mnt/crypto
Size: 99 MB
Type: Normal
Read-Only: No
Hidden Volume Protected: No
Encryption Algorithm: Serpent-Twofish-AES
Primary Key Size: 768 bits
Secondary Key Size (XTS Mode): 768 bits
Block Size: 128 bits
Mode of Operation: XTS
PKCS-5 PRF: HMAC-SHA-512
Volume Format Version: 2
Embedded Backup Header: Yes
Чтобы снова получить доступ к информации, подключим контейнер:
keiz@machine:/mnt$ truecrypt -k /home/keiz/test/my_secret /dev/sdd1 /mnt/crypto
Enter password for /dev/sdd1:
Protect hidden volume (if any)? (y=Yes/n=No) [No]: n
Enter your user password or administrator password:
Для проверки снова наберём:
keiz@machine:/mnt$ truecrypt -v -l
Настроим запуск программы truecrypt без запроса административного пароля root.
Sudo nano /etc/sudoers
keiz localhost=NOPASSWD:/usr/bin/truecrypt