LINUX.ORG.RU

Портабельное шифрование диска

 ,


2

1

Задался праздным вопросом зашифровать USB-stick, но так, что бы его можно было прочесть везде. (Target: Linux, OpenBSD, Mac OS)

Быстрый гуглёж ничего не дал. Всё какое-то платформо-зависимое. Складывается впечатление, что каждый свой суп варит.

OpenBSD: softraid/vnd, Linux: куча fuse-велосипедов, Mac: FileVault/TrueCrypt (тоже fuse). :-/ И всё между собой не компатибельно.

PGP тоже как-то не то. Ключи с собой таскать не комильфо. Надо просто пароль и моунтишь где вздумаешь. Неужели ничего такого ещё нет?

UPD: сюда я уже добрался, но всё это как-то очень грустно.

★★★★★

Последнее исправление: beastie (всего исправлений: 2)

tar --create "${BACKUP[@]}" \
    | openssl enc -e -aes-256-cbc -k "${KEY}" -salt \
    | ...

я так шифрую бэкапы, может и вам подойдет, накостылите как-нибудь)..

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

тада вот, скрипт полностью. в функции archive в переменной BACKUP указываете список директорий, которые надо бэкапить. у меня это /etc, мой $HOME с важными документами (десктоп, почта, записи) и конфигурационными файлами (маска .??*), ну и /srv где лежат веб-сайты и прочие данные с демонов. в переменной KEY указывается пароль для архивов, еще сделайте # chown 0:0 backup.sh && chmod 0700 backup.sh чтобы не опасаться хранить пароль в открытом виде. запускать из под рута конечно же, чтобы забекапить все, а не получилось так, что к некоторым каталогам нет доступа из под юзера. ну и, все бекапы складываются в директорию /root.

использовать # ./backup.sh -c для создания бекапа, а для восстановления еще не запилил функцию, т.к. пока это происходит редко - делаю руками.

вообще, скрипт еще пилить и пилить)..

#!/bin/bash

archive() {
  local BACKUP=(
  "/etc"

  "/home/spoofing/"{"Desktop","Mail","notes.txt"}
  "/home/spoofing/".??*

  "/srv"
  ) KEY="SeCrEt1337"

  tar --create "${BACKUP[@]}" \
    | openssl enc -e -aes-256-cbc -k "$KEY" -salt \
    | split --bytes "100M" - "/root/${@}_$(hostname).tar.crypt.split."
}
extract() {
  local KEY="SeCrEt1337"

  cat "/root/${@}_$(hostname)."* \
    | openssl enc -d -aes-256-cbc -k "$KEY"
}

case "$@" in
  "-c"|"--archive")
    archive "$(date +%s)"
    ;;
  "-x"|"--extract")
    extract ""
    ;;
esac
Spoofing ★★★★★
()
Ответ на: комментарий от Spoofing

Мне надо что-то по-проще. Контейнер для дюжины *.txt. С tar возиться как-то не охота. Идеально был бы шифрованный FAT/UDF-image, что бы его просто примоунтить можно было. A lá vnd/TrueCrypt (последнего к сожалению нет под *BSD).

Пока накопал только ccrypt, aescrypt, mcrypt, openssl, vim -x. Но все они работают с отдельными файлами.

Общая цель: usb-stick с супер-пупер-важной мелочью (txt) и самая главная цель — что бы было платформо-независимо и желательно без внешних зависимостей.

beastie ★★★★★
() автор топика
Последнее исправление: beastie (всего исправлений: 3)
Ответ на: внезапно от Umberto

А оно умеет просто файлы / текстовые поля? Пароли / логины мне мало интересно. Мне надо хранить разные заметки (в том числе пароли, ssh ключи и всю другую дрибедень).

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

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

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

Да, там можно к одной заметке прикрепить файл. Затянуть в базу. Потом экспортнуть.

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

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

Куплю билет, пойду пешком! На зло кондуктору?

Не, это слишком упоротое решение для такой, на первый взгляд, простой задачи.

Нашёл ещё libfvde, если брать маковский формат за базу.

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

Куплю билет, пойду пешком! На зло кондуктору?

ЩИТО?

это слишком упоротое решение для такой, на первый взгляд, простой задачи.

Из всего приведенного - это едиственное, что можно назвать решением.

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

Версию лучше 1 использовать, так как у неё на разных платформах совместимая база.

https://www.keepassx.org/downloads/

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

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

Целая виртуальная машина ради десятка килобайт файлов?

Какая разница, сколько килобайт? Если данные достаточно ценные, чтобы их шифровать, не понимаю, почему виртуалка - слишком много.

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

Не люблю я этот fuse (да, это мои тараканы). encfs уже пользовался. Работает вроде, но это шифрование поверх файловой системы, а мну хотеть наоборот.

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

а как же слакс криптованный на флешке?

Если позволительно грузить с USB машину, за которую сел поработать, можно и флешку с ОС.

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

Раз стали советовать виртуалки, вот такое решение, любой файл можно кодировать в текстовый вид, и если нет ограничений на размер текстовых полей в whatever console password manager, можно легко залоудить.

hexdump -v -e '1/1 "%02x"' file

Т.О. снимается проблема отсутствия функции аттача файла к базе.

Umberto ★☆
()
Последнее исправление: Umberto (всего исправлений: 1)
Ответ на: комментарий от tailgunner

Ради посмотреть одну строчку грузиться? Не, не пойдёт. Можно конечно и VirtualBox/qemu, но всё равно это имхо жуткий оверкилл.

Меня гораздо больше удивляет, что до сих пор нет стандарта для шифрованных дисков. Тема ведь не новая.

Пусть это будет стандартный mbr + aes шифрованный fat/whatever с каким-то определённым partition type или magic number в начале. Ведь несложно же! Так почему всё ещё нет rfc/стандарта?

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

А вообще в указанных (Target: Linux, OpenBSD, Mac OS) всё решается gpg/openssl + sqlite3 + bash.

В итоге db+key. Или даже usual.key для одних полей в db и paranoid.key для других полей.

Ключи для путей что/куда экспортнуть/импортнуть/вывести в консоль. Да, я бы так и сделал.

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

Посыпаю голову пеплом. Никогда не пробовал прикреплять файлы.

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

Ironkey явно спасёт отца русской демократии. Из покупного. И если информация стоит того.

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