Гид по технологиям

Как использовать Tomb для шифрования файлов в Ubuntu 16.04

• 10 min read • Безопасность • Обновлено 18 Nov 2025
Tomb: шифрование файлов в Ubuntu 16.04
Tomb: шифрование файлов в Ubuntu 16.04

Введение

Шифрование файлов уже стало необходимостью, даже на Linux. Рост числа пользователей привёл к увеличению числа атак и краж данных, поэтому простые меры защиты — важная часть цифровой гигиены.

Ранее одним из популярных решений был TrueCrypt. После прекращения разработки он потерял актуальность, и появились форки/наследники (например, VeraCrypt). Однако для GNU/Linux существует инструмент, разработанный специально для этой платформы — Tomb. В этом руководстве объясню, почему Tomb может быть лучшим выбором для Ubuntu 16.04, как его установить и как правильно использовать.

Краткий обзор: что такое Tomb

Tomb — утилита для создания зашифрованных контейнеров (каждый контейнер называется «tomb»). Она использует LUKS/dm‑crypt под капотом и обычно применяет шифр AES‑XTS с хешем SHA‑256 для защиты ключей. Tomb ориентирован на GNU/Linux и предлагает как CLI-интерфейс, так и графическую оболочку gtomb.

Ключевые свойства в одно предложение:

  • AES‑XTS‑256 + SHA‑256 — современный симметричный шифр для контейнеров.
  • Формат «tomb» — файл-контейнер, который монтируется как файловая система (Ext3/Ext4 по умолчанию).
  • Поддержка статически слинкованных библиотек — затрудняет аудит, но делает обход уязвимостей сложнее в некоторых сценариях (см. раздел про безопасность).
  • Имеется GUI gtomb для новичков.

Почему Tomb может быть хорошим выбором

  • Сделан для GNU/Linux: меньше проблем с совместимостью и проще интеграция с системными инструментами.
  • Простой набор команд с понятной метафорой (dig/forge/lock/open/close/slam), что снижает порог входа.
  • Поддерживает продвинутые приёмы, например стеганографию ключей (скрытие ключа внутри другого файла).
  • Командная строка и GUI покрывают случаи как автоматизации, так и удобной ручной работы.

Важно: ни одно ПО не даёт 100% защиты. Tomb не скрывает вашу онлайн‑активность от провайдера, не заменяет E2EE в облаке и не препятствует атакам на систему, где сборщиком окружения владеют злоумышленники. Всегда используйте комплексный подход: обновления ОС, надёжные пароли, изоляция ключей и мониторинг.

Простое сравнение: Tomb, VeraCrypt и LUKS

ХарактеристикаTombVeraCryptLUKS (cryptsetup)
ПлатформаGNU/Linux‑ориентированКросс‑платформенныйGNU/Linux (native)
GUIgtombVeraCrypt GUIобычно без GUI (есть сторонние)
Формат контейнераtomb файл (LUKS внутри)контейнер или шифрованный томLUKS контейнеры/разделы
Стеганография ключейЕстьНет (обычно)Нет
Простота использованияВысокая для LinuxХорошаяТребует понимания LUKS

Установка Tomb на Ubuntu 16.04

Поскольку Tomb ориентирован на Linux, установка простая. В этом руководстве используется репозиторий SparkyLinux как источник пакетов для Tomb.

Откройте терминал и создайте файл репозитория:

sudo vi /etc/apt/sources.list.d/sparky-repo.list

Добавьте в файл следующие строки:

deb https://sparkylinux.org/repo stable main
deb-src https://sparkylinux.org/repo stable maindeb https://sparkylinux.org/repo testing maindeb-src https://sparkylinux.org/repo testing main

Сохраните и закройте файл.

Установите публичный ключ Sparky (варианты):

sudo apt-get install sparky-keyring

или

wget -O - https://sparkylinux.org/repo/sparkylinux.gpg.key | sudo apt-key add -

Обновите индексы и установите Tomb и, при необходимости, gtomb:

sudo apt-get update
sudo apt-get install tomb
sudo apt-get install gtomb

Примечание: в новых версиях Debian/Ubuntu использовано иное обращение с ключами репозиториев (apt-key устарел), но для Ubuntu 16.04 эти команды применимы.

Обзор команд Tomb (CLI)

