LINUX.ORG.RU

Монтирование образа шифрованного раздела


0

0

Человеки подскажите. Делал кто-нибудь такое лично. Был раздел зашифрованный LUKS,был сделан образ, винт умер. Возможно ли монтирование образа и чтение данных (негде развернуть образ).Парольная фраза есть. Заранее спасибо.

Ответ на: комментарий от obitatel

1. Смонтировать файд-образ через loop устройство
  losetup /dev/loop0 /полный_путь_к_файлу_образа
2. Если внутри образа единственный раздел, установить защищенное отображение
  cryptsetup luksOpen /dev/loop0 loop0
2а. если внутри образа шифрованный раздел начинается не с самого
 начала, выяснить смещение нужного раздела с помощью fdisk
  fdisk /dev/loop0
  u (смена единиц измерения на сектора)
  p (печать таблицы разделов)
(записать смещение шифрованного раздела от начала)
  установить отображение с опцией --offset
  cryptsetup luksOpen --offset записанное_смещение_от_начала_образа /dev/loop0 loop0
3. Смонтировать ФС на чтение:
mount -t auto /dev/mapper/loop0 /mnt/Мой_образ

Примечания: если в действительности внутри образа есть еще тома LVM,
 то ситуация более трудная (описывать не буду)

Полезное чтиво:
man losetup
man fdisk
man cryptsetup

annoynimous ★★★★★
()
Ответ на: комментарий от Deleted

Пробовал пишет неизвестная файловая система. Вначале монтирование sudo mount /media/alles/120GB/data.img /media/loop -o loop Пишет mount: you must specify the filesystem type Делаешь sudo mount /media/alles/120GB/data.img /media/loop -o loop -t ext3 Выдает: mount: wrong fs type, bad option, bad superblock on /dev/loop2, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so. Я так думаю что только после монтирования образа. уже пыжится надо с losetup, Пробовал losetup -e aes-256 /dev/loop0 /media/alles/120GB/data.img Запрашивает пароль вводишь, пишет Error: Password must be at least 20 characters. Вообще думаю что через cryptsetup надо, а не losetup. Я там LUKS использовал

obitatel
() автор топика
Ответ на: комментарий от annoynimous

losetup /dev/loop3 /media/alles/120GB/data.img cryptsetup luksOpen /dev/loop3 loop3 Enter LUKS passphrase: key slot 0 unlocked. Command failed: Invalid offset

Спасибо за наводку со смещением, буду добивать.

obitatel
() автор топика
Ответ на: комментарий от annoynimous

По поводу пункта 2а: fdisk выдал

Disk /dev/loop2: 97.7 GB, 97658749440 bytes

255 heads, 63 sectors/track, 11873 cylinders, total 190739745 sectors

Units = sectors of 1 * 512 = 512 bytes

Disk identifier: 0xefe78b26.

Вопрос так как узнать смещение?

obitatel
() автор топика
Ответ на: комментарий от annoynimous

Есть еще один образ так при просмотре содержимого, там с самого начала в перемешку с кракозябрами

LUKS Aaes cbc-essi$ 4a864801-eb78-4f35-9238-2f8aadce6761.

А у того что пытаюсь восстановить, этого нет.

Правда один раздел весит 1 Мб, другой 98 Гб (все с одного винта).

Наличие записи идентификации раздела в первых секторах на зашифрованных дисках обязательно? Возможно ли что маленький раздел как то инициирует большой или как ключ работает. Сразу скажу ключи не создавал, была только парольная фраза.

Спасибо.

obitatel
() автор топика
Ответ на: комментарий от annoynimous

Сделал

cat /media/alles/120GB/data.img |grep cbc-essiv:sha256

cat /media/alles/120GB/data.img |grep cbc-essiv:sha

По нулям.

Может образ раздела битый? (все ж с умирающего девайса делал образ)

obitatel
() автор топика
Ответ на: комментарий от annoynimous

Сделал

cat /media/alles/120GB/data.img |grep cbc-essiv:sha256

cat /media/alles/120GB/data.img |grep cbc-essiv:sha

По нулям.

Может образ раздела битый? (все ж с умирающего девайса делал образ)

obitatel
() автор топика
Ответ на: комментарий от obitatel

Я же сказал как: нажать p (печать таблицы разделов, если они там есть). Просто прочтите внимательно то, что я написал

annoynimous ★★★★★
()
Ответ на: комментарий от obitatel

Надо было инит-скрипты сохранить, которые монтировали образ. Если сохранились -- смотреть по ним, как он монтировался и делать так же.

Xenius ★★★★★
()
Ответ на: комментарий от obitatel

LUKS-раздел начинается с записи "LUKS". Так что если у тебя "LUKS Aaes cbc-essi$ 4a864801-eb78-4f35-9238-2f8aadce6761" находится по смещению 123456, то

losetup -o 123456 /dev/loop0 /root/data.img
cryptsetup luksOpen /dev/loop0 data

pupok ★★
()
Ответ на: комментарий от pupok

А если строки "LUKS" нет -- значит это не LUKS диск, или ты уже LUKS-header запорол -- тогда можешь смело выбрасывать, dm-crypt ключи хранились именно в этом header'е.

pupok ★★
()
Ответ на: комментарий от obitatel

