LINUX.ORG.RU
решено ФорумAdmin

[tar][пароль][hdd][защита] Вроде бы простая задача

 , , ,


0

4

На сервере стоит HDD объемом 200 Гб. На этом же сервере лежит тарболл в 180 Гб. Эти данные нужно как-то защитить так, чтобы получить доступ к ним мог только я один.

На сервере самый обычный CentOS 6.1, LNMP, etc.

Защищать тарболл нужно потому, как у меня нет возможности скачать за приемлемое время этот тарболл самому. Заказываю за деньги скачивание другому человеку. Инфа достаточно конфиденциальная.

Идеи?

Самому в голову ничего не приходит. PGP потребует дополнительного места. Модифицировать бинарно файл только известным мне методом?

★★★

Последнее исправление: resurtm (всего исправлений: 1)
Ответ на: комментарий от zgen

заархивируй с паролем

Чтобы заархивировать с паролем, мне понадобится еще 180 Гб места на HDD (все утилиты архивации вроде сперва архивируют в другой файл, а затем удаляют исходный несжатый, разве не так?). Распаковать тарболл я тоже не могу. Есть всего 20 Гб В первом абзаце топика указал.

заюзай http://en.wikipedia.org/wiki/Dm-crypt

Немного не могу понять, как мне поможет шифрование на лету, когда мне нужен запароленный файл.

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

Склей начало тарбола с мусором

Функция восстановления битых архивов не вскроет никак?

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

Ему (GnuPG) хватит 20 Гб свободного места, чтобы зашифровать файл размером в 180 Гб?

Точно не скажу сейчас.

Еще вариант.

Можно разбить (split) его на 18 кусков по 10Гб. С каждым куском сделать gpg -c и удалить куски.

Останутся 18 файлов типа .tbz2.gpg

record ★★★★★
()

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

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

А вообще мог бы уже проверить умеет ли gpg шифровать файл «на месте».

Galant
()
Ответ на: комментарий от record

Плюсую. Правда, резать, похоже, придётся с конца файла (отрезать ~10 Гб с конца, подкоротить основной на эти ~10 Гб, и так далее).

Либо остаётся написать шифровальщик самому, который зашифрует файл «на месте» (в принципе, задача не особо сложная, даже можно на скриптовом языке).

berrywizard ★★★★★
()

Заказываю за деньги скачивание другому человеку

жуть. а что, никакой возможности хотя бы на время купить VDS с широким каналом и 200Гб места нету?

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

если бы это был dd образ, можно было его подключить как «незашифрованный диск» через dm-crypt и через петлю(loop device) выкачивать уже зашифрованное содержимое налету. Правда проц бы пригружало такое шифрование в процессе скачивания изрядно...

Pinkbyte ★★★★★
()

На сервере через encfs предоставляешь для скачивания шифрованный файл. У себя через тот же encfs имеешь доступ к оригинальному файлу.

sdio ★★★★★
()

resurtm> Заказываю за деньги скачивание другому человеку.

Скачивание по http? Самое простое, при скачивании пропускать файл через xor

sdio ★★★★★
()

Под ваши задачи мне в голову приходит только TrueCrypt.

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

я щаз еще подумал и понял, что протупил, ведь разницы действительно в принципе никакой...

Pinkbyte ★★★★★
()

Извините, не сразу вник в тему :( Скорее всего для данной цели это ПО не подойдет.

massive
()
Ответ на: комментарий от Komintern

Заказываю за деньги скачивание другому человеку

жуть. а что, никакой возможности хотя бы на время купить VDS с широким каналом и 200Гб места нету?

У нас в городе полноценного анлима ни у кого из провайдеров нет. :) А как будет качать другой человек — уже не мои проблемы.

resurtm ★★★
() автор топика

наложи гамму. и побольше

redixin ★★★★
()

Пожалуй, просто прицеплю несколько мегов данных в конце и в начале архива. Самое простое и быстрое решение. Не думаю, что скачивающий сможет поломать это.

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

как? в двух словах. я например не знаю простого способа.

Еще погуглю, но найти нормальный консольный hex редактор не проблема, как мне кажется (тот-же vim умеет даже). Ну если не припаяю пару мегабайт с начала и конца, так несколько десятков байт поменяю (сигнатуру gz там покоцаю, еще чего потыкаю).

resurtm ★★★
() автор топика

Я бы в случайно выбранные места с помощью dd записал по мегабайту мусора из рандом. Предварительно взяв с собой эти места и передав(10 мб же не проблема) ?

И никакой доп. софт не нужен. Ну и разумеется начало и конец тоже побить

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

Нет, только на этом. Но нет причин не работать, т к нет причин быть off_t меньше чем 64 битным, а это огого

Кстати, можно немного видоизменить код так, чтобы он зашифровал только первые несколько мегабайт. Этого будет достаточно, чтобы простой смертный не смог распаковать такой тарбол.

redixin ★★★★
()

На сервере стоит HDD объемом 200 Гб. На этом же сервере лежит тарболл в 180 Гб. Эти данные нужно как-то защитить так, чтобы получить доступ к ним мог только я один.
...
Самому в голову ничего не приходит. PGP потребует дополнительного места. Модифицировать бинарно файл только известным мне методом?

Интересная задача, и она очень просто решается. Никаких ограничений на длину файла и свободное место!

apt-get install loop-aes-utils

подгружаем модули

modprobe aes

modprobe cryptoloop

Сгенерируем пароль в файл

dd if=/dev/random of=pass.key bs=512 count=1

Шифруем:

Отобразим tar в блочное устройство loop с шифрованием, используя losetup.

cat pass.key | losetup -p0 -e aes /dev/loop0 180Gb_file.tar

Прочитаем из тарболла и запишем в loop (при записи данные автоматически шифруются)

dd if=180Gb_file.tar of=/dev/loop0 conv=notrunc

Отключим loop

losetup -d /dev/loop0

Теперь в tar-е содержимое зашифровано и файл можно раздавать хоть через торренты :)

Расшифровываем:

Подключаем зашифрованный tar к loop

cat pass.key | losetup -p0 -e aes /dev/loop0 180Gb_file.tar

читамем из loop (содержимое автоматически расшифровается) и переписываем файл tar

dd if=/dev/loop0 of=180Gb_file.tar conv=notrunc

Отключаем loop

losetup -d /dev/loop0

Получили оригинальный, не зашифрованный тар :)

Важно! Losetup не сохраняет в зашифрованном файле никакой инфы о шифре, о пароле (хеш) и т. п. Расшифровывать нужно с такимиже аргументами как и при шифровании.

Обязательно нужно проверить на небольшом тестовом файле: зашифровать на той системе, где у вас 180Gb.tar, скачать и расшифровать на другом компе.

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