Linux/UNIX:使用Tar和OpenSSL加密备份磁带

时间:2020-01-09 10:42:13  来源:igfitidea点击:

如何确保只有授权人员才能在Linux或者UNIX操作系统下访问存储在磁带机(DAT,DLT,LTO-4等)上的备份?
如何以加密模式将/array22/vol4/home /备份到/dev/rmt/5mn或者/dev/st0?
您可以使用tar和openssl命令的组合轻松地将数据加密到磁带上。
以下是基于软件的解决方案,基于openssl工具支持的加密算法。
将敏感数据存储在可移动介质上或者将备份存储在共享NAS/SAN服务器或者联机备份服务器上时,应使用加密备份。
使用加密时,openssl要求输入密码,然后才能创建,查看,打开或者还原备份中包含的文件。
这基于管道概念。

备份数据

下面显示了将tapetest的内容写入磁带的示例:

tar zcvf - /array22/vol4/home | openssl des3 -salt | dd of=/dev/st0

管理员或者备份操作员将输入加密密码,即上面的操作将使用提示的密码在CBC模式下使用三重DES对磁带进行加密。
您可以在脚本本身中输入密码:

tar zcvf - /array22/vol4/home | openssl des3 -salt  -k "Your-Password-Here" | dd of=/dev/st0

读取(列出)文件

执行命令,如下所示:

dd if=/dev/st0 | openssl des3 -d -salt | tar ztvf 

或者

dd if=/dev/st0 | openssl des3 -d -salt -k "Your-Password-Here" | tar ztvf 

恢复数据

使用以下命令读取和还原数据:

dd if=/dev/st0 | openssl des3 -d -salt | tar xzf 

或者

dd if=/dev/st0 | openssl des3 -d -salt -k "Your-Password-Here" | tar xzf 

其中:

  • dd:转换并复制文件。
  • /dev/st0:磁带设备名称。
  • openssl:OpenSSL工具箱命令行实用程序。
  • tar:tar归档实用程序。
  • des3:三重DES密码(三重DES是三重数据加密算法的通用名称)。
  • -salt:如果密钥是从密码派生的,则应该始终使用-salt选项,除非您希望与以前版本的OpenSSL和SSLeay兼容。如果没有-salt选项,则可以对密码执行有效的字典攻击并攻击流密码加密的数据。原因是没有盐,相同的密码始终会生成相同的加密密钥。使用盐时,将为盐保留加密数据的前八个字节:加密文件时会随机生成该盐,解密后会从加密文件中读取该盐。 (来源enc手册页)