浅谈Symantec Backup Exec11d的数据加密功能

    为什么需要加密磁带上的数据?


    “2005年2月25日,美国银行对外发布公告,称其去年12月份在将磁带从银行搬迁到备份仓库时丢失了包含约120万联邦雇员个人资料的计算机备份磁带,其中还包括持有美国银行发行的Visa卡的某些参议员的个人资料。”


    两年后的今天,相信很多人还对这条新闻记忆犹新,虽然美国银行的磁带丢失事件没有造成严重的后果,但该事件的发生对数据保护产品厂商和用户的影响程度并不亚于美国的9?11事件。人们开始意识到一个新问题:如果不能很好地管理自己的数据备份,保证这些数据拷贝的安全性,可能比没有备份还要糟糕。试想一下,如果一盘存有公司机密信息的磁带不慎丢失或者被盗,而这些机密信息在写入磁带时又没有采用任何加密手段进行处理,会导致什么样的后果呢?拾获或者窃取磁带的人可以轻易地读取里面的数据,并可能对这些数据加以滥用,最终可能给公司带来无法估量的损失。类似的事件也可能发生在公司内部,有机会接触到磁带的人可以通过任意一台备份服务器将未加密的数据恢复到由他掌管的系统,进而可以不受限制地访问他原本没有权限访问的数据,多数备份软件都提供重定向恢复的功能,要完成以上操作非常简单。


    对数据安全性要求较高的公司都采取了一定的措施来保护他们的数据,服务器和个人计算机上的敏感数据都采用了加密存储技术,在开放式网络中的通讯流量也都采用了加密传输等保护措施。但是他们往往忽视了一点,备份软件在备份这些数据时,可能把未经加密的数据直接写入了磁盘或磁带。


    Symantec Backup Exec 11d的数据加密功能介绍


    Symantec与Veritas公司合并之后,开始整合两家公司原有的产品和技术,原Veritas公司的数据保护产品在安全性方面不断得到加强,Backup Exec 11d就是一个很好的例子,Symantec在Backup Exec 11d中增添了数据加密技术,一种真正的备份数据保护技术,与以往版本的Backup Exec中所提供的验证口令的磁带保护方法有着本质的区别。下面我们就来了解一下这个全新的数据加密特性。


    为了防范他人非法访问备份磁带窃取数据,Backup Exec 11d可以采用AES加密技术将存储于磁带上的用户数据进行加密。要使用这一功能,用户先要定义一个口令,Backup Exec 11d以该口令为种子,生成一个128位或256位的加密密钥,每个口令都只能得到唯一的加密密钥。加密密钥分为两种:受限密钥和普通密钥,备份时你可以任意选择密钥,但那些使用受限密钥加密的备份集只能由密钥的主人(密钥与Backup Exec中的用户登录账号相对应)进行恢复。


    为了保证密钥的私密性,Backup Exec 11d不保存用于生成密钥的口令,只将加密密钥存储在数据库中,供加密或解密数据时使用。数据库中的密钥只能在生成密钥的备份服务器上使用,但是你可以在其它的备份服务器上使用相同的口令生成相同的加密密钥。



图1:添加加密密钥


    下面我们来了解一下使用加密技术的备份流程:
    1,用户在作业设置中选择现有的加密密钥或输入口令以生成新密钥。与备份作业相关联的密钥、加密级别和加密算法等信息都保存在数据库中。
    2,在作业初始化阶段,备份服务器与远程代理通讯,告知远程代理采用何种加密算法,并将密钥传送给远程代理,为保证密钥的安全,密钥通过公共密钥/私有密钥加密技术传输。
    3,远程代理得到密钥后,按照介质服务器指定的加密方式加密数据。
    4,加密后的数据经网络传递到备份服务器,写入磁带或磁盘。备份集带有一个标记,用于指示备份集中的数据是否经过加密。编录信息中也记录了加密数据时所用密钥的标识符(密钥的哈希值)。
    5,备份完成时,远程代理丢弃刚刚用过的密钥。



图2:为备份作业指定加密密钥


    恢复加密备份数据的流程刚好相反:
    1,备份服务器发现备份集中包含加密数据,将在数据库中寻找加密数据时所用的密钥,如果找不到合适的密钥,将提示用户输入口令以重新生成加密时所使用的密钥。
    2,备份服务器将找到的密钥利用公共密钥/私有密钥加密技术传递给远程代理。
    3,备份服务器从备份集的存储位置读出加密数据,传递给远程代理,远程代理将数据解密,恢复到指定的位置。
    4,恢复过程结束后,远程代理丢弃刚刚用过的密钥。



图3:恢复窗口中的加密备份集


    很明显,精心设计的备份/恢复流程可以充分保证数据和密钥的安全,数据存储和数据传输都采用了可靠的加密技术。即便备份服务器与远程代理之间的连接建立在开放式的公共网络之上,也无需担心数据在传输过程中被他人截获。


    如果你的网络中安装有多台备份服务器并使用了集中管理服务器功能组件,在主控服务器上定义的作业在分派到受控服务器执行时,所需的加密密钥也会传送到受控服务器(同样采用公共密钥/私有密钥加密技术传送),作业完成之后该加密密钥将会删除。如果作业定义在受控服务器之上,密钥会长期保存在受控服务器。如果采用集中式编录,密钥在作业完成后将从受控服务器删除,如果采用分布式编录,密钥会在受控服务器上长期保存。


    加密功能可以与智能灾难恢复功能同时使用,在定义用于灾难恢复的备份作业时,可以加密备份数据,在执行备份服务器本地灾难恢复时,向导会提示用户输入恢复操作所需的口令。在执行远程的灾难恢复时,要求备份服务器上存在所有恢复操作所需的密钥。


    几点注意事项


    通过口令生成加密密钥的过程是不可逆的,但是为了防范他人用蛮力攻击的方法猜测口令,要保证用于生成密钥的口令具有一定的复杂度。


    用户要牢记自己的口令,如果没有了加密密钥,又不知道当初生成密钥时使用的口令,将无法恢复使用该密钥加密的所有数据,即使是软件厂商也无能为力。


    如果需要同时使用数据加密和压缩功能,应该在首先执行压缩操作,加密后的数据压缩比率很低。因为磁带设备的硬件压缩功能只能在数据最后写入磁带时发挥作用,要想在Backup Exec 11d中同时使用这两种功能,则只能启用软件压缩。


    数据加解密过程发生在被保护的计算机上,加解密过程可能会对该计算机上的其它应用造成一定的影响,加解密过程占用系统资源的多少与密钥的长度密切相关,所以请根据安全性和性能要求综合考虑密钥的长度。


    本文节选自《信息存储》杂志2006年度特刊,点击此处浏览全部文章。
    想要免费申请订阅《信息存储》杂志,请点击此处。