Linux'ta Kök Hesabı Devre Dışı Bırakmanın 4 Yolu


Kök hesap, Linux ve diğer Unix benzeri işletim sistemlerindeki nihai hesaptır. Bu hesap, tam okuma, yazma ve yürütme izinlerine sahip bir sistemdeki tüm komutlara ve dosyalara erişebilir. Bir sistem üzerinde her türlü görevi gerçekleştirmek için kullanılır; diğer kullanıcıların hesaplarını oluşturmak/güncellemek/erişmek/silmek, yazılım paketlerini yüklemek/kaldırmak/yükseltmek ve çok daha fazlası için.

Kök kullanıcının mutlak yetkileri olduğundan, gerçekleştirdiği her türlü eylem sistem üzerinde kritik öneme sahiptir. Bu bağlamda, kök kullanıcı tarafından yapılan herhangi bir hatanın, sistemin normal işleyişi üzerinde büyük etkileri olabilir. Ayrıca bu hesap, kazara, kötü niyetli olarak veya politikaların kasıtlı olarak göz ardı edilmesi yoluyla uygunsuz veya uygunsuz bir şekilde kullanılarak da kötüye kullanılabilir.

Bu nedenle, Linux sunucunuzda kök erişimini devre dışı bırakmanız, bunun yerine, sunucuda kritik görevleri gerçekleştirmek için sudo komutunu kullanarak kök kullanıcı ayrıcalıkları elde edecek şekilde yapılandırılması gereken bir yönetici hesabı oluşturmanız önerilir.

Bu yazıda Linux'ta root kullanıcı hesabına giriş yapmayı devre dışı bırakmanın dört yolunu açıklayacağız.

Dikkat: Kök hesaba erişimi engellemeden önce, kök kazanmak için sudo komutunu kullanabilen bir yönetici hesabı oluşturduğunuzdan emin olun. useradd komutuyla kullanıcı ayrıcalıklarını tanımlayın ve bu kullanıcı hesabına güçlü bir şifre verin. -m işareti kullanıcının ana dizinini oluşturma anlamına gelir ve -c işareti bir yorum belirtmeye izin verir:

useradd -m -c "Admin User" admin
passwd admin

Daha sonra, usermod komutunu kullanarak bu kullanıcıyı uygun sistem yöneticileri grubuna ekleyin; burada -a anahtarı, kullanıcı hesabı ekleme anlamına gelir ve -G, kullanıcının ekleneceği grubu belirtir. içinde (Linux dağıtımınıza bağlı olarak tekerlek veya sudo):

usermod -aG wheel admin    #CentOS/RHEL
usermod -aG sudo admin     #Debian/Ubuntu 

Yönetici ayrıcalıklarına sahip bir kullanıcı oluşturduktan sonra root erişimini engellemek için bu hesaba geçin.

su admin

1. Kök Kullanıcının Kabuğunu değiştirin

Kök kullanıcı girişini devre dışı bırakmanın en basit yöntemi, kabuğunu /bin/bash veya /bin/bash'den (veya kullanıcı oturum açmasına izin veren herhangi bir başka kabuktan) /sbin/nologin, gösterildiği gibi favori komut satırı düzenleyicilerinizden herhangi birini kullanarak düzenleme için açabileceğiniz /etc/passwd dosyasında.

  
sudo vim /etc/passwd

Satırı değiştirin:

root:x:0:0:root:/root:/bin/bash
to
root:x:0:0:root:/root:/sbin/nologin

Dosyayı kaydedin ve kapatın.

Artık kök kullanıcı giriş yaptığında “Bu hesap şu anda kullanılamıyor” mesajını alacaktır. Bu varsayılan mesajdır ancak siz de kullanabilirsiniz. bunu değiştirin ve /etc/nologin.txt dosyasında özel bir mesaj ayarlayın.

Bu yöntem yalnızca kullanıcı girişi için kabuk gerektiren programlarda etkilidir, aksi takdirde sudo, ftp ve e-posta istemcileri kök hesaba erişebilir.

2. Konsol Cihazı (TTY) aracılığıyla root Girişini devre dışı bırakın

İkinci yöntem, pam_securetty adlı bir PAM modülünü kullanır; bu modül, yalnızca kullanıcının "güvenli" bir TTY'de oturum açması durumunda root erişimine izin verir. /etc/securetty dosyasındaki listeyle tanımlanır.

Yukarıdaki dosya, root kullanıcısının hangi TTY cihazlarında oturum açmasına izin verileceğini belirtmenize olanak tanır; bu dosyanın boşaltılması, bilgisayar sistemine bağlı herhangi bir cihazda root girişi yapılmasını engeller.

Boş bir dosya oluşturmak için çalıştırın.

sudo mv /etc/securetty /etc/securetty.orig
sudo touch /etc/securetty
sudo chmod 600 /etc/securetty

Bu yöntemin bazı sınırlamaları vardır; yalnızca oturum açma, görüntü yöneticileri (ör. gdm, kdm ve xdm) gibi programları ve ağ hizmetlerini etkileyen diğer ağ hizmetlerini etkiler. bir TTY başlatın. Su, sudo, ssh ve diğer ilgili openssh araçları gibi programlar kök hesaba erişime sahip olacaktır.

3. SSH Kök Girişini Devre Dışı Bırakın

Uzak sunuculara veya VPS'lere erişmenin en yaygın yolu SSH aracılığıyladır ve bunun altında kök kullanıcı oturum açmasını engellemek için /etc/ssh/sshd_config dosyasını düzenlemeniz gerekir.

sudo vim /etc/ssh/sshd_config

Ardından PermitRootLogin yönergesinin açıklamasını kaldırın (eğer yorumlanmışsa) ve değerini ekran görüntüsünde gösterildiği gibi no olarak ayarlayın.

İşiniz bittiğinde dosyayı kaydedip kapatın. Ardından, yapılandırmalardaki son değişikliği uygulamak için sshd hizmetini yeniden başlatın.

sudo systemctl restart sshd 
OR
sudo service sshd restart 

Bildiğiniz gibi bu yöntem yalnızca openssh araç setini etkiler, ssh, scp, sftp gibi programların root hesaba erişimi engellenecektir.

4. Kök Erişimini PAM Aracılığıyla Hizmetlere Kısıtlayın

Takılabilir Kimlik Doğrulama Modülleri (kısaca PAM), Linux sistemlerinde merkezi, takılabilir, modüler ve esnek bir kimlik doğrulama yöntemidir. PAM, /lib/security/pam_listfile.so modülü aracılığıyla, belirli hesapların ayrıcalıklarının sınırlandırılmasında büyük esneklik sağlar.

Yukarıdaki modül, oturum açma, ssh ve PAM uyumlu programlar gibi bazı hedef hizmetler aracılığıyla oturum açmasına izin verilmeyen kullanıcıların listesine referans vermek için kullanılabilir.

Bu durumda, oturum açma ve sshd hizmetlerine erişimi kısıtlayarak bir sisteme root kullanıcı erişimini devre dışı bırakmak istiyoruz. Öncelikle /etc/pam.d/ dizinindeki hedef hizmete ait dosyayı gösterildiği gibi açın ve düzenleyin.


sudo vim /etc/pam.d/login
OR
sudo vim /etc/pam.d/sshd

Daha sonra her iki dosyaya da aşağıdaki konfigürasyonu ekleyin.

auth    required       pam_listfile.so \
        onerr=succeed  item=user  sense=deny  file=/etc/ssh/deniedusers

İşiniz bittiğinde her dosyayı kaydedip kapatın. Ardından, her satırda bir öğe içermesi gereken ve herkes tarafından okunamayan /etc/ssh/deniedusers düz dosyasını oluşturun.

İçine kök adını ekleyin, ardından kaydedip kapatın.

sudo vim /etc/ssh/deniedusers

Ayrıca bu konuda gerekli izinleri ayarlayın.

sudo chmod 600 /etc/ssh/deniedusers

Bu yöntem yalnızca PAM uyumlu programları ve hizmetleri etkiler. FTP ve e-posta istemcileri ve daha fazlası aracılığıyla sisteme kök erişimini engelleyebilirsiniz.

Daha fazla bilgi için ilgili kılavuz sayfalarına bakın.

man pam_securetty
man sshd_config
man pam

Bu kadar! Bu yazıda Linux'ta kök kullanıcı oturum açma işlemini (veya hesabını) devre dışı bırakmanın dört yolunu açıkladık. Herhangi bir yorumunuz, öneriniz veya sorunuz varsa, aşağıdaki geri bildirim formunu kullanarak bize ulaşmaktan çekinmeyin.