Linux ve Unix’te ‘nobody’ Kullanıcısını Anlamak

Linux ve Unix sistemlerinde ‘nobody’ kullanıcısını anlamak, hizmetleri ve süreçleri yöneten herkes için çok önemlidir. Bu sistemlerde, işlemler genellikle daha iyi izolasyon ve güvenlik için belirli kullanıcılar altında çalışır. Bir hizmetin özel bir kullanıcısı olmadığında, genel, ayrıcalıklı olmayan bir hesap olan ‘nobody’ kullanıcısına geri dönebilir.

Bu kullanıcı genellikle minimum izin gerektiren web sunucuları veya NFS hizmetleri gibi işlemler tarafından kullanılır.

Çoğu Linux dağıtımında, aşağıdaki komutla hangi hizmetlerin belirli kullanıcıları kullandığını kontrol edebilirsiniz:

cd /etc
grep sshd passwd

Örnek çıktı:

sshd:x:114:65534::/var/run/sshd:/usr/sbin/nologin

Bu, SSH arka plan programının oturum açma kabuğu olmadan sshd kullanıcısı olarak çalıştığı anlamına gelir. Bir hizmet nobody kullanıcısı altında çalışıyorsa şuna benzer bir şey görebilirsiniz:

cd /etc
grep nobody passwd

Örnek çıktı:

nobody:x:65534:65534:nobody:/nonexistent:/bin/sh

Bu, hiç kimse kullanıcısının kabuğu olarak /bin/sh ve ana dizini olarak /nonexistent olduğunu gösterir ve bu genellikle mevcut değildir.

Hiç kimse kök ayrıcalıklarından yoksun olmasa ve sudoers dosyasında olmasa da, ptrace aracılığıyla okuma ve yazma belleği de dahil olmak üzere kimsenin sahip olmadığı diğer işlemlerle etkileşime girebilir. Güvenliği artırmak istiyorsanız, kimsenin kabuğunu nologin olarak ayarlayamazsınız, bu da oturum açma erişimini tamamen engeller:

Debian’da:

sudo chsh -s /usr/sbin/nologin nobody

Fedora’da:

sudo chsh -s /sbin/nologin nobody

nobody kullanıcısına ait dosyaları bulmak ve kaldırmak için:

find /path/to/dir -user nobody -print
find /path/to/dir -user nobody -exec rm -rf {} +

Hiç kimse kullanıcısını anlamak ve doğru şekilde yönetmek, sisteminizin genel güvenliğini artırır. Oturum açma erişimine veya kendi kalıcı verilerine sahip olması gereken bir kullanıcı değildir. Kimseye ait olmayan dosyaları denetleyerek ve gerektiğinde kabuk izinlerini ayarlayarak sistemlerinizi temiz tutun.

Sistem yönetimi görevleri biriktikçe, bunun gibi küçük güvenlik uygulamaları daha büyük güvenlik açıklarını önleyebilir. Hizmetlerinizi hangi kullanıcıların çalıştırdığına ve hangi izinlere sahip olduklarına her zaman dikkat edin.

Yazının orijinalini  buradan okuyabilirsiniz.

Hüseyin GÜÇ

Kariyerime 26 yıl önce başladım. Windows ve Linux sistemlerinin kurulumu, yapılandırılması, yönetimi ve bakımı dahil olmak üzere birden fazla sistem üzerinde uzmanlaştım. Açık kaynak dünyasındaki en son gelişmelerden haberdar olmaktan ve Linux hakkındaki en son araçları, özellikleri ve hizmetleri denemekten hoşlanıyorum. Son 6 yıldır  sistem ve ağ yöneticisi olarak görev yapıyorum ayrıca Pardus Dönüşüm Projesini yönetiyorum ve Pardus İşletim Sisteminin yaygınlaşması adına uğraş gösteriyorum. Boş zamanlarımda açık kaynaklı uygulamaların Türkçe çevirisine katılıyorum ve The Document Foundation üyesiyim.