Yedeklemeler için bir bulut hizmeti nasıl seçilir


12

Müşterinin web sitesinden birini yedeklemek için bir bulut hizmeti kullanmayı düşünüyorum.

Benim (müşterilerim) temel kaygılarım (azalan önem sırasına göre)

  1. IP'nin korunması (ticari sırlar, kaynak kodu), kullanıcı hesabı bilgileri vb.
  2. Servis sağlayıcı tarafından sunulan çalışma süresi garantisi (web sunucusu kapalı kalma sürelerini en aza indirmek için)
  3. Maliyet
  4. Yükleme / indirme hızları

İdeal olarak, ben uzun bir kravat olmayan hizmet istiyorum (yani "sen-go-öde" hizmet bir tür tercih ederim)

Ayrıca başka bir servise taşınmanın imkansız olduğu satıcı kilitlenmesini önlemek istiyorum.

Bazı genel yönergeler istiyorum:

  1. Bir servis sağlayıcı seçme hakkında
  2. Alandaki ana oyuncular kimler
  3. aşağıdakiler için kullanılacak yazılım önerisi: kaydedilmiş / geri yüklenen dosyaları yedekleme / geri yükleme / ve yükleme / indirme

Sunucu yazılımı ya Ubuntu ya da Debian olacak (Muhtemelen hangi işletim sisteminin sunucu olarak kullanılacağı ile ilgili bir soru yayınlayacağım - Ubuntu'ya zaten aşinayım)


Web sitesi ne kadar büyük? Büyük veritabanları içeriyor mu? Müşterinin ne kadar harcama yapmak istediğine dair herhangi bir top parkı rakamı var mı? (100 $ / ay, 10.000 $ / ay?)
RJFalconer

3
"ticari sırlar ve kaynak kodu" söz konusu olduğunda, bir hizmetin ne kadar saygın göründüğüne bakılmaksızın, bu kadar önemli bilgiler "buluta" ait değildir.

Yanıtlar:


4

Sahip tarafından tutulan anahtarlarla istemci tarafında şifreleme içermeyen herhangi bir çözüm, belirtilen ilk gereksinimi karşılamayacaktır (IP koruma / güvenlik) - sunucu tarafındaki herhangi bir saldırı, şifrelenmemiş verileri açıklar. Bu, anahtarların sahibi olan Dropbox gibi bulut senkronizasyon sistemlerini devre dışı bırakır.

Web sitesinin sunucusunda tüm önemli şifreleme anahtarlarını barındırmayı önlemek için, bu da bir noktada saldırıya uğraması muhtemeldir, işte şunları yapardım:

  1. Müşterinin kendi sitesindeki şirket içi yedekleme sunucusu - diğer sunucular için şifreleme anahtarları ve SSH anahtarları vardır
  2. Web sitesini barındıran sunucu - bir web barındırma sunucusu olabilir
  3. Bulut yedekleme sunucusu veya hizmeti

Adım 1: Sunucu (1), yedeği (2) 'den alır, böylece web sitesi sunucusunun çoğu korsanlığı yedeklerden ödün vermez. Şifreleme bu noktada gerçekleşir.

  • Bu web barındırma ve şirket içi yedekleme sunucusunda minimum gereksinimleri olduğundan, anahtar tabanlı giriş kullanarak SSH üzerinden rsnapshot kullanacağım - yedekleme için büyük bir DB yoksa bant genişliğinde çok verimli ve sitenin birden çok sürümünü depolar, ve ayrıca eski yedeklemelerin temizlenmesini de sağlar.
  • Şifreleme, GPG gibi herhangi bir dosyadan dosyaya aracıyla, rsnapshot ağacını başka bir ağaca kopyalayarak yapılabilir - veya 2. adımda yinelenerek disk alanından tasarruf edebilirsiniz.
  • Yedekleme sunucusundan "çekin" önemlidir - ana sunucu (2) yedekleme sunucusu için parolalara / anahtarlara sahipse, bilgisayar korsanları ana sunucuyu hackledikten sonra yedeklemeleri silebilir ve bazen silebilir (aşağıya bakın). Gerçekten gelişmiş saldırılar, yedekleme sunucusunu tehlikeye atabilecek trojanlı SSH ikili dosyalarını yükleyebilir, ancak bu çoğu şirket için daha az olasıdır.

2.Adım: Sunucu (1), site dışında bir yedekleme olması için şifrelenmiş yedekleri (3) 'e iter. Yedeklemeler 1. adımda şifrelenmişse, uzaktaki sisteme yerel rsnapshot ağacının rsync aynasını kullanabilirsiniz.

  • Sahtekarlar uzak sunucuya doğrudan şifrelemek ve yedekleme şifresiz rsnapshot ağacına iyi bir seçenek olacaktır. Duplicity'nin özellikleri , GPG şifreli tar arşivlerini kullanarak rsnapshot'tan biraz farklıdır, ancak uzak ana bilgisayarda yedek şifreleme sağlar ve yalnızca bu ana bilgisayarda SSH gerektirir (veya Amazon S3 kullanabilir). Yineleme sabit bağlantıları desteklemez , bu nedenle bu gerekliyse (örn. Tam bir sunucu yedeklemesi için), bir komut dosyası rsnapshot ağacını (sabit bağlantıları destekleyen) bir tar dosyasına (belki de yalnızca> 1 sabit bağlantı, ki bu oldukça küçük olacaktır) böylece çiftlik tar dosyasını yedekleyebilir.
  • Uzak sunucu yalnızca bir SSH ana bilgisayarı olduğundan, muhtemelen rsync ile, bir web barındırma (ancak farklı bir barındırma sağlayıcısından ve ülkenin farklı bir kesiminden) veya rsync ve / veya SSH sağlayan bir bulut hizmeti olabilir - bkz. Bu cevap bqbackup ve rsync.net önerisi için buluta bulut için bu cevap , ancak belirtilen yedekleme kurulum kabul etmiyorum.
  • Amazon S3'ü yinelenen uzak sunucu olarak kullanabilirsiniz, bu da size gerçekten iyi kullanılabilirlik sağlar, ancak büyük yedeklemeler için daha pahalıya mal olabilir.
  • Uzaktan şifrelenmiş yedeklemeler için diğer seçenekler Boxbackup (olgun değil, bazı güzel özellikler) ve Tarsnap (basit komut satırı arayüzü, iyi veri tekilleştirme ve çok kapsamlı şifreleme ile Amazon S3 tabanlı ticari bulut hizmeti).

Çeşitli ana bilgisayarların güvenliği önemlidir, bu nedenle bu, istemcinin güvenlik profilini karşılayacak şekilde ayarlanmalıdır, yani tehditleri, riskleri, saldırı vektörlerini vb. Analiz edin. Ubuntu Server, 5 ancak tüm sunucularda güvenliğe dikkat edilmesi gerekir.

Bu kurulum, biri yüksek oranda kullanılabilir bir bulut depolama hizmeti olabilecek 2 bağımsız yedekleme sağlar, bu nedenle web sitesindeki saldırıların çoğu yedeklemeleri aynı anda yok edemez ve kanıtlanmamış açık kaynaklı araçlar kullanır çok fazla yönetim gerektirir.

  • Bilgisayar korsanları bazen tüm yedeklemeleri web sitesini hackleme ile aynı anda sildiğinden bağımsız yedeklemeler kritik öneme sahiptir - en son durumda bilgisayar korsanları siteler yerine web barındırma ortamını hackleyerek yedekleme de dahil olmak üzere 4800 web sitesini yok etti . Ayrıca bkz bu cevabı ve bu bir .
  • Rsnapshot ile geri yükleme çok kolaydır - her anlık görüntü ağacında yedeklenen her dosya için bir dosya vardır, bu yüzden Linux araçları ve rsync ile dosyaları bulun veya web sitesine geri gönderin. Yerinde yedekleme sunucusu bir nedenden dolayı kullanılamıyorsa, bulut yedekleme sunucusundan geri yüklemek için sadece yineleme kullanın veya yedeklemeleri geri yüklemek için GPG, rdiff ve tar gibi standart araçları kullanabilirsiniz.

Bu kurulum standart SSH ve rsync kullandığından, doğru çalışma süresi garantisi, güçlü güvenlik vb. İle uygun bir sağlayıcı seçmek daha kolay olmalıdır. Uzun bir sözleşmeye kilitlenmenize gerek yoktur ve yedekleme hizmetinin felaket olması durumunda hata, hala yerel bir yedeklemeye sahipsiniz ve başka bir yedekleme hizmetine kolayca geçebilirsiniz.


rsnapshot sadece sabit bağlantıları desteklemekle kalmaz, aynı zamanda dahili gösterimlerinde de kullanır. Bu nedenle, yineleme rsnapshot veri deposunu katlamadan doğru şekilde yedeklemez.
ptman

@ptman: Bu doğru - ancak tüm rsnapshot ağacının katlanması gerekmiyor. Yedeklenen dizin ağacının en son anlık görüntüsüne sahip olan yalnızca rsnapshot ağacındaki rsnapshot "daily.0" dizinini yedeklemek için yineleme kullanırdım. Rsnapshot'ın daily.0, daily.1, vb. Arasındaki anlık görüntü bağlantıları, yalnızca günlük.0 anlık görüntü ağacı içindeki iki dosya arasındaki bağlantıları gören ve sistemdeki sabit bağlantılara karşılık gelen yinelenen yedekleme ile ilgili değildir. Tar bu bağlantıları yakalayabilir Tamam ve yineleme onları tar dosyası üzerinden yedekleyebilir.
RichVel


1

Müşterilerime her zaman en iyi, en ucuz ve en verimli yedekleme çözümünün, kendi amaçlarınız için kendi oluşturduğunuz çözüm olduğunu söylüyorum.

İstemcilerim için bir sistem oluşturduğumda, serverA ile yedeklenecek verileri içeren serverA ve serverB arasındaki kimlik doğrulamasını işlemek için SSH anahtarlarıyla rsync kullanıyorum. Verileri arşivleme ve yeniden senkronize etme komutu, her H saatte bir cron tarafından çağrılan (günlük 24 vb.) Web'e erişilemeyen bir dizinde bir bash betiğinde bulunur.

Yedek sunucu, sunucuB, yedeklemeler için YALNIZCA kullanılacaktır. Müşterilerime her zaman yedeklerin indirilmesine ve yedeklenmesine izin vermek için SSH anahtar kimlik doğrulaması ile son derece uzun bir şifre kullanmalarını öneriyorum. Bazen, müşterilerim D gün boyunca kaydedilecek yedeklere ihtiyaç duyuyor, bu yüzden bunu işlemek için bazı komut dosyaları yazıyorum (etkin yedekleme dizininden veri alın, bir zaman damgası uygulayın, başka bir dizindeki bir arşive ekleyin).


0

Küçük işletme / prosumer için Amazon'un Depolama Hizmetini öneriyorum .

  • Bölge kontrolü (AB'de saklanan nesneler AB'den asla ayrılmaz).
  • Herhangi bir faturalandırma döngüsü için % 99,9 kesintisiz çalışma süresi
  • Aylık depolanan GB başına 0,150 USD
  • GB başına 0,170 USD
  • Haziran 2010'a kadar ücretsiz yükleme, daha sonra GB başına 0,10 ABD doları

Ve "Verilerin yetkisiz erişimden korunmasını sağlamak için kimlik doğrulama mekanizmaları sağlandığı" gibi oldukça belirsiz bir güvence


0

Bluenovember S3 ile doğru yolda olsa da, Amazon'un sistemi gerçekten bir damla yedekleme çözümü değil, birkaç API çağrısı veya bir tam yedekleme yönetimi paketi. Böyle bir şey JungleDisk Server Edition arka uç at S3 kullanan ancak bir yedekleme çözümü olarak kullanılmak üzere daha iyi bir arayüz sağlar, muhtemelen daha iyi olurdu.

Buna ek olarak, JungleDisk size S3 / "bulut" a nasıl bağlanacağınızı düşünmeksizin eklemeniz gereken bir şifreleme oluşturmanızı sağlar. Linux için de oldukça güzel bir istemci yazılımı var.


0

Yedeklememi Amazon AWS içinde saklamayı seviyorum ve ücretsiz s3cmd aracını kullanıyorum ( http://s3tools.org/s3cmd )

Kolayca kurulabilir (Debian: apt-get install s3cmd).

Dosyalarınızı S3'te depolamak için bir Amazon AWS hesabına ihtiyacınız var. Daha sonra basit bir komut, yedeklemenizi artımlı veya eşitleme çözümü olarak bile çalıştırabilir, örneğin:

s3cmd sync /srv/backup  s3://your-bucket-name-at-amazon/

Koştuğunuzdan emin olun

s3cms --configure 

önce AWS kimlik bilgilerinizi girin.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.