GNU/Linux >> Belajar Linux >  >> Linux

Cara Melindungi Boot Loader Grub dengan Kata Sandi di Linux

Jika Anda seorang sysadmin Linux, Anda mungkin tidak menginginkan orang lain di departemen TI Anda, yang memiliki akses fisik ke server, ubah apa pun dari menu bootloader GRUB yang ditampilkan selama startup sistem.

GRUB adalah tahap ke-3 dalam proses boot Linux yang telah kita bahas sebelumnya.

Fitur keamanan GRUB memungkinkan Anda untuk mengatur kata sandi ke entri grub. Setelah Anda menetapkan kata sandi, Anda tidak dapat mengedit entri grub apa pun, atau meneruskan argumen ke kernel dari baris perintah grub tanpa memasukkan kata sandi.

Sangat disarankan untuk menyetel sandi GRUB pada sistem produksi penting apa pun seperti yang dijelaskan dalam artikel ini.

1. Gunakan perintah kata sandi grub di grub.conf

Pada sistem di mana GRUB tidak diamankan dengan kata sandi, pesan berikut akan ditampilkan tepat di bawah menu GRUB selama startup sistem.

Seperti yang Anda lihat dari pesan ini, siapa pun yang berada di depan konsol me-reboot server, dapat mengedit perintah grub, atau bahkan memodifikasi argumen kernel, yang mungkin akan menyebabkan masalah, jika seseorang yang tidak tahu apa yang mereka lakukan, bermain-main dengan ini pada sistem produksi.

Use the up-arrow and down-arrow keys to select which entry is highlighted. 
Press enter to boot the selected OS,
'e' to edit the commands before booting, 
'a' to modify the kernel arguments before booting, or
'c' for a command-line

/boot/grub/grub.conf berisi informasi tentang entri yang ditampilkan di menu GRUB selama startup sistem. Pada beberapa sistem, /etc/grub.conf adalah tautan simbolis ke /boot/grub/grub.conf

Tambahkan baris “password” berikut ke file grub.conf.

$ cat /etc/grub.conf
default=0
timeout=15
password GrbPwd4SysAd$
..

Setelah perintah “password” ditambahkan ke grub.conf, pesan berikut akan ditampilkan tepat di bawah menu GRUB selama sistem startup.

Seperti yang Anda lihat dari pesan ini, tanpa memasukkan kata sandi GRUB yang Anda berikan di grub.conf, tidak ada yang bisa mengedit perintah grub, atau memodifikasi argumen kernel. Yang bisa mereka lakukan hanyalah memilih salah satu entri yang ditampilkan dan boot dari sini.

Use the up-arrow and down-arrow keys to select which entry is highlighted. 
Press enter to boot the selected OS or
'p' to enter a password to unlock the next set of features.

2. Enkripsi kata sandi grub menggunakan grub-crypt

Saat membaca entri di atas, mungkin Anda berpikir:Ya, grub diamankan dengan kata sandi. Namun, kata sandi itu sendiri ada dalam teks yang jelas di file grub.conf, yang tidak sesuai dengan tujuannya.

Anda dapat menggunakan utilitas grub-crypt untuk membuat kata sandi terenkripsi.

grub-crypt akan mendapatkan password clear text dari pengguna, dan menampilkan password terenkripsi seperti yang ditunjukkan di bawah ini.

# grub-crypt
Password: GrbPwd4SysAd$
Retype password: GrbPwd4SysAd$
^9^32kwzzX./3WISQ0C

Ubah file grub.conf, tambahkan entri “password” dengan argumen –encrypted seperti yang ditunjukkan di bawah ini. Cukup salin output dari perintah grub-crypt, dan tempel setelah argumen “–terenkripsi” di entri kata sandi.

$ cat /etc/grub.conf
default=0
timeout=15
password --encrypted ^9^32kwzzX./3WISQ0C
..

Secara default, perintah grub-crypt mengenkripsi kata sandi menggunakan algoritma SHA-512. Anda juga dapat mengenkripsi kata sandi menggunakan algoritma SHA-256 atau MD5 seperti yang ditunjukkan di bawah ini.

# grub-crypt --sha-256
# grub-crypt --md5

Anda juga dapat menggunakan md5crypt untuk mengenkripsi kata sandi. Dalam hal ini, Anda harus menggunakan “password –md5 enkripsi-password” di file grub.conf Anda.

Di dalam bagian skrip file grub.conf Anda, jika Anda menentukan “lock”, grub akan menjalankan sisa perintah di bagian entri menu tersebut hanya jika pengguna diautentikasi.

3. Muat file lain untuk Menu Grub

Secara default, entri dalam menu GRUB selama startup sistem diambil dari file grub.conf. yaitu berdasarkan baris yang dimulai dengan entri “title” dari file grub.conf.

Jika Anda menguji beberapa variasi kernel baru, Anda mungkin ingin membuat file menu grub terpisah yang berisi entri menu kustom. Selama startup sistem, secara default hanya akan menampilkan entri dari grub.conf. Namun ketika Anda memasukkan kata sandi, Anda dapat menginstruksikan grub untuk memuat entri menu khusus Anda.

Ini dicapai dengan meneruskan nama file menu kustom ke perintah kata sandi seperti yang ditunjukkan di bawah ini di file grub.conf.

Pada contoh berikut, ini akan memuat dan menampilkan entri menu grub dari /etc/mymenu.lst saat Anda memberikan kata sandi selama sistem startup.

$ cat /etc/grub.conf
default=0
timeout=15
password --encrypted ^9^32kwzzX./3WISQ0C /etc/mymenu.lst
..

Linux
  1. Cara Mengelola Kata Sandi Akun di Linux

  2. Cara Mengubah Kata Sandi di Linux (perintah passwd)

  3. Linux – Bagaimana Cara Mengubah Kata Sandi Root yang Terlupakan?

  1. Cara mereset kata sandi Windows dengan Linux

  2. Linux – Bagaimana Cara Menghapus Instalasi Grub?

  3. Bagaimana cara memeriksa kata sandi dengan Linux?

  1. Cara Menggunakan Grub Rescue untuk Memperbaiki Kegagalan Boot Linux

  2. Cara mereset kata sandi root Kali Linux

  3. Cara Mengubah Kata Sandi Pengguna di Linux