Ниже приведены базовые шаги и примеры команд. Я сохраняю оригинальные синтаксисы команд — их можно копировать и запускать в терминале.

  1. Создать новый tomb (контейнер) размером 100 МБ с именем Tomb1.tomb:
sudo tomb dig -s 100 Tomb1.tomb

Пример вывода (сокращённо):

tomb . Commanded to dig tomb Tomb1.tomb
tomb (*) Creating a new tomb in Tomb1.tomb
tomb . Generating Tomb1.tomb of 100MiB
100 blocks (100Mb) written.
...
  1. Сгенерировать ключ для контейнера:
sudo tomb forge Tomb1.tomb.key

Если появится ошибка про активный swap, отключите swap:

sudo swapoff -a

Затем повторите команду forge. После генерации вам будет предложено ввести пароль для ключа (введите два раза).

Скриншот окна ввода пароля для ключа Tomb

  1. Заблокировать tomb с помощью ключа (создать зашифрованный том LUKS и отформатировать файловую систему):
sudo tomb lock Tomb1.tomb -k Tomb1.tomb.key

Ожидаемый результат включает строки о проверке ключа, шифре (aes-xts-plain64:sha256) и форматировании Ext3/Ext4.

  1. Открыть tomb (монтировать) и получить доступ к файлам:
sudo tomb open Tomb1.tomb -k path/to/your/Tomb1.tomb.key

Tomb проведёт fsck и смонтирует контейнер, например, в /media/Tomb1.

  1. Закрыть tomb (отмонтировать):
sudo tomb close

или принудительно закрыть все открытые tomb’ы:

sudo tomb slam all

Замечание о хранении ключа: не храните файл ключа в той же папке, что и tomb. Рекомендуется носить ключ на внешнем носителе (например, на USB) и хранить резервные копии ключа в зашифрованном виде.

Использование gtomb (GUI)

gtomb — графическая оболочка для Tomb. Интерфейс простой: кнопки dig, forge, lock, open и т.д. Пошаговый процесс тот же, что в CLI:

  1. Запустите gtomb из меню приложений.
  2. Нажмите Dig → выберите файл контейнера и размер.
  3. Нажмите Forge → задайте пароль для ключа.
  4. Нажмите Lock → выберите ключ и заблокируйте tomb.
  5. Чтобы открыть, нажмите Open и укажите ключ.

Главное окно gtomb после запуска

Диалог выбора размера tomb в gtomb

Окно создания ключа (forge) в gtomb

gtomb удобно тем, что большинство задач выполняются несколькими кликами, а подсказки в интерфейсе уменьшают риск ошибок для новичков.

Практические советы и лучшие практики

  • Хранение ключа: храните ключ отдельно от контейнера. Лучшие варианты — аппаратный токен, USB‑накопитель с физическим контролем доступа или отдельная зашифрованная резервная копия.
  • Пароль к ключу: используйте длинную фразу‑пароль (passphrase) — минимум 12+ символов, лучше 20+, сочетание слов и символов.
  • Резервные копии: регулярно делайте резервную копию важных tomb’ов и отдельно — LUKS header (см. ниже), храня резервную копию ключа.
  • Отключение swap и гибернации: hibernation и swap могут содержать фрагменты ключей/данных. Отключайте swap перед генерацией ключа и не используйте гибернацию, если не уверены в безопасности.
  • Безопасное удаление: после копирования данных в tomb удаляйте исходные файлы безопасно (shred, wipe) и имейте резервную копию перед удалением.
  • Разделение прав: доступ к ключу и контейнеру должен быть ограничен. Не храните ключ в общедоступных папках.

Короткая инструкция по безопасному хранению ключа на USB:

  1. Создайте ключ: sudo tomb forge my.tomb.key
  2. Отформатируйте USB и создайте каталог /keys.
  3. Скопируйте ключ на USB: sudo cp my.tomb.key /media/usb/keys/
  4. Проверьте права: sudo chmod 600 /media/usb/keys/my.tomb.key
  5. Храните USB в безопасном месте и делайте зашифрованную резервную копию ключа.

Резервное копирование LUKS‑заголовка

LUKS‑заголовок содержит важные метаданные о шифровании. Проигрыш этого заголовка делает данные недоступными. Создайте резервную копию заголовка с помощью cryptsetup:

