Linux sunucularında kullanıcı yönetimi ve yetkilendirme, sistem güvenliğini sağlamak ve kaynaklara erişimi düzenlemek için kritik bir süreçtir. Kullanıcı hesapları, gruplar, izinler ve sudo yetkilendirmesi gibi kavramlar, sistem yöneticilerinin sunucu üzerindeki kontrolünü artırarak daha güvenli ve yönetilebilir bir ortam sağlar.
Bu komut, yeni_kullanici adlı bir hesap oluşturur ve kullanıcının home dizinini (
Daha kullanıcı dostu bir alternatif olarak adduser komutu da kullanılabilir:
Bu komut, kullanıcıdan ek bilgiler (şifre, ad-soyad vb.) girmesini ister.
Şifre girildikten sonra ilgili kullanıcı sisteme giriş yapabilir.
veya
Bu komut, yeni_kullanici adlı kullanıcıyı yeni_grup grubuna ekler.
veya
Örnek çıktı:
Bu çıktıdaki izinler şu şekilde okunur:
Bu komut, dosya sahibine tam yetki (rwx), gruba ve diğer kullanıcılara sadece okuma ve çalıştırma yetkisi verir.
Bir dosyanın grubunu değiştirmek için:
Burada aşağıdaki satır eklenerek özel yetkiler tanımlanabilir:
Bu komut, kullanıcıya şifresiz sudo yetkisi verir.
Linux sunucularında kullanıcı yönetimi ve yetkilendirme, sistemin güvenli ve verimli çalışmasını sağlamak için kritik öneme sahiptir. Kullanıcı hesaplarının doğru şekilde yönetilmesi, grupların kullanılması ve sudo yetkilendirmesinin dikkatli yapılması, sistem yöneticilerine esneklik ve güvenlik sunar. Bu rehberde ele alınan temel komutlar ve yöntemlerle Linux sunucunuzu daha iyi yönetebilirsiniz.
1. Linux’ta Kullanıcı Yönetimi
Linux sistemlerinde her kullanıcı, belirli izinlere sahip benzersiz bir hesapla tanımlanır. Kullanıcı hesapları,/etc/passwd
dosyasında, parola bilgileri ise /etc/shadow
dosyasında saklanır. Kullanıcı yönetimi için kullanılan temel komutlar şunlardır:1.1 Kullanıcı Ekleme (useradd ve adduser)
Yeni bir kullanıcı oluşturmak için aşağıdaki komutlar kullanılabilir:
Bash:
sudo useradd -m yeni_kullanici
/home/yeni_kullanici
) otomatik olarak oluşturur.Daha kullanıcı dostu bir alternatif olarak adduser komutu da kullanılabilir:
Bash:
sudo adduser yeni_kullanici
1.2 Kullanıcıya Şifre Atama (passwd)
Yeni eklenen kullanıcıya bir şifre atamak için aşağıdaki komut kullanılır:
Bash:
sudo passwd yeni_kullanici
1.3 Kullanıcıları Listeleme (cat ve getent)
Sistemde kayıtlı kullanıcıları görüntülemek için şu komutlar kullanılabilir:
Bash:
cat /etc/passwd
Bash:
getent passwd
2. Linux’ta Grup Yönetimi
Gruplar, birden fazla kullanıcıya aynı izinleri vermek için kullanılır. Gruplarla ilgili temel işlemler şunlardır:2.1 Yeni Grup Oluşturma
Yeni bir grup oluşturmak için:
Bash:
sudo groupadd yeni_grup
2.2 Kullanıcıyı Gruba Ekleme
Bir kullanıcıyı belirli bir gruba eklemek için şu komut kullanılır:
Bash:
sudo usermod -aG yeni_grup yeni_kullanici
2.3 Kullanıcının Grubunu Değiştirme
Bir kullanıcının birincil grubunu değiştirmek için:
Bash:
sudo usermod -g yeni_grup yeni_kullanici
2.4 Grupları Listeleme
Bir kullanıcının hangi gruplara ait olduğunu görmek için:
Bash:
groups yeni_kullanici
Bash:
id yeni_kullanici
3. Linux’ta Yetkilendirme ve İzinler
Linux’ta her dosya ve dizin üç ana izin setine sahiptir:- Okuma (r – read)
- Yazma (w – write)
- Çalıştırma (x – execute)
3.1 Dosya ve Dizin İzinlerini Görüntüleme
Bir dosya veya dizinin mevcut izinlerini görüntülemek için:
Bash:
ls -l
C#:
-rw-r--r-- 1 user group 1234 Jan 1 12:00 dosya.txt
rw-
→ Sahip için (okuma, yazma)r--
→ Grup için (sadece okuma)r--
→ Diğerleri için (sadece okuma)
3.2 Dosya ve Dizin İzinlerini Değiştirme (chmod)
Bir dosyanın izinlerini değiştirmek içinchmod
komutu kullanılır:
Bash:
sudo chmod 755 dosya.txt
3.3 Sahip ve Grup Değiştirme (chown ve chgrp)
Bir dosyanın sahibini değiştirmek için:
Bash:
sudo chown yeni_kullanici dosya.txt
Bash:
sudo chgrp yeni_grup dosya.txt
4. Sudo Yetkilendirme
Sudo (Superuser Do), kullanıcılara belirli yönetici yetkilerini tanımlamak için kullanılır.4.1 Bir Kullanıcıya Sudo Yetkisi Vermek
Bir kullanıcıyı sudo grubuna eklemek için:
Bash:
sudo usermod -aG sudo yeni_kullanici
4.2 Sudo Yetkilerini Düzenleme (visudo)
Sudo yetkilerini düzenlemek için şu komut çalıştırılır:
Bash:
sudo visudo
SQL:
yeni_kullanici ALL=(ALL) NOPASSWD: ALL
Linux sunucularında kullanıcı yönetimi ve yetkilendirme, sistemin güvenli ve verimli çalışmasını sağlamak için kritik öneme sahiptir. Kullanıcı hesaplarının doğru şekilde yönetilmesi, grupların kullanılması ve sudo yetkilendirmesinin dikkatli yapılması, sistem yöneticilerine esneklik ve güvenlik sunar. Bu rehberde ele alınan temel komutlar ve yöntemlerle Linux sunucunuzu daha iyi yönetebilirsiniz.