1. Genel Bakış
Bir Linux önyükleyici bölümüne parola ayarlamanın üç kritik güvenlik nedeni vardır. İlk olarak, Tek Kullanıcı Moduna erişimi engellemektir. Saldırganlar sistemi tek kullanıcı modunda açabilirlerse, root parolası sorulmadan otomatik olarak root olarak giriş yaparlar. İkincisi, GRUB Konsoluna erişimi engellemektir. Makine önyükleyici olarak GRUB kullanıyorsa, saldırgan yapılandırmayı değiştirmek veya cat komutunu kullanarak bilgi toplamak için GRUB editör arayüzünü kullanabilir. Üçüncüsü, Güvenli Olmayan İşletim Sistemlerine erişimi engellemektir. Eğer çift önyükleme olan bir sistem varsa, saldırgan önyüklemede DOS gibi bir erişim sistemini seçerek erişim denetimlerini ve dosya izinlerini geçebilir.
Bu yazıda, RHEL / CentOS 7 işletim sisteminin grub2 önyükleyicisinin parola ile nasıl korunacağını anlatacağım.
2. Gereksinimler
Root erişimi olan kurulu RHEL/CentOS 7 işletim sistemi işimizi görecektir.
3. Şifrelenmiş Parola Oluşturma
Düz metin(plaintext) parolaları bir güvenlik riski olduğundan, grub2-mkpasswd-pbkdf2 komutunu çalıştırarak parola için bir karma oluşturmamız gerekir. Komutu çalıştırdıktan sonra parola girmeniz istenecek, Yani burada GRUB2 Bootloader’ı korumak için ayarlamak istediğiniz parolayı gireceksiniz.
# grub2-mkpasswd-pbkdf2 Enter password: Reenter password: PBKDF2 hash of your password is grub.pbkdf2.sha512.10000.CDB73BC2BCAA1A22693A88D492E373B28E5528FF1526C2252F3A4B0C5CEB7B588552470CB9AF606D652F0FA59B8491359A5B9E25EA6513D704A49AE59353E555.F5186F1B4B578FEF28D8C5656BF5E35EA77514A08685B4A18089B8EF14124B3C9F15FA73E34310860B77D8EF16FF0A6BBBC46C8DB2507A81572DD67A4D9AC6B1
4. GRUB2 Ana Konfigürasyon Dosyasında Parolayı Yapılandırma
Şimdi elimizde GRUB2 önyükleyicisinin ana konfigürasyon dosyası olan grub.cfg dosyasına koyacağımız şifrelenmiş parolamız var.
Uyarı !!!: Süper kullanıcı hesabını grub.cfg dosyasına manuel olarak EKMEYİN!
Süper kullanıcı hesabını ve parolayı grub.cfg dosyasına manuel olarak EKLEMEYİN, grub2-mkconfig komutu bu dosyanın üzerine yazar. |
Bu yüzden şifrelenmiş olan parolamızı /etc/grub.d/. adresindeki GRUB2 özel menüsüne, yani 40_custom dosyasına kopyalamamız gerekiyor.
# cd /etc/grub.d/ # ll total 72 -rwxr-xr-x. 1 root root 8702 Nov 22 22:51 00_header -rwxr-xr-x. 1 root root 992 Jun 16 2016 00_tuned -rwxr-xr-x. 1 root root 232 Nov 22 22:51 01_users -rwxr-xr-x. 1 root root 10781 Nov 22 22:51 10_linux -rwxr-xr-x. 1 root root 10275 Nov 22 22:51 20_linux_xen -rwxr-xr-x. 1 root root 2559 Nov 22 22:51 20_ppc_terminfo -rwxr-xr-x. 1 root root 11169 Nov 22 22:51 30_os-prober -rwxr-xr-x. 1 root root 214 Nov 22 22:51 40_custom -rwxr-xr-x. 1 root root 216 Nov 22 22:51 41_custom -rw-r--r--. 1 root root 483 Nov 22 22:51 README
40_custom dosyası üzerinde düzenleme yapmadan önce, bu dosyanın yedeğini almanızı öneririm. Bu aşamadan sonra “systems” adlı superuser’ı kullanacağız.
# cp 40_custom 40_custom.old # vim 40_custom set superusers="systems" password_pbkdf2 systems grub.pbkdf2.sha512.10000.CDB73BC2BCAA1A22693A88D492E373B28E5528FF1526C2252F3A4B0C5CEB7B588552470CB9AF606D652F0FA59B8491359A5B9E25EA6513D704A49AE59353E555.F5186F1B4B578FEF28D8C5656BF5E35EA77514A08685B4A18089B8EF14124B3C9F15FA73E34310860B77D8EF16FF0A6BBBC46C8DB2507A81572DD67A4D9AC6B1
Bootloader superuser hesap şifresinin, root kimlik bilgilerinden farklı olması önerilir.
Grub2 superuser hesabı için root, admin veya manager gibi genel yönetici hesap adlarını kullanmaktan kaçının.Bootloader superuser hesap şifresinin, root kimlik bilgilerinden farklı olması önerilir. Bootloader superuser hesap şifresinin, root kimlik bilgilerinden farklı olması önerilir.
ÖNEMLİ UYARI !!!: grub2 superuser için genel yönetici hesap adlarını KULLANMAYIN!
Grub2 superuser hesabı için root, admin veya manager gibi genel yönetici hesap adlarını kullanmaktan kaçının. |
5. grub.cfg Dosyasını Güncelleme
Grub2-mkconfig komutunu kullanarak grub.cfg dosyasını güncellemeden önce, grub.cfg dosyasını yedekleyelim.
# cd /boot/grub2/ # cp grub.cfg grub.cfg.old # grub2-mkconfig -o /boot/grub2/grub.cfg Generating grub configuration file ... Found linux image: /boot/vmlinuz-3.10.0-514.10.2.el7.x86_64 Found initrd image: /boot/initramfs-3.10.0-514.10.2.el7.x86_64.img Found linux image: /boot/vmlinuz-3.10.0-514.el7.x86_64 Found initrd image: /boot/initramfs-3.10.0-514.el7.x86_64.img Found linux image: /boot/vmlinuz-0-rescue-e81bfbb14a464518a84cf05178229800 Found initrd image: /boot/initramfs-0-rescue-e81bfbb14a464518a84cf05178229800.img done
GRUB2 Bootloader ana yapılandırma dosyasını güncelledikten sonra şifrelenmiş parola grub.cfg dosyasına yazılacaktır. 40_custom dosyasını cat veya less komut kullanarak açabilir ve şifrelenmiş parolayı görebiliriz.
# cd /boot/grub2 # cat grub.cfg ### BEGIN /etc/grub.d/40_custom ### # This file provides an easy way to add custom menu entries. Simply type the # menu entries you want to add after this comment. Be careful not to change # the 'exec tail' line above. set superusers="systems" password_pbkdf2 systems grub.pbkdf2.sha512.10000.CDB73BC2BCAA1A22693A88D492E373B28E5528FF1526C2252F3A4B0C5CEB7B588552470CB9AF606D652F0FA59B8491359A5B9E25EA6513D704A49AE59353E555.F5186F1B4B578FEF28D8C5656BF5E35EA77514A08685B4A18089B8EF14124B3C9F15FA73E34310860B77D8EF16FF0A6BBBC46C8DB2507A81572DD67A4D9AC6B1 ### END /etc/grub.d/40_custom ###
6. Test Zamanı
Şimdi GRUB önyükleyicinin yukarıda belirlediğimiz parola ile korunup korunmadığını kontrol etmek için sistemi yeniden başlatın.
# reboot
Sistemi yeniden başlattıktan sonra, ara çubuğuna basarak normal önyükleme işlemini durdurun ve aşağıdaki resimde gösterildiği gibi GRUB menüsünü seçin ve ardından GRUB’u düzenlemek için e tuşuna basın.
Aşağıdaki resimde gösterildiği gibi Kullanıcı Adı ve Parola isteyecektir. Kullanıcı adınızı “systems” ve yukarıda belirttiğimiz parola olarak girin.
Başarılı bir kimlik doğrulama işleminden sonra GRUB2 önyükleyiciyi aşağıdaki resimde gösterildiği gibi düzenleyebileceğiz.
7. Sonuç
Linux RHTL / CentOS 7 önyükleyiciyi koruma amaçlı yapılandırmaları yaptınız. Parola ile korunan bir önyükleyici olması bir güvenlik standartıdır ve henüz yapılmadıysa BT güvenlik denetiminde sıkıntı yaşamanız işten bile değildir. Örneğimiz umarım bilgilendirici olmuştur. Soru veya öneriniz olursa, yorumlarınızı aşağıda yazabilirsiniz.