важна только строка "LUKS" и её offset (все остальные параметры шифрования должны быть прописаны в самом header'е, и это не обязательно aes). Она находится в самом начале LUKS-раздела. Узнай точный offset этой строки (а именно буквы "L") и сделай как я сказал.

pupok ★★
()
Ответ на: комментарий от obitatel

раздел начинается с "круглой" цифры, поэтому что-то вроде

cat /tmp/data.img|xxd|grep LUKS

подойдёт. В начале строки он покажет адрес.

pupok ★★
()
Ответ на: комментарий от Deleted

Сделал cat ./500GB/120GB/data.img|xxd|grep LUKS

Вывод

55c1a90: 4c55 4b53 a18b 846e 10fa ffb1 d430 4668 LUKS...n.....0Fh 52fab6c0:2ef6 f093 3823 d938 c404 ed4c 554b 5340 ....8#.8...LUKS@ 7edf1900:26d4 415c 7176 c9f6 7640 b1bd 4c55 4b53 &.A\qv..v@..LUKS d9f41bc0:928b 078b 4c55 4b53 5705 c275 0850 9a29 ....LUKSW..u.P.) 9acab800:434c 554b 53c8 f664 8197 83f8 0b24 555f CLUKS..d.....$U_ 36faecb0:1002 c17b 4c55 4b53 79cc f5a0 b64a 159f ...{LUKSy....J..

На диске были файлы с названиями LUKS*

Поэтому и пытался раньше искать aes sha и прочее

obitatel
() автор топика
Ответ на: комментарий от obitatel

1) поправь форматирование
2) на шифрованном диске ты никаких названий файлов не увидишь
3) как я уже сказал, LUKS-раздел (как и любой другой) начинается с "круглой" цифры, поэтому в выводе xxd "LUKS" будет в начале строки, всё остальное -- заведомо ложные срабатывания.
4) только "LUKS" является сигнатурой LUKS-раздела, всякие aes и cbc искать смысла нет. Рядом с LUKS конечно может быть что-то осмысленное, тогда можешь запустить

cat ./500GB/120GB/data.img|xxd|grep LUKS -A 2

она ещё пару строк покажет

pupok ★★
()
Ответ на: комментарий от pupok

cat ./500GB/120GB/data.img|xxd|grep LUKS -A 2

55c1a90: 4c55 4b53 a18b 846e 10fa ffb1 d430 4668 LUKS...n.....0Fh

55c1aa0: a95d 1b9f e627 6bec 5088 c294 4e15 a105 .]...'k.P...N...

55c1ab0: a1c9 7115 302c 8e59 0a18 c866 bc42 ef25 ..q.0,.Y...f.B.%

--

52fab6c0:2ef6 f093 3823 d938 c404 ed4c 554b 5340 ....8#.8...LUKS@

52fab6d0:b0ce 73f5 09df f309 8662 8214 cf4c 8837 ..s......b...L.7

52fab6e0:b1ef 8b18 8b86 5496 3299 02f4 a98e b491 ......T.2.......

--

7edf1900:26d4 415c 7176 c9f6 7640 b1bd 4c55 4b53 &.A\qv..v@..LUKS

7edf1910:c5e5 af25 b004 08af 9ff4 3bc6 4551 c3c4 ...%......;.EQ..

7edf1920:e7ba 5d4f 2e33 b7f7 a11f 4dee 86c3 3ffc ..]O.3....M...?.

Не стал ждать пока все пройдет

obitatel
() автор топика
Ответ на: комментарий от obitatel

здесь очевидно единственный кандидат -- только первый (только он начинается с круглого номера).

0x55c1a90=89922192
losetup -o 89922192 /dev/loop0 ./500GB/120GB/data.img

а теперь скажи

vol_id /dev/loop0

или

cryptsetup luksOpen /dev/loop0 data

если это LUKS, ты сразу поймёшь :), если нет -- ищи дальше.

pupok ★★
()
Ответ на: комментарий от pupok

vol_id /dev/loop2

unknown or non-unique volume type (--probe-all lists possibly conflicting types)

cryptsetup luksOpen /dev/loop2 alles

Enter LUKS passphrase for /dev/loop2:

Command failed: /dev/loop2 is not a LUKS partition

Идет дальнейший поиск строчки в образе.

obitatel
() автор топика
Ответ на: комментарий от obitatel

Поиск закончился нашел штук 15, но с круглого значения только первая.

Поминки справлять по образу??

obitatel
() автор топика
Ответ на: комментарий от obitatel

РЕИНКАРНАЦИЯ

Нашел файл полугодовой давности весом 1 метр, с начальными строками LUKS наверно перед игрой с образом сделал копию первого мегабайта, где header находится делаю так

losetup /dev/loop3 /home/toshiba/500GB/120GB/data.img

dd if=/home/toshiba/500GB/120GB/luks.img of=/dev/loop3

2056+0 записей считано

2056+0 записей написано

скопировано 1052672 байта (1,1 MB), 0,147554 c, 7,1 MB/c

cryptsetup luksOpen /dev/loop3 alles Enter LUKS passphrase for /dev/loop3:

Ввожу

key slot 0 unlocked.

Command successful.

mount /dev/mapper/alles /media/alles

mount: you must specify the filesystem type

Там была ext3 100 пудово

mount /dev/mapper/alles /media/alles -o ext3

mount: you must specify the filesystem type

Подскажите, пожалуйста.

obitatel
() автор топика
Ответ на: комментарий от obitatel

В смысле

mount /dev/mapper/alles /media/alles -t ext3

mount: wrong fs type, bad option, bad superblock on /dev/mapper/alles,

missing codepage or helper program, or other error

In some cases useful info is found in syslog - try

dmesg | tail or so

obitatel
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.