Tomb是一个免费的开源,小巧,功能强大且简单的工具,用于加密GNU / Linux上的文件。 在撰写本文时,它包含一个使用通用文件系统GNU工具的shell脚本( zsh )和Linux内核加密API( cryptsetup和LUKS )。
它还使用各种GNU / Linux工具,如steghide , lsof , mlocate , resizefs , dcfld等等,以扩展其功能。
Tomb用于在称为tombs的加密的受密码保护的目录中创建秘密或个人文件的安全备份。 这些目录只能使用相关的密钥文件和密码打开。
创建一个坟墓后 ,您可以单独存储其密钥文件,例如,当密钥文件位于家中或办公室的笔记本电脑或台式机上时,您的坟墓文件可以存在于远程服务器上。 如果您的笔记本电脑或台式机上有tomb文件,您可以将其隐藏在文件系统中,或者作为更安全的选项,将密钥存储在USB驱动器中。
此外,您可以隐藏文件系统中的坟墓或通过网络或外部存储媒体安全地移动它; 与其他朋友或同事分享。 您也可以隐藏图像中的键,我们稍后会看到。
要求
Tomb需要在系统上安装一些程序,如zsh , gnupg , cryptsetup和pinentry-curses才能工作。
如何在Linux系统中安装Tomb
首先使用您的分发默认包管理器安装以下必需工具,我们还将安装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+
安装所需的软件包后,下载适用于您的分发的稳定的源代码 ,或使用以下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系统中创建Tombs
安装坟墓后 ,您可以通过为其创建新密钥来生成坟墓并设置其密码,如下所述。
要创建一个坟墓 ,请使用dig子命令和-s
标志以MB为单位设置其大小(当添加文件后,当坟墓满载时,可以增加此大小)。
$ sudo tomb dig -s 30 youcl.tomb
创建一个新的坟墓
然后使用youcl.tomb
子命令为youcl.tomb
创建一个新密钥,并在询问时设置其密码。 这项操作需要一些时间才能完成,只需高枕无忧或自己准备一杯咖啡。
$ sudo tomb forge youcl.tomb.key
在创建密钥时,如果磁盘上存在交换空间,则tomb会抱怨,如果打开交换内存,它将终止,如下面的屏幕截图所示。 这是由于与磁盘上的交换内存相关的安全风险(有关更多信息,请参阅文档或手册页)。
您可以使用-f
标志强制操作或使用以下命令关闭交换内存。
$ sudo swapoff -a
关闭交换
然后尝试再次创建盗墓密钥。
创建一个新的密钥文件
接下来,格式化youcl.tomb
以使用上面的键锁定它。 -k
标志指定要使用的密钥文件的位置。
$ sudo tomb lock youcl.tomb -k youcl.tomb.key
用钥匙锁坟墓文件
如何打开一个新的墓
要打开坟墓 ,请使用open子命令,系统将提示您输入在创建坟墓时设置的密码。
$ sudo tomb open -k youcl.tomb.key youcl.tomb
打开一个新的坟墓
从上一个命令的输出中,已打开墓并将其安装在/media/youcl/
- 您可以在此处添加秘密文件。
如果你有很多墓葬,你可以列出所有开放的墓葬,并获得一些有关它们的信息,如图所示。
$ sudo tomb list
列出所有墓葬
如何将文件复制到打开墓
现在,您可以将您的秘密或重要文件添加到坟墓中,如下所示。 每次需要添加更多文件时,请先打开墓穴,如上图所示。
$ sudo cp -v passwds.txt accounts.txt keys.txt -t /media/youcl/
将文件复制到打开墓
打开坟墓后,一旦完成使用它或向其添加文件,请使用close子命令关闭坟墓文件。 但如果一个过程正在使用一个开放的坟墓,如果可能无法关闭。
$ sudo tomb close
你可以通过跑步关闭所有的坟墓。
$ sudo tomb close all
要强制打开一个打开的坟墓,即使进程正在与它进行交互,也要使用slam子命令。
$ sudo tomb slam OR $ sudo tomb slam all
如何隐藏图像中的盗墓钥匙
还可以使用bury子命令在图像中隐藏/编码坟墓键,如下所述
$ sudo tomb bury -k youcl.tomb.key zizu.jpg
在图像中隐藏Tomb键
然后使用新创建的jpeg图像打开坟墓,如图所示。
$ sudo tomb open -k zizu.jpg youcl.tomb
使用编码图像打开坟墓
您还可以使用exhume子命令恢复在jpeg图像中编码的密钥。
$ sudo tomb exhume zizu.jpg -k youcl.tomb.key OR $ sudo tomb -f exhume zizu.jpg -k youcl.tomb.key #force operation if key exists in current directory
从图像中重新获得一个键
注意 :记住隐藏墓穴密钥,不要将它与墓穴保持在同一目录中。 例如,我们将youcl.tomb
的密钥移动到一个秘密位置(您可以使用您自己的位置)或将其保存在外部媒体上或通过SSH将其移动到远程服务器。
$ sudo mv youcl.tomb.key /var/opt/keys/
遗憾的是,我们无法利用本指南中的所有tomb使用命令和选项,您可以查阅其手册页以获取更多信息。 在那里,您将找到有关如何更改坟墓的密钥和密码,调整其大小等内容的说明。
$ man tomb
Tomb Github存储库 : https : //github.com/dyne/Tomb
概要
Tomb是一个简单但功能强大且易于使用的加密工具,用于处理GNU / Linux系统上的秘密文件。 通过下面的评论表分享您的想法。