Bu yazımda Centos 7 işletim sisteminde unutulan “root” kullanıcısının parolası değiştirilmesini inceliyor olacağız. Bu işlemi için; sanal yada fiziksel sunucuya doğrudan erişiminiz olması gerekecektir. Bu yöntemde Centos önyükleme (grub 2 boot) menüsü erişimi gerektiğinden uzaktan erişim (ssh gibi) ile root hesabı parolasını sıfırlayamazsınız.
Root kullanıcı hesabının parolasının sıfırlanacağı işletim sistemini yeniden başlatmanız veya kapalı olan işletim sisteminizi açmanız gerekecektir. Centos 7 işletim sisteminin önyükleme (boot grub) menüsünde işletim sisteminin çekirdeğinin seçimi için bu ekranda menü gelecek ve size 5 saniye süre verecektir. Bu süre içerisinde sizlerin önyüklemeden önce farklı çekirdekleri seçmenize veya var olan çekirdek parametrelerini düzenlemenize izin verir. Önyükleme menüsünde, mevcut işletim sistemi çekirdeğini (kernel – Core) aşağıda gösterildiği gibi düzenlemek için “e” tuşuna başınız.
Bu işlem sonrasında açılış parametlerini değiştirmeniz için aşağıdaki ekran gelecektir.
Parametre ayarlarının bulunduğu bu ekranda “Linux 16” ile başlayan satıron son kısmına “rb.break” yada “rd.break enforcing=0” eklemeniz gerekecektir.
Not : enforcing = 0 eklenmesi, işletim sistemini SELinux Permission moduna geçirir. Bu seçenek ile zaman alan SELinux yeniden etiketleme işleminin atlatılmasını sağlar ve yanlış etiketlenmiş dosyalara rağmen ön yükleme işleminin tamamlanmasına izin verir.
Yapılan bu değişiklikten sonra bash kabuğunu kullanarak tek kullanıcı modunda başlatmak için Control + X tuşlarına basınız.
Bu aşamadan sonra dosya sistemi /sysroot üzerine salt-okunabilir monte edilir. Dosya sisteminin yazılabilirdeğil ise; şifre değiştirmenize izin verilmeyecektir. Kök dosya sistemini (root file system) okuma/yazma modunda yeniden mount etmek için; mount -o remount,rw /sysroot komutu çalıştırılır.
Dosya sisteminin kökünü “Chroot /sysroot” komut değiştin.
Son olarak root kullanıcısının parolasını değişitmek için “passwd root” komutu çalıştırılır. Bu komut ile yeni bir şifre oluşturmanız ve onaylamanız istenir.
Not : sistem yazılabilir değil ise passwd komutu “Authentication token manipulation error” çıktısını verecektir.
Şifre tanımlama işlemi tamamlandıktan sonra SeLinux bilgilerini güncellemek için komutu “touch /.autorelabel“ çalıştırılır.
Dosya sisteminin tekrardan sadece-okunabilir moduna alınız. Bu işlem için “mount -o remount,ro /” komutunu çalıştırınız. Şimdi chroot moduna çıkmak ve işletim sistemini başlatmak için iki kez exit komutunu çalıştırınız.
İşletim sistemi açıldıktan sonra SELinux güvenlik içeriğini geri yüklemek için “restorecon /etc/shadow” komutunu çalıştırınız. SELinux ilkesinin denetimini tekrardan açmak ve açık olduğunu doğrulamak için “setenforce 1” ve “getenforce” komutlarını çalıştırınız.