GNU/Linux için Türkçe içerik sağlamak üzere kurulmuş bir platformdur.
Unutulan veya çeşitli sebeplerle tahrip edilmiş olan root parolasını sistem başlangıcında yenilememiz mümkün. Ben anlatım sırasında Kali Linux dağıtımını kullandım, fakat siz kullanmakta olduğunuz dağıtım üzerinden de aynı adımları takip edebilirsiniz.
Öncelikle sistemi yeniden başlatıyoruz.
Karşımıza gelen GNU GRUB ekranındayken E tuşuna basarak “edit” yani “düzenleme” moduna geçiyoruz.
Düzenleme modundayken klavyemizdeki yön tuşları ile alt satırlara inerek “linux” satırını bulmamız gerek.
linux satırında bulunan “ro” ifadesini “rw” ile değiştirdikten sonra, satırın sonuna ”init=/bin/bash” ifadesini ekliyoruz. Bu değişiklik sayesinde disk üzerinde yazma yetkisi ve sistem başlangıcında bash kabuğuna erişim kazanmış olacağız.
Değişiklikleri kaydetmek için Ctrl + X ya da F10 tuşlarını kullanabiliriz.
Yaptığımız değişikliğin anlamı; ro ifadesi read only anlamındaki yalnızca okuma yetkisini temsil ediyor. Biz bu yetkiyi düzenleme yapacağımız için rw şeklinde read write yani hem okuma hem de yazma(değişiklik yapma) yetkisi olarak değiştirdik.
Satırın sonuna eklemiş olduğumuz init=/bin/bash ifadesi ise sistemi boot ettikten sonra bash kabuğunun açılmasını sağlıyor. Eğer bu ifadeyi eklemezseniz sistemi boot ettiğinizde aşağıdaki görselde yer alan komut satırı açılmaz.
Boot ettikten sonra bash kabuğu root yetkileriyle açılmış oldu. Öncelikle dosya sistemini yazılabilir olması için mount -o remount,rw /
komutuyla kök dizini okunabilir biçimde bağlayalım.
Son olarak şifre belirlemek üzere passwd
komutunu girelim.
passwd
komutunu girdikten sonra resimdeki gibi konsol bizden yeni şifre oluşturmamızı isteyecek ve bunu tekrar girmemizi isteyecek.
ℹ️ Not: Parolanızı yazarken yazdığınız gözükmeyebilir bu bir güvenlik önlemidir siz yazmaya devam edin.
Ve işlemler bu kadar !
Gördüğünüz gibi işlem başarılı bir şekilde gerçekleşti ve ”passwd: password updated successfully” çıktısını aldık. Yani root hesabının parolasını değiştirmiş olduk.
Fakat SELinux etkin sistemlerde(CentOS, RedHat vb..) son olarak touch /.autorelabel
komutu ile kök dizinde “.autorelabel” dosyası oluşturulmalı. Çünkü güvenlik için kullanılan SELinux modülünde her dosya ve işlem, etiketleri(label) ile tanımlanır. Bu etiketler, dosyanın veya işlemin üzerinde izin verilen işlemleri belirtir. Yani SELinux, bu etiketleri kullanarak dosya ve işlemlere olan erişimi kontrol eder.
root parolası değiştiğinde sistemde meydana gelecek olan etiket değişimi dolayısıyla SELinux aktif sistemde, yetki problemi oluşmaması için bu etiketlerin güncellenmesi gerekir. İşte touch /.autorelabel
komutu ile ana dizine “.autorelabel” dosyasını eklemek, SELinux’un dosya etiketlerini otomatik olarak güncellemesini sağlar.
touch /.autorelabel
Bu sebeple SELinux aktif sistemlerde root parolası değişimi ardından touch /.autorelabel
komutu kullanılmalıdır. Alternatif yaklaşımlar ve daha fazla detay için buraya göz atabilirsiniz.
Tüm işlemlerin ardından son olarak reboot -f
komutu ile sistemi yeniden başlatıp, tanımlamış olduğunuz root parolasını kullanabilirsiniz.
/.autorelabel
konusundaki bilgilendirmesi için Yasin Karabulak hocama çok teşekkür ederim.