Tomb — инструмент шифрования файлов и личного резервного копирования для Linux
Tomb — это бесплатный, небольшой, мощный и простой инструмент с открытым исходным кодом для шифрования файлов в GNU/Linux. На момент написания этой статьи он состоял из сценария оболочки (zsh), использующего общие инструменты GNU файловой системы и криптографический API ядра Linux (cryptsetup и LUKS).
Для расширения функциональности он также использует различные инструменты GNU/Linux, такие как steghide, lsof, mlocate, resizeefs, dcfld и многие другие.
Tomb используется для создания безопасных резервных копий секретных или личных файлов в зашифрованных, защищенных паролем каталогах, называемых tombs. Эти каталоги можно открыть только с использованием связанных с ними ключевых файлов и паролей.
После создания tomb вы можете хранить его ключевые файлы отдельно, например, ваш файл tomb может существовать на удаленном сервере, в то время как файл ключа находится на вашем ноутбуке или настольном компьютере дома или в офисе. Если файл гробницы находится на вашем ноутбуке или настольном компьютере, вы можете скрыть его в файловой системе или, как более безопасный вариант, сохранить ключ на USB-накопителе.
Кроме того, вы можете скрыть могилу в файловой системе или безопасно переместить ее по сети или на внешний носитель; поделитесь им с другими друзьями или коллегами. Вы также можете скрыть ключ на изображении, как мы увидим позже.
Требования
Tomb требуется несколько программ, таких как zsh, gnupg, cryptsetup и pinentry-curses. > должен быть установлен в системе для работы.
Как установить Tomb в системах Linux
Сначала начните с установки следующих необходимых инструментов с помощью диспетчера пакетов вашего дистрибутива по умолчанию, а также мы установим steghide, чтобы добавить функциональность для сокрытия ключей в изображениях.
sudo apt install gnupg zsh cryptsetup pinentry-curses steghide #Debian/Ubuntu
sudo yum install gnupg zsh cryptsetup pinentry-curses steghide #CentOS/RHEL
sudo dnf install gnupg zsh cryptsetup pinentry-curses steghide #Fedora 22+
После установки необходимых пакетов загрузите стабильный исходный код tomb для вашего дистрибутива или используйте следующую команду wget для загрузки непосредственно в терминале, как показано.
cd Downloads/
wget -c https://files.dyne.org/tomb/Tomb-2.5.tar.gz
Затем извлеките только что скачанный файл tar-архива и переместите его в распакованную папку.
tar -xzvf Tomb-2.5.tar.gz
cd Tomb-2.5
Наконец, запустите следующую команду от имени root или используйте команду sudo для получения привилегий root, чтобы установить двоичный файл в /usr/local/bin/
.
sudo make install
Как создавать гробницы в системах Linux
После установки tomb вы можете создать могилу, создав для нее новый ключ и установив пароль, как описано ниже.
Чтобы создать гробницу, используйте подкоманду dig и флаг -s
, чтобы установить ее размер в МБ. (этот размер можно увеличить, когда гробница заполняется до отказа после добавления файлов).
sudo tomb dig -s 30 tecmint.tomb
Затем создайте новый ключ для tecmint.tomb
с помощью подкоманды forge и установите для него пароль, когда его спросят. Эта операция займет некоторое время: просто сядьте поудобнее и расслабьтесь или приготовьте себе чашку кофе.
sudo tomb forge tecmint.tomb.key
При создании ключа tomb будет жаловаться, существует ли на диске пространство подкачки, и завершится, если эта память подкачки включена, как показано на следующем снимке экрана. Это связано с угрозой безопасности, связанной с подкачкой памяти на диске (дополнительную информацию см. в документации или на странице руководства).
Вы можете использовать флаг -f
для принудительной операции или включения подкачки памяти с помощью следующей команды.
sudo swapoff -a
Затем попробуйте создать ключ гробницы еще раз.
Затем отформатируйте tecmint.tomb
, чтобы заблокировать его указанным выше ключом. Флаг -k
указывает расположение используемого файла ключа.
sudo tomb lock tecmint.tomb -k tecmint.tomb.key
Как открыть новую гробницу
Чтобы открыть гробницу, используйте подкоманду open. Вам будет предложено ввести пароль, который вы установили при создании гробницы.
sudo tomb open -k tecmint.tomb.key tecmint.tomb
Судя по результатам предыдущей команды, гробница была открыта и смонтирована в /media/tecmint/
— сюда вы можете добавить свои секретные файлы.
Если у вас много гробниц, вы можете перечислить все открытые гробницы и получить некоторую информацию о них, как показано на рисунке.
sudo tomb list
Как скопировать файлы в Open Tomb
Теперь вы можете добавить свои секретные или важные файлы в могилу следующим образом. Каждый раз, когда вам нужно добавить больше файлов, сначала откройте гробницу, как показано выше.
sudo cp -v passwds.txt accounts.txt keys.txt -t /media/tecmint/
После открытия гробницы и завершения ее использования или добавления в нее файлов используйте подкоманду закрыть, чтобы закрыть файл гробницы. Но если процесс работает с открытой могилой, он может не закрыться.
sudo tomb close
Вы можете закрыть все гробницы бегом.
sudo tomb close all
Чтобы принудительно закрыть открытую могилу, даже когда с ней взаимодействует процесс, используйте подкоманду slam.
sudo tomb slam
OR
sudo tomb slam all
Как скрыть ключ от гробницы на изображении
Также можно скрыть/закодировать ключ гробницы на изображении с помощью подкоманды bury, как показано ниже.
sudo tomb bury -k tecmint.tomb.key zizu.jpg
Затем используйте вновь созданное изображение в формате JPEG, чтобы открыть гробницу, как показано.
sudo tomb open -k zizu.jpg tecmint.tomb
Вы также можете восстановить ключ, закодированный в формате JPEG, с помощью подкоманды exhume.
sudo tomb exhume zizu.jpg -k tecmint.tomb.key
OR
sudo tomb -f exhume zizu.jpg -k tecmint.tomb.key #force operation if key exists in current directory
Внимание: не забудьте скрыть ключ гробницы, не храните его в одном каталоге с гробницей. Например, мы переместим ключ для tecmint.tomb
в секретное местоположение (вы можете использовать свое собственное местоположение), сохраним его на внешнем носителе или переместим на удаленный сервер через SSH.
sudo mv tecmint.tomb.key /var/opt/keys/
К сожалению, мы не можем использовать все команды и параметры использования tomb в этом руководстве. Дополнительную информацию можно найти на его странице руководства. Там вы найдете инструкции о том, как изменить ключ и пароль гробницы, изменить ее размер и многое другое.
man tomb
Репозиторий Tomb на Github: https://github.com/dyne/Tomb
Краткое содержание
Tomb — это простой, но мощный и удобный в использовании инструмент шифрования для работы с такими деликатными файлами, как секреты, в системах GNU/Linux. Поделитесь своими мыслями об этом через форму комментариев ниже.