Cadangan Server VPN: Tentukan Apa yang Harus Dapat Dipulihkan
Identitas, konfigurasi, dan status adalah tiga masalah pencadangan yang berbeda. Tentukan dulu target pembangunan ulang, ambil satu momen, lalu uji pemulihannya.
Menyalin file konfigurasi bukanlah cadangan, dan cadangan yang tidak dapat dipulihkan siapa pun bukanlah rencana. Arsip harus memuat identitas layanan, kebijakan di sekitarnya, dan status yang menyatakan perangkat mana yang masih diizinkan. Arsip itu juga harus dilindungi, karena pada sebagian besar penerapan arsip memberikan persis apa yang diberikan VPN. Menentukan apa yang harus dapat dipulihkan datang lebih dulu; daftar berkas mengikuti keputusan itu.
Mulai dari Target Pembangunan Ulang
Tuliskan apa yang harus dilakukan server yang dibangun ulang sebelum mendaftar satu berkas pun: mengakhiri terowongan yang sama, menampilkan identitas yang sama, dan menolak perangkat yang saat ini dicabut. Kalimat itu menyingkirkan sebagian besar salinan naif, karena direktori konfigurasi jarang memuat daftar pencabutan atau ketergantungan identitas eksternal. Kalimat itu juga menyingkap bagian yang hidup di luar host, seperti catatan DNS, aturan firewall awan, dan direktori tempat gateway mengautentikasi. Rencana yang mengabaikannya menghasilkan server yang dipulihkan tampak sehat dan tidak menerima siapa pun.
Kelompokkan materi ke dalam tiga keranjang: identitas, konfigurasi, dan status. Identitas adalah kunci, sertifikat, dan otoritas yang menandatanganinya. Konfigurasi adalah pengaturan daemon, kumpulan, rute, dan kebijakan firewall, sedangkan status adalah himpunan peer, akun, dan pencabutan yang berubah setiap hari.
Identitas Adalah Bagian yang Tidak Dapat Anda Buat Ulang
Kunci privat tidak dapat dibuat ulang dari ingatan, dan sertifikat yang bergantung padanya kedaluwarsa menurut jadwal yang Anda warisi, bukan pilih. Cadangkan kunci server, materi penyediaan klien, dan otoritas sertifikat, lalu catat mana di antaranya yang seharusnya tetap luring. Kunci otoritas yang hanya hidup di gateway yang berjalan berjarak satu kompromi dari penyetelan ulang identitas penuh bagi setiap klien. Catat apa yang sengaja disimpan di tempat lain agar tidak ada yang menduplikasinya ke arsip dengan perlindungan lebih rendah.
Pencabutan layak mendapat barisnya sendiri dalam rencana. Memulihkan konfigurasi kemarin dapat mengembalikan identitas yang Anda hapus hari ini, yang mengubah pemulihan menjadi insiden keamanan. Simpan status pencabutan saat ini di tempat yang tidak bergantung pada cuplikan yang akan Anda kembalikan, dan periksa setelah pemulihan apa pun.
Ambil Status pada Satu Momen
Salinan yang diambil saat layanan menulis menghasilkan inventaris yang tidak konsisten, dan data identitas yang tidak konsisten lebih buruk daripada salinan bersih yang lebih lama. Gunakan jalur ekspor yang didukung untuk setiap penyimpanan, lalu catat waktu cuplikan, karena setiap pertanyaan berikutnya tentang pemulihan bergantung padanya.
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
Perintah pertama mencetak antarmuka yang berjalan kembali sebagai konfigurasi, yang merupakan cara tercepat menangkap peer yang ditambahkan dengan tangan alih-alih dengan alat manajemen; ini dijelaskan dalam manual wg(8). Baris sqlite adalah pola untuk basis data manajemen: perintah cadangan menghasilkan salinan konsisten sementara penulis tetap berjalan. Salinan direktori mempertahankan izin, yang penting karena berkas kunci itu hanya dapat dibaca oleh root. Manifes adalah yang memungkinkan Anda membedakan arsip lengkap dari arsip terpotong.
Buat Pemulihan Mungkin, Lalu Cobalah
Enkripsi arsip dan simpan kunci pemulihan di tempat selain mesin asalnya. Cadangan yang frasa sandinya hanya ada di server yang gagal adalah cadangan yang tidak akan dibuka siapa pun. Batasi pengambilan pada orang yang sudah dapat mengelola gateway, dan catat setiap pengambilan. Uji pemulihan di jaringan terisolasi, karena identitas kloning yang dinyalakan di samping produksi menciptakan dua server yang menjawab untuk kunci peer yang sama.
Dokumentasikan pengecualian sama telitinya dengan isi. Aturan firewall awan, catatan DNS, dan direktori eksternal masing-masing mungkin memerlukan langkah pemulihannya sendiri. Salinan berkas yang berhasil bukan bukti bahwa layanan kembali; satu-satunya bukti yang dihitung adalah titik akhir yang dibangun ulang dan lulus uji penerimaan yang sama seperti aslinya.