Linux istifadəçi ve qrup idarəetməsi

Bu makalemizde “Linux İşletim Sistemlerinde Kullanıcı ve Grup Yönetimi Yapılandırması” konusunu inceleyeceğiz. Linux işletim sistemleri çok kullanıcılı (multiuser) işletim sistemi olarak tasarlanmıştır. Bunun yanı sıra Linux işletim sistemleri üzerinde çalışan uygulamaların bir çoğuda, sistemle etkileşime geçmek ve işlemleri yürütmek için kullanıcılar oluştururlar. Örneğin Oracle veritabanı sunucusunun “oracle” adında bir kullanıcısı mevcuttur. Bununla birlikte sistemde oluşturulan her bir kullanıcı adıyla birlikte birde, bu kulanıcı adına uygun bir de grup oluşturulur. Varsayılan ayar olarak kullanıcılar kendi isimlerine uygun gruplara üye yapılırlar. Çeşitli görevleri yerine getirmek için kullanıcılardan bağımsız gruplar da oluşturulabilir. Daha sonra bu gruplara belirli kullanıcılar üye olabilirler. Kullanıcılar ve gruplar, dosyaların ve dizinlerin sahipliğini alabilirler. Dosya ve dizinlerin sahipleri bu belirli dizinlere erişim için tam yetkili olurlar. Dosya ve dizin erişimlerini kavrayabilmek için sistem idaresinin en temel işi olan kullanıcı ve grup yönetimini anlamak gerekir.

A-) Grupların Yönetimi

Grupları yönetmek için “groupadd”, “groupmod” ve “groupdel” komutları kullanılır. Bu komutlar “/etc/group” dosyasını işler. Kullanıcı yönetiminde olduğu gibi eğer “shadow” şifreleme kullanılıyorsa parolalar “/etc/gshadow” dosyasında tutulur. Gruplar içlerinde bir çok kullanıcıyı barındırabilirler. Yeni bir grup oluşturmak için groupadd komutunu kullanırız.

1. Grup yaratma işlemleri için aşağıdaki komutları kullanabiliriz.

-- Grup oluşturmak için "groupadd" komutu kullanılmalıdır.

# groupadd dba

-- Oluşturulan bir grubu sorgulamak ve bilgilerini öğrenmek için aşağıdaki komutu
kullanabiliriz.

# cat /etc/group | grep dba
dba:x:500:

-- Grup oluştururken GID ataması yapmak istiyorsak aşağıdaki komutla ID atayarak
grup yaratabiliriz.

# groupadd -g 1000 dba

2. Mevcut bir grup üzerinde değişiklik yapmak için aşağıdaki komutları kullanabiliriz.

-- Mevcut bir grup üzerinde değişiklik yapmak için aşağıdaki komutu kullanabiliriz.

-- Mevcut bir grubun id'sini değiştirmek için

# groupmod -g 2000 dba

-- Mevcut bir grubun ismini değiştirmek için

# groupmod -n yeni_dba dba

3. Bir gruba kullanıcı eklemek veya çıkartmak için aşağıdaki komutları kullanabiliriz. Ayrıca bir gruba parola atayabiliriz. Bu parola ile kullanıcılar gruba eklenmeye çalışıldığında sistem atanmış parolayı soracaktır. Bu parola girilmeden bir kullanıcı o gruba üye olamayacaktır.

4. Grupları silmek için aşağıdaki komutları kullanabiliriz.

5. Kullandığımız komutların işimize yarayacak parametrelerini inceleyebiliriz.

B-) Kullanıcıların Yönetimi

Kullanıcı yönetimi için kullanılan komutlar “useradd” , “usermod” ve “userdel” dir. Bu komutlar “/etc/passwd” dosyasında girdiler oluşturur ve bu girdileri düzenler. “passwd” ve “shadow” dosyaları hakkında ayrıntılı açıklamayı yazımızın devamında bulabileceksiniz.

1. Kullanıcı yaratmak için aşağıdaki komutları kullanabiliriz.

2. Yarattığımız kullanıcıya veya varolan bir kullanıcıya parola atamak için aşağıdaki komutu kullanabiliriz.

3. Kullanıcı hesapları üzerinde değişiklik yapmak için aşağıdaki komutları kullanabiliriz.

4. Varolan bir kullanıcıyı sistemden silmek için aşağıdaki komutları kullanabiliriz.

5. Sistemdeki bir kullanıcıyı kilitlemek veya açmak için aşağıdaki komutları kullanabiliriz.

6. Kullanıcı ilkelerini (parola süresi vb.) belirlemek için aşağıdaki komutları kullanabiliriz.

7. Kullanıcılar arası geçiş işlemini (switch user) aşağıdaki komutlarla yapabiliriz.

C-) Kullanıcı ve Grup Yönetiminde Sistemin Kullandığı Yapılandırma Dosyaları

1. Kullanıcı işlemlerinde kullandığımız dosyalardan biri “passwd” dosyasıdır. Bu dosya kullanıcıların ve kullanıcılara ait birçok özelliğin daha tutulduğu bir dosyasıdır. Kullanıcı ve bu özellikler tek satırlık kayıtlar halinde tutulur ve bu satırlardaki herbir özellik “:” işareti ile ayrılır.

