加入收藏 | 设为首页 | 会员中心 | 我要投稿 江门站长网 (https://www.0750zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 安全 > 正文

怎样对LUKS加密的磁盘 分区执行远程增量备份?

发布时间:2022-05-11 09:24:41 所属栏目:安全 来源:互联网
导读:出于安全方面的原因,我们当中一些人用Linux统一密钥设置(LUKS)对家里或虚拟专用服务器(VPS)上的硬盘进行了加密;这些硬盘的容量很快就会增加到数十GB或数百GB。于是,我们在享受LUKS设备的安全性的同时,可能会开始考虑一种可行的远程备份解决方案。就安全的
         出于安全方面的原因,我们当中一些人用Linux统一密钥设置(LUKS)对家里或虚拟专用服务器(VPS)上的硬盘进行了加密;这些硬盘的容量很快就会增加到数十GB或数百GB。于是,我们在享受LUKS设备的安全性的同时,可能会开始考虑一种可行的远程备份解决方案。就安全的异地备份而言,我们需要解决方案在经过加密的LUKS设备的数据块层面运作,而不是在未加密的文件系统层面运作。于是到头来,我们发觉自己处于这样一种情形:每当我们想要备份,就要传输整个LUKS设备里面的数据(比如说假设200GB)。这显然不可行。那么,我们该如何处理这个问题呢?
 
        解决之道:Bdsync
 
        这时候,一款名为Bdysnc(这要感谢Rolf Fokkens)的出色的开源工具就可以派得上用场了。顾名思义,Bdsync可以通过网络同步“块设备”。就快速同步而言,Bdsync可以在本地/远程块设备中生成并比较MD5检验和,只同步有差异的数据。Rsync可以在文件系统层面完成任务,而Bdsync是可以在块设备层面完成任务。它自然也可以与经过加密的LUKS设备协同运行。相当棒!
 
        我假设你已经将LUKS加密的块设备配置成备份来源(比如/dev/LOCDEV),还假设你有一个远程主机,来源设备的内容将在主机上得到备份(比如/dev/REMDEV)。
 
你需要访问两个系统上的根帐户,并且设置无需密码的SSH访问,以便从本地主机访问远程主机。***,你还需要将Bdsync安装到两个主机上。
 
想在本地主机上开始进行远程备份过程,我们以root帐户的身份执行下列命令:
 
# bdsync "ssh root@remote_host bdsync --server" /dev/LOCDEV /dev/REMDEV | gzip > /some_local_path/DEV.bdsync.gz
 
这里需要一番解释。Bdsync客户端将以根帐户的身份与远程主机建立一条SSH连接,并且使用--server选项执行Bdsync客户软件。说明一下,/dev/LOCDEV是本地主机上的来源LUKS块设备,而/dev/REMDEV是远程主机上的目标块设备。它们应该是/dev/sda(面向整个磁盘)或/dev/sda2(面向一个分区)。本地Bdsync客户端的输出结果随后输出到gzip,gzip在本地主机构建DEV.bdsync.gz(所谓的二进制补丁文件)。
 
你***次运行上述命令后,要花很长的时间,具体取决于你的互联网/以太网速度以及/dev/LOCDEV的大小。切记:你的两个块设备(/dev/LOCDEV和/dev/REMDEV)其大小必须一样。

(编辑:江门站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!