我正在考虑使用云服务来备份我的客户的网站之一。
我(客户)的主要担心是(按重要性递减)
理想情况下,我希望服务没有太长的联系(即我更喜欢一种“即用即付”服务)
我也想避免供应商locking,在那里几乎不可能移动到另一个服务。
我想要一些一般的指导方针:
服务器软件要么是Ubuntu或Debian(我可能会发布一个问题,作为服务器哪个操作系统 – 我已经熟悉Ubuntu)
任何不包括所有者拥有密钥的客户端encryption的解决scheme都不符合首先要求的(IP保护/安全) – 服务器端的任何破解都会公开未encryption的数据。 这就排除了云端同步系统,如拥有密钥的Dropbox。
为了避免在网站的服务器上托pipe所有重要的encryption密钥,而这些密钥在某些时候也可能被黑客入侵,我将这样做:
步骤1:服务器(1)从(2)中提取备份,所以网站服务器的大部分黑客都不会损害备份。 encryption发生在这一点上。
步骤2:服务器(1)将encryption的备份推送到(3),以便进行异地备份。 如果在步骤1中对备份进行了encryption,则可以使用本地rsnapshot树的rsync镜像到远程系统。
所有各种主机的安全性是重要的,所以这应该进行调整,以满足客户的安全形象,即分析威胁,风险,攻击媒介等。Ubuntu的服务器并不是一个不好的开始,因为它有频繁的安全更新5年,但所有服务器都需要注意安全性。
这个设置提供了2个独立的备份,其中一个可以是高度可用的云存储服务,以拉模式运行,因此大多数网站攻击不能同时销毁备份,而且它使用经过充分validation的开源工具需要大量的pipe理。
由于此设置使用标准的SSH和rsync,因此select合适的提供者具有正确的正常运行时间保证,强大的安全性等应该更容易。您不必locking长期合同,并且如果备份服务具有灾难性失败,你仍然有一个本地备份,可以很容易地切换到另一个备份服务。
软件方面,考虑使用非对称encryption和愚蠢接收器(非云howto )进行增量备份的重复性 。
我总是告诉我的客户,最好的,最便宜的和最有效的备份解决scheme就是为了您自己的目的而自己构build的解决scheme。
在为客户端构build系统时,我使用rsync和SSH密钥来处理serverA和serverB之间的身份validation,其中serverA包含要备份的数据。 归档和rsync数据的命令包含在bash脚本中的非web可访问的目录中,每隔H小时由cron调用(每天24个,等等)
备份服务器serverB将独自用于备份。 我总是build议我的客户使用SSH密钥身份validation的冗长密码,以允许下载备份和备份。 有时,我的客户需要在D天内保存备份,所以我编写了一些脚本来处理(从活动备份目录获取数据,应用时间戳,添加到另一个目录中的存档)。
对于小型企业/消费者,我build议亚马逊的存储服务 。
还有一个相当模糊的保证:“提供authentication机制来确保数据安全,防止未经授权的访问”
虽然bluenove正与S3合作,但Amazon的系统并不是真正的直接备份解决scheme,而是一个原始数据存储解决scheme,仍然需要使用前端系统进行备份,无论是几个API调用还是一个完整的备份pipe理套件。 像JungleDisk服务器版 ,在后端使用S3,但提供更好的界面作为备份解决scheme,可能会更好。
另外,JungleDisk会为您提供内置的encryptionfunction,无论您计划如何连接到S3 /“云端”,都需要添加内容。 他们也有一些相当不错的Linux客户端软件。
我喜欢在Amazon AWS中存储备份,并使用免费工具s3cmd ( http://s3tools.org/s3cmd )
它可以很容易地安装(Debian:apt-get install s3cmd)。
您只需要一个Amazon AWS账户即可将您的文件存储在S3上。 然后一个简单的命令就可以运行你的备份,甚至可以不计分或作为一个同步解决scheme,例如:
s3cmd sync /srv/backup s3://your-bucket-name-at-amazon/
确保你运行
s3cms --configure
首先input您的AWS凭证。