Pardus /etc/passwd Dosyası

 

📌 1) /etc/passwd Nedir?

Linux sistemlerinde her kullanıcının temel bilgilerini içeren en önemli dosyalardan biridir.
Windows’taki “User Account Database” mantığına benzer ancak düz bir metin dosyasıdır.

📍 Yol:

/etc/passwd

Bu dosya kullanıcı hesabı oluşturulduğunda otomatik güncellenir.


📌 2) Dosya Formatı ve Her Satırın Yapısı

/etc/passwd içindeki her satır bir kullanıcıyı temsil eder.
Satırlar 7 alandan oluşur ve : (iki nokta) ile ayrılır.

Şablon:

kullanıcı_adı:x:UID:GID:Açıklama:Ev_dizini:Shell

Örnek:

nuri:x:1000:1000:Nuri Tıraş:/home/nuri:/bin/bash

Şimdi bu alanları tek tek anlatalım.


🔍 3) /etc/passwd Alanlarının Ayrıntılı Açıklaması

1️⃣ kullanıcı_adı

Kullanıcının sistemde görünen adı.

Örnek:

nuri administrator etapadmin

2️⃣ x – parola alanı

Eskiden parola hash’i buraya yazılırdı.
Modern sistemlerde güvenlik nedeniyle /etc/shadow dosyasına taşındı.

Bu nedenle burada daima:

x

yazar.


3️⃣ UID – User ID (Kullanıcı Kimlik Numarası)

Önemli UID aralıkları:

AralıkAnlamı
0root (süper kullanıcı)
1–999Sistem kullanıcıları (daemon, syslog, www-data…)
1000+Normal kullanıcılar

Örnek:

1000 → sistemde ilk oluşturulan kullanıcı

Samba AD veya okul ortamlarında:

  • öğretmen → UID 20000

  • öğrenci → UID 30000
    gibi özel UID politikaları da belirlenebilir.


4️⃣ GID – Grup Kimlik Numarası

Kullanıcının birincil grubunu belirtir.

Örnek:

nuri:x:1000:1000:

Burada GID 1000, “nuri” adlı grubun kimlik numarasıdır.


5️⃣ Açıklama Alanı (GECOS)

Genellikle kullanıcının tam adının yazıldığı alandır.

Örnek:

Nuri Tıraş

Okulda bunu şöyle kullanabilirsiniz:

veli_ahmet:x:3001:3001:11/B Ahmet Veli:/home/veli_ahmet:/bin/bash

Böylece cihaz yönetimi / LiderAhenk listelerinde kullanıcı tanınır.


6️⃣ Ev Dizini

Kullanıcının kişisel klasörü.

Örnek:

/home/nuri

Samba AD ortamında:

/home/teacher/nuri (öğretmen) /home/student/ali (öğrenci)

7️⃣ Shell

Kullanıcının oturum açarken kullanacağı komut yorumlayıcısıdır.

Örnekler:

/bin/bash normal kullanıcı /usr/sbin/nologin sisteme giriş yasak /bin/false servis kullanıcıları

Örneğin SSH ile giriş yapmasını istemediğiniz bir hesap oluşturursanız:

/usr/sbin/nologin

📌 4) /etc/passwd Dosyasını Görüntüleme

Tüm kullanıcıları listeleme:

cat /etc/passwd

Sadece normal kullanıcıları listeleme (UID 1000+):

awk -F':' '$3>=1000{print $1}' /etc/passwd

Sistem kullanıcılarını listeleme:

awk -F':' '$3<1000{print $1}' /etc/passwd

📌 5) Yeni Kullanıcı Eklendiğinde /etc/passwd Nasıl Değişir?

Örnek:

sudo adduser ali

Ekledikten sonra /etc/passwd’ye şu satır gelir:

ali:x:1001:1001:,,,:/home/ali:/bin/bash

📌 6) /etc/passwd Dosyasını Düzenleme

