Bir sunucuda doğru kullanıcı ve grup yapısı kurmak, hem güvenliğin hem de düzenli yönetimin temelidir. Her işlemi root ile yapmak ciddi bir risktir; bunun yerine yetkileri kullanıcılara ve gruplara dağıtmak gerekir. Bu rehberde Linux kullanıcı ve grup yönetimini, sudo yetkilendirmesiyle birlikte açıklıyoruz.
İlgili içerikler: Linux dosya izinleri · SSH ile sunucuya bağlanma · VPS güvenlik sertleştirme
Linux'ta Kullanıcı ve Grup Kavramı
Linux çok kullanıcılı bir sistemdir. Her kullanıcının bir kimliği (UID), bir ana dizini ve bir kabuğu (shell) vardır. Grup ise birden çok kullanıcıyı ortak bir yetki altında toplamanın yoludur — örneğin bir web ekibinin tamamına bir dizine erişim vermek gibi.
Sistemde iki tür kullanıcı vardır: gerçek kişiler için normal kullanıcılar ve servislerin çalışması için kullanılan sistem kullanıcıları (örneğin web sunucusu için www-data).
Kullanıcı Oluşturma ve Yönetme
Yeni bir kullanıcı oluşturmak, ana dizinini ve parolasını ayarlamak birkaç komutla yapılır:
# Yeni kullanıcı oluştur (ana dizin ile)
sudo adduser ahmet
# Kullanıcının parolasını belirle/değiştir
sudo passwd ahmet
# Kullanıcıyı sil (ana dizini ile birlikte)
sudo deluser --remove-home ahmet
adduser etkileşimli ve kullanıcı dostudur; alt seviye useradd ise betikler için daha uygundur. Mevcut bir kullanıcıyı değiştirmek için usermod kullanılır.
Grup Oluşturma ve Kullanıcı Ekleme
Gruplar, birden çok kullanıcıya aynı yetkiyi tek noktadan vermenizi sağlar:
# Yeni grup oluştur
sudo groupadd webekibi
# Kullanıcıyı bir gruba ekle (-aG: mevcut grupları koruyarak)
sudo usermod -aG webekibi ahmet
# Kullanıcının gruplarını görüntüle
groups ahmet
sudo ile Yetkilendirme
sudo, bir kullanıcının yönetici yetkisi gerektiren komutları, root parolası olmadan ve denetlenebilir biçimde çalıştırmasını sağlar. Bir kullanıcıya yönetici yetkisi vermek, onu sudo grubuna (RHEL tabanlı sistemlerde wheel) eklemekle olur:
# Kullanıcıya sudo yetkisi ver
sudo usermod -aG sudo ahmet
sudoers dosyasını her zaman visudo komutuyla düzenleyin. visudo, kaydetmeden önce sözdizimini denetler; doğrudan düzenleme bir hata durumunda tüm sudo erişimini bozabilir.En Az Ayrıcalık İlkesi
Sunucu güvenliğinin altın kuralı en az ayrıcalık (least privilege) ilkesidir: her kullanıcıya ve servise yalnızca işini yapması için gereken minimum yetkiyi verin.
- Günlük işler için root yerine normal kullanıcı +
sudokullanın. - Her ekip üyesine ayrı kullanıcı açın — ortak hesap, kim ne yaptı sorusunu yanıtsız bırakır.
- Servisleri kendi sistem kullanıcısı altında çalıştırın, root altında değil.
- Ayrılan personelin kullanıcısını gecikmeden devre dışı bırakın.
Sıkça Sorulan Sorular
adduser ile useradd arasındaki fark nedir?
adduser üst seviye, etkileşimli bir betiktir; ana dizini ve temel ayarları otomatik yapar. useradd ise alt seviye komuttur, daha fazla parametre ister ama betiklerde tercih edilir.
Bir kullanıcının sudo yetkisini nasıl kaldırırım?
Kullanıcıyı sudo grubundan çıkarın: sudo deluser ahmet sudo. Değişiklik, kullanıcının bir sonraki oturum açışında geçerli olur.
root hesabını tamamen kapatmalı mıyım?
root hesabını silmek gerekmez; ancak root ile doğrudan SSH girişini kapatmak (PermitRootLogin no) ve günlük işleri normal kullanıcı + sudo ile yapmak önerilir.
KEYDAL VPS ile kullanıcı, grup ve yetki yapınızı en baştan doğru kurun. KEYDAL VPS planlarını inceleyin