Official Website PATIKAB CSIRT
 
LOGO PATIKAB CSIRT
Beranda Artikel Teknologi Amankan Flashdisk Anda dengan Enkripsi LUKS

Amankan Flashdisk Anda dengan Enkripsi LUKS

Artikel Teknologi



Dalam artikel ini kita akan mencoba mengamankan data pada penyimpanan external (flashdisk, SSD dan Hardisk Eksternal) dengan menggunakan aplikasi LUKS (Linux Unified Key Setup) pada Linux.


LUKS sendiri merupakan aplikasi sistem enkripsi terpadu yang untuk berbagai program enkripsi yang terdapat pada distro linux. Anda dapat menggunakan aplikasi ini melalui paket cryptsetup sebagai antarmuka CLI.


Persiapan


Pastikan distro linux Anda sudah terinstal aplikasi cryptsetup. Kebanyakan distro sudah menginstal aplikasi ini sebgai syarat melakukan FDE (Full Disk Encryption).


Selain itu siapkan flashdisk (atau harddisk eksternal) Anda. Pastikan anda sudah mengkosongkanya atau membackup data didalamnya karena proses ini akan menimpa (overwrite) data pada perangkat tersebut.


(Anda juga bisa melakukan langkah 1 dan 2 menggunakan Aplikasi GUI seperti Gparted dan Gnome Disk)


1. Identifikasi Drive Anda


Gunakan lsblk untuk melihat daftar block device yang ada. Cari yang merujuk pada flashdisk Anda, seperti memiliki nama sda2, sdb atau MOUNTPOINT-nya (kolom 7) seperti /run/media/user/FDD.


Kali ini saya akan menggunakan lokasi imajiner /dev/sdX agar menghindari terjadinya kesalahan saat anda copas kode dari halaman ini.


sda    8:0    0 111.8G  0 disk 
sda1   8:1    0 111.8G  0 part /
sdb    8:112  1  57.6G  0 disk 
sdb1   8:113  1  57.6G  0 part /home
sdX    8:128  1   7.3G  0 disk 
sdX1   8:129  1   7.3G  0 part /run/media/user/FDD


Dapat dilihat bahwa sdX merupakan flashdisk saya dilihat dari ukurannya (7,3G) tipenya (disk). Jika Anda masih tidak yakin, lepaskan drive Anda, lihat output dari lsblk, lalu pasang drive Anda dan lihat lsblklagi. Pastikan Anda mengidentifikasi drive yang benar karena proses selanjutnya akan menimpa/menghapus semua yang ada di dalamnya .


2. Format drive Anda


Ada beberapa cara untuk melakukan langkah ini, namun untuk artikel ini akan digunakan metode overwrite with zero (menimpa data dengan data kosong/null) untuk mendapatkan hasil terbaik. Anda bisa juga langsung melakukan format apabila menggunakan flashdisk baru.


Ketik perintah ini dan ganti /dev/sdX dengan nama drive anda:


$ sudo dd if=/dev/zero of=/dev/sdX count=4096


3. Format drive Anda untuk LUKS


Gunakan perintah cryptsetup luksFormat untuk membuat volume LUKS baru untuk menampung partisi data Anda. Sistem akan memberikan peringatan overwrite pada drive.


$ sudo cryptsetup luksFormat /dev/sdX
WARNING!
========
This will overwrite data on /dev/sdX irrevocably.

Are you sure? (Type uppercase yes): YES
Enter passphrase:
Verify passphrase:


Ketik “YES” (besar semua) dan masukkan password yang akan digunakan untuk menguncinya, pastikan Anda mengingatnya/mencatanya agar tidak lupa/hilang karena anda tidak akan dapat mengaksesnya kembali apabila itu terjadi.


4. Buka volume LUKS yang telah diciptakan


Setelah volume LUKS dibuat, anda perlu membukanya dengan kata sandi anda. Gunakan perintah cryptsetup open diikuti dengan lokasi drive anda (/dev/sdX) dan nama yang akan digunakan untuk drive anda yang terbuka/terdekripsi:


$ sudo cryptsetup open /dev/sdX dataVault


Disini saya contohkan dengan dataVault sebagai nama drive-nya. Namun, anda bisa menggunakan nama apa saja yang anda inginkan.


Volume LUKS dibuka di lokasi direktori /dev/mapper. Anda bisa mengeceknya dengan perintah ls pada direktori tersebut:


$ ls /dev/mapper/
control  cr_home  cr_root  cr_swap  dataVault


Anda dapat menutup volume LUKS kapan saja menggunakan cryptsetup close:


$ sudo cryptsetup close dataVault


Drive akan otomatis menghilang dari direktori /dev/mapper.


$ ls /dev/mapper/
control  cr_home  cr_root  cr_swap


Sekarang Anda sudah dapat membuka/dekripsi drive LUKS Anda.


5. Buat sistem file


Meskipun drive LUKS anda sudah dibuat, namun anda belum bisa menulis data kedalamnya secara langsung. Ini karena LUKS hanya befungsi sebgai kontainer terenkripsi dan bukan filesystem. Oleh sebab itu anda perlu membuat filesistem terlebih dahulu didalamnya.


Buka drive anda apabila anda menutupnya sebelumnya:


$ sudo cryptsetup open /dev/sdX dataVault
Enter passphrase for /dev/sda:


Sekarang setelah volume LUKS Anda didekripsi dan dibuka, anda dapat membuat sistem file di sana untuk menyimpan data di dalamnya. Dalam artikel ini, saya mencontohkan dengan ext4, tetapi Anda dapat menggunakan file sistem lain seperti vfat:


$ sudo mkfs.ext4 -L dataVault /dev/mapper/dataVault


mount dan unmount volume LUKS


Setelah melakukan format filesystem. Anda dapat menempelkan (mount) folume dengan perintah mount diikuti dengan direktori asal dan tujuannya. Dalam artikel ini dicontohkan dengan direktori tujuan /mnt/fdd :


$ sudo cryptsetup open /dev/sdX dataVault
$ sudo mount /dev/mapper/dataVault /mnt/fdd


LUKS juga terintegrasi pada dalam desktop Linux populer seperti KDE dan GNOME. Misalnya, ketika saya memasang drive terenkripsi ke workstation saya yang menjalankan KDE atau laptop saya yang menjalankan GNOME, manajer file saya meminta password sebelum memasang drive.