2. Kullanıcı işlemlerinde kullandığımız dosyalardan biri “shadow” dosyasıdır. Passwd dosyası bir metin dosyasıdır ve fazla güvenilir değildir. Bu dosyaya ulaşan bir kişi bu dosyadaki şifreleri değiştirebilir yada çözebilir. Linux dağıtımlarının bir çoğu “shadow” güvenliği ile birlikte gelir. Shadow güvenliği parolaları “/etc/shadow” adlı bir dosyada saklar. Parolaları bu dosyaya yazmadan önce, üst düzey algoritmalar kullanarak bu parolaları şifreler. Bu fonksiyon MD5-tabanlı olarak maksimum 34 karakterlik bir şifre üretir. Üretilen karakter katarı $1$ ile başlar ve bundan sonra gelebilecek maksimum 8 karakterlik kısımda da salt değeri yer alır. Salt değeri $ ile son bularak daha sonra gelen 22 karakter ile katar tamamlanır.

3. Kullanıcı işlemlerinde sistemin kullandığı “/etc/skel” dizini bir kullanıcı eklediğimizde bu kullanıcı için oturum açma, kapatma ve başlangıç dosyalarının bir kopyasını temin etmemiz gerekir. Bu dosyalar “.bash_profile”, “bashrc” ve “.bash_logout” dosyalarıdır. Sisteme bir kullanıcı eklediğimizde useradd komutu bu dosyaları “/etc/skel” dizininden kullanıcının ana dizinine kopyalar. Sistem yöneticisi olarak , bu dosyaları dilediğimiz şekilde değiştirebiliriz. Kullanıcıların home dizinlerinde oluşturulmasını istediğimiz dosyaları ve dizinleri “/etc/skel” klasörü altında oluşturmamız yeterli olacaktır.

4. Kullanıcı ve grup yaratırken kullandığımız “/etc/login.defs” dosyasında “useradd” ve “groupadd” komutlarının kullandığı değerler bu dosyada saklanır. Genel olarak kullanıcı parola politikaları , en küçük ve en büyük kullanıcı ve grup tanımlayıcısı değerleri, “qmail” dizinleri ve kullanıcılar kaldırılırken çalıştırılacak komutlar bu dosyada yer alır.

5. Grup işlemlerinde kullandığımız dosyalardan biri “group” dosyasıdır. “/etc/group” dosyasına girdiler “groupadd”, “groupmod”, ve “groupdel” komutları ile işlenir. Kullanıcıların tutulduğu /etc/passwd dosya yapısına çok benzemektedir. Herbir grup ve özellikleri bir satırda tanımlanır. Özellikler “:” işareti ile birbirinden ayrılmaktadır. Özelliklerden ilk alan grup adını tanımlar. İkinci alanda ise parolalar tutulur. Eğer shadow şifreleme etkinleştirilmişse parolalar bu dosya yerine “/etc/gshadow” dosyasında tutulur. Üçüncü alan ise grup tanımlayıcılarının tutulduğu alandır. Son alan ise grup üyelerinden oluşur.

D-) Dosya ve Dizin Erişimlerinin Atamaları

Kullanıcılar ve gruplar kullanılarak dosyaların ve dizinlerin erişimlerini sınırlandırılabilir. Her kullanıcı kendi sahibi olduğu dosyalarda bu işlemleri gerçekleştirebilir. Root kullanıcısı ise tüm dosya ve dizinlerin sahipliklerini ve izinlerini değiştirebilir. Linux dosya yapısına göre her dosyanın veya dizinin bir sahibi birde grubu bulunur. Bir dosyanın sahibi(owner) o dosya veya dizin üzerinde her türlü değişiklik yetkisine sahip olur. Dosyayı veya dizini yeniden adlandırabilir, izinlerini değiştirebilir ve silebilir. Bir dosya veya dizinin sahipliği “chown” komutu ile değiştirilir.

1. Bir dizinin sahipliğini bir kullanıcıya atamak için aşağıdaki komutları kullanabiliriz.

2. Bir dizinin sahipliğini bir gruba atamak için aşağıdaki komutları kullanabiliriz.

3. Bir dosya veya dizin üzerinde izinleri ayarlamak için “chmod” komutu kullanılır. Kullanıcılar için “u”, gruplar için “g”, diğerleri için “o”, herkes için “a”, okuma izni için “r”, yazma izni için “w” çalıştırma izni için “x” sembolleri kullanılır. Komutun kullanımı ile ilgili aşağıda bazı örnekler verilmiştir.

4. Örnek olarak sistemimizde Oracle veritabanı kuracağımızı düşünelim. Oracle kullanıcımızı ve üye olacağı grupları , kurulum dizinlerimizi yaratıp “oracle” kullanıcısına bu dizinler üzerinde gerekli hakları verelim.

E-) Kullanıcı ve Grupları Grafik Arayüzden (gui) Yönetmek

İşletim sistemimizde kullanıcı ve grupları yönetmek için bir konsol bulunmaktadır. Bu konsola erişmek için “System>Administration>Users and Groups” aracını çalıştırmamız yeterlidir.

UsrandGrparrow-up-right

Last updated