墓碑是一个免费开源的、小巧强大且简单的工具,用于在GNU/Linux上加密文件。在撰写本文时,它包括一个使用通用文件系统GNU工具和Linux内核加密API(cryptsetup和LUKS)的shell脚本(zsh)。
它还利用各种GNU/Linux工具,如steghide、lsof、mlocate、resizefs、dcfld等,来扩展其功能。
墓碑用于在加密的、密码保护的目录中创建安全备份的机密或个人文件,这些目录称为墓。这些目录只能使用其关联的密钥文件和密码打开。
创建了墓之后,您可以将其密钥文件分开存储,例如,您的墓文件可以存在于远程服务器上,而密钥文件可以存在于您的笔记本电脑或台式机上,位于家中或办公室。
如果墓文件位于您的笔记本电脑或台式机上,您可以将其隐藏在文件系统中,或者更安全的选项是将密钥存储在USB驱动器中。
此外,您可以将墓穴隐藏在文件系统中,或者安全地通过网络或外部存储介质移动它;还可以与朋友或同事共享。您还可以将密钥隐藏在图像中,我们稍后会看到。
如何在Linux系统中安装Tomb
Tomb需要一些程序,如zsh、gnupg、cryptsetup和pinentry-curses,才能在系统上工作。
首先,使用您的发行版默认包管理器安装以下所需工具,我们还将安装steghide以添加将密钥隐藏在图像中的功能。
sudo apt install gnupg zsh cryptsetup pinentry-curses steghide [Debian] sudo yum install gnupg zsh cryptsetup pinentry-curses steghide [RHEL] sudo dnf install gnupg zsh cryptsetup pinentry-curses steghide [Fedora]
安装所需软件包后,为您的发行版下载稳定的Tomb源代码,或者使用以下wget命令直接在终端中下载,如下所示。
cd Downloads/ wget -c https://files.dyne.org/tomb/Tomb-2.10.tar.gz
接下来,提取您刚刚下载的tar存档文件,并将其移动到解压缩的文件夹中。
tar -xzvf Tomb-2.10.tar.gz cd Tomb-2.10
最后,运行以下命令,作为root或使用sudo命令获得root权限,将二进制文件安装在/usr/local/bin/
下。
sudo make install
如何在Linux系统中创建墓穴
安装了tomb之后,您可以通过为其创建一个新密钥并按照以下说明设置其密码来生成一个tomb。
要创建一个tomb,请使用dig子命令,并使用-s
标志来设置其大小,以MB为单位(当tomb装满文件后,可以增加这个大小)。
sudo tomb dig -s 30 tecmint.tomb

然后为tecmint.tomb
创建一个新密钥,使用forge子命令,并在提示时设置其密码。这个操作需要一些时间来完成,您可以坐下来放松或去准备一杯咖啡。
sudo tomb forge tecmint.tomb.key
在创建密钥时,如果磁盘上存在交换空间,tomb会发出警告,如果交换内存被启用,它将终止,如下面的截图所示。
这是由于与磁盘交换内存相关的安全风险(请参阅文档或手册页以获取更多信息)。
您可以使用-f
标志强制操作,或者使用以下命令关闭交换内存。
sudo swapoff -a

然后再次尝试创建tomb密钥。

接下来,使用上述密钥对tecmint.tomb
进行格式化以锁定它。-k
标志指定要使用的密钥文件的位置。
sudo tomb lock tecmint.tomb -k tecmint.tomb.key

如何打开一个新的tomb
要打开一个tomb,请使用open子命令,系统将提示您输入创建tomb时设置的密码。
sudo tomb open -k tecmint.tomb.key tecmint.tomb

从之前的命令输出中,tomb已经被打开并挂载在/media/tecmint/
上——这是您可以添加您的秘密文件的地方。
如果您拥有多个墓穴,您可以列出所有打开的墓穴,并获取有关它们的信息,如上所示。
sudo tomb list

如何将文件复制到打开的墓穴
现在,您可以按照以下步骤将您的秘密或重要文件添加到墓穴中。每次需要添加更多文件时,首先打开墓穴,如上所示。
sudo cp -v passwds.txt accounts.txt keys.txt -t /media/tecmint/

打开墓穴后,一旦您完成了使用它或向其添加文件,使用close子命令来关闭墓穴文件。但如果一个进程正在与一个打开的墓穴交互,关闭可能会失败。
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

您还可以使用exhume子命令恢复编码在jpeg图像中的密钥。
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/
遗憾的是,我们无法在本指南中利用所有墓穴使用命令和选项,您可以查阅其手册页以获取更多信息。在那里,您将找到有关如何更改墓穴的密钥和密码、调整其大小等的说明。
man tomb
墓地 Github 代码库: https://github.com/dyne/Tomb
摘要
墓地是一个简单而强大、易于使用的加密工具,用于处理像秘密一样敏感的文件,在 GNU/Linux 系统上。请通过下面的评论表单分享您对它的想法。
Source:
https://www.tecmint.com/tomb-file-encryption-and-backup-tool-for-linux/