OffshoreVps
Keamanan19 Okt 20269 menit bacaOleh tim OffshoreVps

Enkripsi VPS dengan LUKS: Penyiapan dan Batasannya

Siapkan enkripsi disk LUKS pada server sewaan: volume data terenkripsi, cara kerja buka kunci jarak jauh untuk disk root, dan model ancaman yang jujur.

Enkripsi disk melindungi data saat tersimpan. Di VPS, host mengendalikan hypervisor, sehingga tidak dapat menghentikan penyedia yang bertekad untuk membaca memori. Yang dilakukannya dengan baik adalah melindungi dari cadangan yang hilang, disk yang didaur ulang, dan penyimpanan yang dicuri atau disita. Ketahui mana dari itu yang Anda hadapi sebelum menghabiskan waktu untuknya.

Jendela terminal di VPS yang menampilkan perintah untuk mengenkripsi VPS dengan LUKS, diawali dengan “sudo apt install -y cryptsetup”
Jenis perintah yang akan Anda jalankan di server dalam panduan ini.

Tentukan dari apa Anda melindungi diri

  • Disk yang dipensiunkan atau disalin: enkripsi sangat membantu.
  • Snapshot yang bocor: enkripsi membantu jika kunci tidak disimpan bersama snapshot.
  • Penyerang langsung pada sistem yang berjalan: enkripsi tidak membantu, karena volume sudah terbuka.
  • Hypervisor berbahaya: enkripsi tidak membantu di VPS. Server dedicated dengan kendali penuh atas perangkat keras adalah opsi yang lebih kuat.

Opsi 1: volume data terenkripsi

Ini tempat paling aman untuk memulai. Pasang disk kedua atau buat file loop, dan simpan data sensitif di sana. Contoh ini memakai perangkat kosong bernama /dev/vdb. Periksa ulang nama perangkat, karena memformat menghancurkan isinya.

sudo apt install -y cryptsetup
sudo cryptsetup luksFormat /dev/vdb
sudo cryptsetup open /dev/vdb secure
sudo mkfs.ext4 /dev/mapper/secure
sudo mkdir -p /srv/secure
sudo mount /dev/mapper/secure /srv/secure

Untuk menutupnya lagi: sudo umount /srv/secure && sudo cryptsetup close secure.

Langkah-langkah panduan ini secara berurutan: 1. Tentukan dari apa Anda melindungi diri; 2. Opsi 1: volume data terenkripsi; 3. Opsi 2: kontainer berbasis file; 4. Opsi 3: disk root dengan buka kunci jarak jauh; 5. Tangani kunci dengan benar
Langkah-langkah dalam panduan ini, secara berurutan.

Opsi 2: kontainer berbasis file

Jika tidak ada disk cadangan, gunakan file sebagai kontainer.

sudo fallocate -l 20G /root/vault.img
sudo cryptsetup luksFormat /root/vault.img
sudo cryptsetup open /root/vault.img vault
sudo mkfs.ext4 /dev/mapper/vault
sudo mount /dev/mapper/vault /srv/vault

Opsi 3: disk root dengan buka kunci jarak jauh

Mengenkripsi disk root memerlukan cara memasukkan frasa sandi saat boot, sebelum jaringan aktif. Jawaban yang umum adalah server SSH kecil (dropbear) di dalam initramfs. Ini bergantung pada penyedia Anda yang mengizinkan instalasi image kustom atau instal ulang dengan partisi Anda sendiri, jadi periksa itu terlebih dahulu. Banyak panel VPS tidak mengizinkannya, dan kesalahan dapat membuat server tidak bisa boot, jadi siapkan opsi rescue.

Secara garis besar: instal dengan root terenkripsi, tambahkan dropbear-initramfs, letakkan kunci publik SSH Anda di /etc/dropbear/initramfs/authorized_keys, buat ulang initramfs, lalu reboot dan buka kunci melalui SSH dengan cryptroot-unlock.

Tangani kunci dengan benar

  • Gunakan frasa sandi yang panjang dan simpan di pengelola kata sandi, bukan di server.
  • Cadangkan header LUKS: sudo cryptsetup luksHeaderBackup /dev/vdb --header-backup-file header.img. Simpan secara offline.
  • Jangan buka kunci otomatis dengan file kunci yang disimpan di disk yang sama. Itu menggagalkan tujuannya.
  • Ingat bahwa membuka kunci saat boot berarti reboot memerlukan kehadiran Anda.

Padukan enkripsi dengan cadangan terenkripsi yang solid dan dasar-dasar dari penguatan 15 menit.