Originally Posted by
platinummsk
Было бы отлично увидеть cryptsetup в репозитории))
Уболтали Cryptosetup добавлен в репозиторий. Ниже приведена краткая инструкция по его использованию. Учтите, что cryptsetup будет бесполезен, если у вас нет перечисленных ниже модулей ядра для вашей прошивки.
1. Подготавливаем файл-контейнер
Размер контейнера в примере 512Мб, текущая директория - на USB-носителе.
Code:
$ opkg install losetup cryptsetup
$ dd if=/dev/zero of=./crypto.img bs=1M count=512
$ insmod ./loop.ko
$ losetup /dev/loop1 ./crypto.img
Контейнер смонтирован как loop device в /dev/loop1. Для использования LUKS-шифрования его необходимо отформатировать:
Code:
$ insmod ./dm-mod.ko
$ insmod ./aes.ko
$ insmod ./sha256.ko
$ insmod ./dm-crypt.ko
$ cryptsetup -y --key-size 256 luksFormat /dev/loop1
2. Монтируем контейнер
Code:
$ cryptsetup luksOpen /dev/loop1 crypted
Напоминаю, что cryptsetup - это всего лишь user space надстройка, облегчающая использование dm-crypt. В примере был создан готовый к монтированию block device /dev/mapper/crypted.
3. Создаём на нём файловую систему
Всё как с жёстким диском:
Code:
$ mkfs.ext3 -j /dev/mapper/crypted
$ mkdir /tmp/crypted
$ mount /dev/mapper/crypted /tmp/crypted/
Всё! Можно использовать /tmp/crypted/ для хранения зашифрованных данных. Оценим производительность на RT-N66u (данные затираются!):
Code:
$ /opt/bin/dd if=/dev/zero of=/dev/mapper/crypted bs=1M count=510
510+0 records in
510+0 records out
534773760 bytes (535 MB) copied, 118,957 s, 4,5 MB/s
...при загрузке системы:
Code:
$ top
top - 20:11:29 up 5 days, 22:27, 0 users, load average: 1.06, 1.24, 0.73
Tasks: 82 total, 1 running, 81 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.7%us, 63.4%sy, 0.0%ni, 0.0%id, 34.3%wa, 1.3%hi, 0.3%si, 0.0%st
Mem: 255520k total, 230476k used, 25044k free, 32832k buffers
Swap: 0k total, 0k used, 0k free, 158712k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
26656 admin 11 -5 0 0 0 S 52.5 0.0 1:19.22 kcryptd/0
18037 admin 0 -20 0 0 0 S 5.6 0.0 0:00.49 loop1
18316 admin 17 0 2080 1384 1316 D 4.6 0.5 0:00.26 dd
Информацию о состоянии смонтированного криптоконтейнера можно посмотреть командой:
Code:
$ cryptsetup -y luksDump /dev/loop1
4. Окончание работы с контейнером
Надо просто всё размонтировать в обратном порядке:
Code:
$ umount /tmp/crypted/
$ cryptsetup luksClose crypted
$ losetup -d /dev/loop1
К посту приложены необходимые модули для стоковой/мерлиновской прошивки для Asus RT-N66u.