Bu dosya hayati öneme sahiptir. Hatalı düzenleme sistemi bozabilir.

Güvenli düzenleme yöntemi:

sudo vipw

Bu komut:

  • dosyayı kilitler

  • aynı anda iki kişinin düzenlemesini engeller

  • sözdizimi hatası olursa kaydetmeyi reddeder


📌 7) Shell Değiştirme

Kullanıcının shell’ini değiştirmek:

sudo chsh -s /bin/bash nuri

Ev dizinini değiştirmek:

sudo usermod -d /yeni/home/dizini nuri

📌 8) Kullanıcı Girişini Engelleme

sudo usermod -s /usr/sbin/nologin öğrenci1

Böylece kullanıcı:

  • SSH ile giriş yapamaz

  • Konsola login olamaz

Ama:

  • Samba

  • FTP (bazı durumlarda)

  • Sistem servisleri
    gibi görevlerde kullanılmaya devam eder.


📌 9) Güvenlik Açısından /etc/passwd

✔ Dosya herkes tarafından okunabilir
✔ Parolalar /etc/shadow içinde saklanır
✔ UID 0 başka bir kullanıcıya verilirse → o kullanıcı root olur �� çok tehlikelidir
✔ Shell’i /bin/bash olan her kullanıcı sisteme giriş yapabilir

Okul ortamında çok kullanılan servis kullanıcıları için mutlaka:

/usr/sbin/nologin /bin/false

gibi shell kullanılmalıdır.


📌 10) Okullarda Kullanım İçin Profesyonel Öneriler

🔸 1) Öğretmen ve öğrenci kullanıcıları için UID politikası belirleyin

Öğretmen: 20000–20999 Öğrenci: 30000–49999

🔸 2) Kullanıcı açıklamasında sınıfı ve adı yazın

ali_11b:x:3005:3005:11/B Ali Yılmaz:/home/ali_11b:/bin/bash

🔸 3) Sistem kullanıcılarını asla silmeyin

daemon, syslog, www-data, dpkg gibi kullanıcılar kritiktir.

🔸 4) SSH erişimi gerekmeyen kullanıcılar için nologin kullanın.


📌 11) Örnek /etc/passwd Analizi

Aşağıda tipik bir Pardus sisteminden alınmış örnek satırları açıklıyorum:

root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin syslog:x:104:106::/home/syslog:/usr/sbin/nologin nuri:x:1000:1000:Nuri Tıraş,,,:/home/nuri:/bin/bash etapadmin:x:1001:1001:ETAPnetici:/home/etapadmin:/bin/bash

root

  • UID 0 → tam yetki

  • Shell: bash → sisteme giriş yapabilir

daemon

  • Sistem kullanıcısı

  • Shell: nologin → giriş yapamaz

syslog

  • Log servisinin kullanıcı hesabı

nuri

  • Normal kullanıcı

  • Shell: bash → giriş yapabilir

etapadmin

  • ETAP yönetici hesabı


📌 12) /etc/passwd ve /etc/shadow Bağlantısı

DosyaİçerikYetkiler
/etc/passwdkullanıcı temel bilgileriherkes okuyabilir
/etc/shadowparola hash’lerisadece root okuyabilir

Parola değiştiğinde sadece shadow dosyası güncellenir.


🟦 SONUÇ

Bu eğitim makalesi ile artık:

✅ /etc/passwd dosyasının mantığını
✅ Her alanın ne işe yaradığını
✅ Okul ortamında ideal kullanıcı yönetimini
✅ Güvenlik amaçlı shell kullanımını
çok net bir şekilde biliyorsunuz.

Yorumlar

Bu blogdaki popüler yayınlar

Android Telefon/Tablet Ekranını Pardus ETAP 23 Yüklü Akıllı Tahtaya Yansıtma

Pardus Etap 23’de Unutulmuş Etap Yetkili Parolasını Sıfırlama

Pardus Başlangıç Onarma