sudo cryptsetup luksHeaderBackup /dev/loop0 --header-backup-file Tomb1-luks-header.img

(Замените /dev/loop0 на устройство, соответствующее вашему контейнеру после открытия.)

Храните резервную копию заголовка отдельно и в зашифрованном виде.

Автоматизация: простой скрипт для монтирования tomb с USB‑ключа

Ниже — пример скрипта open_tomb.sh, который ищет ключ на подключённом USB и открывает соответствующий tomb. Пример иллюстративный — отрегулируйте пути под свою систему.

#!/bin/bash
# Пример: автоматическое открытие Tomb при подключении USB с ключом
USB_MOUNT_POINT="/media/usb"
TOMB_PATH="$HOME/Tomb1.tomb"
KEY_PATH="$USB_MOUNT_POINT/keys/Tomb1.tomb.key"

if [ -f "$KEY_PATH" ]; then
  sudo tomb open "$TOMB_PATH" -k "$KEY_PATH"
else
  echo "Ключ не найден на USB. Подключите USB с ключом и попробуйте снова."
fi

Примечание: хранение ключа на съемном носителе удобно, но автоматически запускать скрипты с правами root небезопасно. Используйте такие скрипты только в доверенной среде и добавьте проверки целостности.

Проблемы и способы их решения

  • Ошибка «active swap partition»: выполните sudo swapoff -a перед созданием ключа.
  • Ошибка доступа при открытии: проверьте права ключа и используйте sudo; убедитесь, что файл ключа не повреждён.
  • Потерян ключ: без ключа и резервного заголовка LUKS восстановление практически невозможно.
  • Повреждение файловой системы: запустите fsck на смонтированном устройстве.

Миграция с TrueCrypt/VeraCrypt на Tomb

Tomb использует формат LUKS внутри контейнера, а VeraCrypt — свой собственный формат/шифрование. Прямой конвертации формата Tomb ↔ VeraCrypt нет, но мигрировать данные можно так:

  1. Подмонтируйте контейнер VeraCrypt.
  2. Создайте новый tomb (dig + forge + lock) и откройте его.
  3. Скопируйте файлы из VeraCrypt в открытый tomb.
  4. Проверьте целостность и удалите исходные копии безопасным методом.

Таким образом вы переносите данные, а не конвертируете формат.

Безопасность и жёсткие условия

Риски и рекомендации:

  • Угрозы локальной компрометации: если система уже взломана, злоумышленник может украсть вводимые пароли при открытии tomb. Защитите систему от вредоносных программ и используйте многофакторную аутентификацию там, где возможно.
  • Хранение ключа рядом с tomb: недопустимо. Ключ и контейнер должны храниться раздельно.
  • Публичные облака: если вы храните Tomb в облаке, контейнер будет зашифрован, но хранение ключа в том же облаке сводит защиту на нет. Для полного решения используйте локальное шифрование перед загрузкой в облако или сторонние клиенты с E2EE.
  • Юридические и правовые аспекты: в разных юрисдикциях шифрование и хранение ключей регулируются по‑разному. Ознакомьтесь с местным законодательством.

Методология: быстрая проверка безопасности перед использованием

  1. Обновите систему и пакеты.
  2. Сгенерируйте ключ при отключённом swap.
  3. Сохраните ключ в двух защищённых местах (USB и зашифрованный бэкап).
  4. Создайте резервную копию LUKS‑заголовка.
  5. Проверьте монтирование/демонтаж. Выполните тесты чтения/записи.
  6. Настройте ротацию пароля и процедуру аварийного доступа.

Контрольные списки по ролям

Администратор:

  • Установил Tomb и gtomb через доверенный репозиторий.
  • Настроил резервное копирование LUKS‑заголовков и ключей.
  • Ограничил права на ключи и конфигурационные файлы.
  • Проверил системные логи на предмет несанкционированного доступа.

Обычный пользователь:

  • Хранит ключ на защищённом USB.
  • Использует длинную фразу‑пароль на ключе.
  • Не держит оригиналы чувствительных файлов в незашифрованных папках.
  • Закрывает tomb после работы.

