在远程计算机上创建受密码保护的目录存档

在远程计算机上创建受密码保护的目录存档

这是我想要实现的目标:本地机器上有一个相当大的(~15TB)目录,我想将其存档在远程机器上。

这些是我想到的先决条件

  1. 由于本地机器的存储限制,无法使用临时本地文件
  2. 数据应以归档流(例如 tar)的形式到达,以便子目录中的小文件不会拖慢远程计算机上的文件系统
  3. 文件传输应该加密
  4. 远程机器上的档案必须受密码保护,以防止他人监视我的数据
  5. 连接速度足够快,因此不需要压缩

我尝试了 tar、gpg 和 ssh 的多种组合,但无法正确地将它们连接在一起。

答案1

在源计算机上使用此命令

tar cf - /path/to/your/dir | gpg -o - --symmetric - | ssh user@remotehost "cat - > /path/to/destination/file.tar.gpg"
  1. tar cf - /path/to/your/dir正在创建您的档案但将其发送到标准输出
  2. gpg -o - --symmetric -正在加密tar 文件通过管道在标准输入上接收(这是通过命令的最后一个 - 完成的)并将结果输出到标准输出(通过 -o - 完成)
  3. ssh user@remotehost "cat - > /path/to/destination/file.tar.gpg"使用 ssh 将前一个命令的标准输出传输为该命令的标准输入cat,最终重定向到远程计算机上的文件

相关内容