Bir yapılandırma dosyasını kopyalamak yedek değildir ve kimsenin geri yükleyemediği bir yedek plan değildir. Arşiv, hizmetin kimliğini, çevresindeki politikayı ve hangi cihazlara hâlâ izin verildiğini söyleyen durumu içermelidir. Ayrıca korunmalıdır, çünkü çoğu kurulumda arşiv tam olarak VPN'in verdiğini verir. Neyin geri yüklenebilir olması gerektiğine karar vermek önce gelir; dosya listesi bu karardan doğar.

Yeniden kurma hedefiyle başlayın

Tek bir dosyayı bile listelemeden önce yeniden kurulmuş bir sunucunun ne yapması gerektiğini yazın: aynı tünelleri sonlandırmak, aynı kimliği sunmak ve şu anda iptal edilmiş cihazları reddetmek. Bu cümle çoğu naif kopyayı eler, çünkü bir yapılandırma dizini nadiren iptal listesini veya dış kimlik bağımlılığını içerir. Ayrıca ana makinenin dışında yaşayan parçaları da açığa çıkarır: DNS kayıtları, bulut güvenlik duvarı kuralları ve ağ geçidinin kimlik doğruladığı dizin. Bunları yok sayan bir plan, sağlıklı görünen ama kimseyi içeri almayan geri yüklenmiş bir sunucu üretir.

Malzemeyi üç kovaya ayırın: kimlik, yapılandırma ve durum. Kimlik, anahtarlar, sertifikalar ve bunları imzalayan otoritedir. Yapılandırma, arka plan programının ayarları, havuzlar, rotalar ve güvenlik duvarı politikasıdır; durum ise her gün değişen eşler, hesaplar ve iptaller kümesidir.

Kimlik, yeniden üretemeyeceğiniz kısımdır

Özel anahtarlar bellekten yeniden oluşturulamaz ve onlara bağlı sertifikalar seçtiğiniz değil devraldığınız bir takvime göre sona erer. Sunucu anahtarını, istemci hazırlama malzemesini ve sertifika otoritesini yedekleyin, sonra bunlardan hangilerinin çevrimdışı kalması gerektiğini not edin. Yalnızca çalışan ağ geçidinde yaşayan bir otorite anahtarı, her istemci için tam bir kimlik sıfırlamasından tek bir ihlal uzaktadır. Kasıtlı olarak başka yerde saklananları kaydedin ki kimse bunları daha düşük korumalı bir arşive kopyalamasın.

İptal, planda kendi satırını hak eder. Dünün yapılandırmasını geri yüklemek, bugün kaldırdığınız bir kimliği yeniden devreye alabilir, bu da bir geri yüklemeyi güvenlik olayına dönüştürür. Geçerli iptal durumunu geri döneceğiniz anlık görüntüden bağımsız bir yerde tutun ve her geri yüklemeden sonra kontrol edin.

Durumu tek bir anda yakalayın

Hizmet yazarken alınan bir kopya tutarsız bir envanter üretir ve tutarsız kimlik verileri daha eski temiz bir kopyadan daha kötüdür. Her depo için desteklenen dışa aktarma yolunu kullanın, sonra anlık görüntünün zamanını kaydedin, çünkü geri yükleme hakkındaki her sonraki soru ona bağlıdır.

wg showconf wg0 > /srv/backup/wg0.runtime.conf
sqlite3 /var/lib/vpn/admin.db ".backup '/srv/backup/admin.db'"
cp -a /etc/wireguard /srv/backup/etc-wireguard
sha256sum /srv/backup/*.conf > /srv/backup/MANIFEST

İlk komut, çalışan arayüzü yapılandırma olarak geri yazdırır; bu, yönetim aracı yerine elle eklenmiş eşleri yakalamanın en hızlı yoludur; bunu wg(8) kılavuzu belgeler. sqlite satırı bir yönetim veritabanı için kalıptır: yedekleme komutu yazıcı çalışmaya devam ederken tutarlı bir kopya üretir. Dizin kopyası izinleri korur, bu önemlidir çünkü o anahtar dosyalarını yalnızca root okuyabilir. Manifest, eksiksiz bir arşivi kesilmiş olandan ayırmanızı sağlar.

Geri yüklemeyi mümkün kılın ve sonra deneyin

Arşivi şifreleyin ve kurtarma anahtarını geldiği makineden başka bir yerde tutun. Parolası yalnızca başarısız sunucuda bulunan bir yedek, kimsenin açmayacağı bir yedektir. Erişimi zaten ağ geçidini yönetebilen kişilerle sınırlayın ve her erişimi günlüğe kaydedin. Geri yüklemeyi yalıtılmış bir ağda test edin, çünkü üretimin yanında ayağa kaldırılan klonlanmış bir kimlik, aynı eş anahtarı için yanıt veren iki sunucu oluşturur.

Dışlamaları içerik kadar dikkatli belgeleyin. Bulut güvenlik duvarı kuralları, DNS kayıtları ve harici bir dizin her biri kendi kurtarma adımına ihtiyaç duyabilir. Başarılı bir dosya kopyası hizmetin geri döndüğünün kanıtı değildir; sayılan tek kanıt, orijinalle aynı kabul testini geçen yeniden kurulmuş bir uç noktadır.

İlgili makaleler