Критерии приёмки

  • Tomb создаётся и закрывается без ошибок (dig → forge → lock → open → close).
  • Файлы внутри tomb доступны для чтения/записи после открытия.
  • Ключ хранится отдельно и доступен при необходимости восстановления.
  • Резервная копия LUKS‑заголовка создана и сохранена в безопасном месте.

Минимальная проверка (test cases)

  1. Создать tomb, сделать запись файла, закрыть и снова открыть: файл присутствует.
  2. Попытаться открыть tomb с неверным ключом: доступ запрещён.
  3. Отключить swap → сгенерировать ключ → убедиться, что forge проходит без ошибки.
  4. Восстановить LUKS‑заголовок из резервной копии на тестовом контейнере.

Краткая методика восстановления при ошибке

  1. Остановите работу с контейнером.
  2. Проверьте наличие резервной копии заголовка LUKS.
  3. Если заголовок повреждён, попробуйте восстановить его с помощью cryptsetup luksHeaderRestore.
  4. Если ключ утерян и нет резервной копии, доступ к данным невозможен.

Маленькая шпаргалка команд (cheat sheet)

  • dig — создать файл tomb: sudo tomb dig -s
  • forge — сгенерировать ключ: sudo tomb forge
  • lock — зашифровать tomb: sudo tomb lock -k
  • open — открыть tomb: sudo tomb open -k
  • close — закрыть активный tomb: sudo tomb close
  • slam all — форсированно закрыть все: sudo tomb slam all

Fact box — ключевые факты

  • Шифр по умолчанию в примерах: aes-xts-plain64:sha256 (AES‑XTS с SHA‑256).
  • Пример размера: 100MiB (в примерах используется 100Mb/100M).
  • Ubuntu 16.04 — релиз 2016 года; репозитории и инструменты соответствуют этому релизу.

Модель принятия решения — выбрать инструмент шифрования

flowchart TD
  A[Нужна кросс‑платформенность?] -->|Да| B[VeraCrypt]
  A -->|Нет, только Linux| C[Tomb или LUKS]
  C --> D[Нужен GUI для новичков?]
  D -->|Да| E[Tomb + gtomb]
  D -->|Нет| F[LUKS 'cryptsetup' — скрипты/интеграция]

Глоссарий (одной строкой каждого термина)

  • Tomb: файл‑контейнер, зашифрованный с помощью LUKS/dm‑crypt.
  • LUKS: стандарт Linux для шифрования блочных устройств (используется cryptsetup).
  • dm‑crypt: подсистема ядра Linux для шифрования дисковых устройств.
  • AES‑XTS: режим работы алгоритма AES, подходящий для шифрования дисковых данных.

Частые вопросы

Можно ли хранить tomb в облачном репозитории?

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

Что делать, если я потерял ключ?

Без ключа и без резервной копии LUKS‑заголовка восстановление невозможно. Всегда делайте защищённые резервные копии ключа и заголовка.

Как безопасно удалить исходные незашифрованные файлы?

Используйте утилиты вроде shred или wipe, чтобы перезаписать данные перед удалением. Обычное rm не гарантирует удаления содержимого с носителя.

Можно ли автоматизировать открытие tomb при загрузке системы?

Технически можно через systemd unit или скрипты, но это повышает риск раскрытия ключа. Автоматизация допустима только в доверенной физической среде и при строгом контроле доступа.

Tomb лучше VeraCrypt?

Tomb удобнее, если вы ограничены GNU/Linux и хотите tight‑интеграцию с системными инструментами. VeraCrypt нужен при кросс‑платформенной работе.

FAQ в формате машинно‑читаемом

Ниже указаны вопросы и ответы, которые также добавлены в JSON‑LD для поисковых подсказок.

Заключение

Tomb — надёжный и удобный инструмент для шифрования файлов на GNU/Linux, особенно для пользователей Ubuntu 16.04. Он сочетает в себе простоту использования и современные алгоритмы шифрования. Ключевые моменты: храните ключи отдельно, делайте резервные копии LUKS‑заголовков, отключайте swap при генерации ключей и используйте безопасные пароли. Если нужно кросс‑платформенное решение — рассмотрите VeraCrypt, но для «чистого» Linux‑окружения Tomb остаётся отличным выбором.

Список дополнительных источников: официальная документация Tomb и руководство по LUKS/cryptsetup.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро