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.