Kullanıcı ve Grup Yönetimi (Linux)

Linux İşletim Sistemlerinde Kullanıcı ve Grup Yönetimi Yapılandırması konusunu ele alacağım. 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ğu da, sistemle etkileşime geçmek ve işlemleri yürütmek için kullanıcılar oluştururlar. Örneğin; Beraos Backup sunucusunun “bareos” adında bir kullanıcı ve bu kullanıcı adına uygun bir de grup oluşturur. 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.

Kullanıcı ve grup yönetiminde kullanacağımız komut ve dizinler aşağıdaki gibidir.

  • adduser: Sisteme bir kullanıcı ekler
  • userdel: Kullanıcı hesabını ve ilgili dosyaları siler.
  • addgroup: Sisteme bir grup ekler
  • delgroup: Sistemden bir grubu kaldırır.
  • usermod: Kullanıcı hesabını değiştirir ya da düzenler.
  • chage: Kullanıcı parolasının sona erme bilgilerini değiştirir.
  • sudo: bir veya daha fazla komutu başka bir kullanıcı olarak çalıştırır (root yetkisiyle).
  • /etc/passwd (kullanıcı bilgileri)
  • /etc/shadow (şifreli parolalar)
  • /etc/group (grup bilgileri)
  • /etc/sudoers  yada visudo (sudo için yapılandırma).

Linux’ta en yetkili root kullanıcısıdır. Ancak sistemde root kullanıcısı olmadan da root kullanıcısının yetkilerine sahip olmamız mümkün. Bu imkânı bize Linux Grup Yönetimi veriyor.

Grup Yönetimi

Bir grup oluşturulduğunda bu grubun bilgisi /etc dizini içerisinde yer alan group isimli dosyada tutuluyor. Yani mevcut grupları görüntülemek istersek /etc dizini içerisinde yer alan group dosyasına bakmamız gerekir. Bunun için less /etc/group , more /etc/group , cat /etc/group komutlarından herhangi birini kullanabiliriz

RedHat

Kullanıcıların ait olduğu grupları görmek istersek komut satırına id kullanıcı_adı şeklinde yazmamız yeterli olacaktır. “onur” kullanıcı hesabın üye olduğu grupları sorgulamak için id onur yazarak çıktısında görülecektir.

RedHat

Yeni bir grup oluşturmak istersek groupadd yeni_grup_adı şeklinde komutumuzu kullanırız. Örnek olarak “backup” isimli bir grup oluşturmak için komut satırına groupadd backup yazılması yeterli olacaktır.

[root@demironur ~]# groupadd backup

Oluşturulan grubu sorgulamak için grup bilgilerinin tutulduğu dosyaya bakmak üzere cat /etc/group | grep grup_adı komutunu ya da tail -n 1 /etc/group kullanabiliriz.

Redhat

Parametreler bunlarla sınırlı olmayıp man groupadd ve groupadd --help komutları yardımı ile diğer parametreleri de keşfedebilirsiniz.

Oluşturduğunuz grupları silmek isterseniz konsola groupdel grup_adı şeklinde komut yazmanız yeterli olacaktır.

[root@demironur ~]# groupdel backup

Kullanıcı Yönetimi

Sistemimize yeni bir kullanıcı eklemek için kullanabileceğimiz iki farklı komut var. Bunlar adduser ve useradd komutlarıdır.

adduser

Yeni kullanıcı eklemek için komutumuzu adduser kullanıcı_adı şeklinde veriyoruz. Böylelikle oluşturduğumuz kullanıcıya ait home dizini home/kullanıcı_adı şeklinde otomatik olarak oluşmuş oluyor. Örnek olması açısından “osman” isimli bir kullanıcı hesabı eklemek üzere terminale adduser osman komutunu yazıyorum.

Çıktıları inceleyecek olursak home dizini otomatik olarak oluşturulmuş ve “osman” isimli kullanıcı “osman” grubuna dahil edilmiş. Yeni eklemiş olduğumuz “osman” isimli kullanıcı hesabını teyit etmek için; Sistemde kullanıcı hesapları ile ilgili bilgilerin tutulduğu etc dizini içerisindeki passwd dosyaya bakalım.

RedHat

Pardus (Debian)

# cd /home && ls

Redhat

Pardus (Debian)

useradd

Kullanıcı oluşturmak için bahsettiğimiz 2. komut olan useradd komutu kullanımı; useradd -m kullanıcı_adı şeklindedir. Burada komutumuz ile birlikte kullanmış olduğumuz m parametresi ile, oluşturduğumuz kullanıcıya ait home dizininin otomatik oluşmasını sağlanır. Birde son olarak kullanıcıya ait bir parola belirlemek üzere passwd kullanıcı_adı şeklinde komutumuzu vererek parolamızı oluşturuyoruz. (Debian Dağıtımlarda)

Parola oluşturma işleminde kullandığımız passwd kullanıcı_adı şeklindeki komut bütün hesaplar için şifre güncelleme işleminde de kullanılıyor. Parola bilgileri /etc dizini altındaki shadow isimli dosyada şifreli şekilde tutulmaktadır.

Örnek olarak Redhat ve Debian sunucularda “selim” isimli bir kullanıcı hesabı oluşturmak üzere komutumu useradd selim şeklinde verdikten sonra “selim” isimli kullanıcının RedHat’ de otomatik home dizinin oluştuğunu görüp debian sunucuda ise oluşmadığı görülmektedir. Yeniden useradd –m yusuf komutu kullanarak home dizinin oluştuğunu görmekteyiz.

Görüldüğü gibi “Selim” ve “Yusuf” isimli kullanıcıların hesapları başarılı şekilde oluşturulmuştur. Şimdi home dizinini ve passwd dosyasına bakarak bu durumu teyit edelim.

# cd /home && ls

RedHat

Pardus (Debian)

Kullanıcı Silmek

Oluşturulan kullanıcı hesabını home dizini ile birlikte silmek için deluser --remove-home kullanıcı_adı yada userdel –r kullanıcı_adı komutunu kullanmamız yeterli olacaktır.

RedHat

Pardus (Debian)

Gruplara Kullanıcı Ekleme-Çıkarma İşlemi

Yeni grup ve yeni kullanıcı hesabı nasıl oluşturulur yukarıda bahsetmiştim. Sıra geldi gruba yeni kullanıcı ekleme ve gruptan kullanıcı çıkarma işlemlerine.

Gruba kullanıcı eklemek için gpasswd komutunun a parametresi yada usermod komutunun –aG paratetresini kullanarak yeterli olacaktır.

gpasswd -a kullanıcı_adı ekleneceği_grup_adı

usermod –aG ekleneceği_grup_adı kullanıcı_adı

RedHat

Pardus (Debian)

Gruptan Kullanıcı Çıkarmak

Eğer gruba dahil olan bir kullanıcıyı gruptan çıkarmak istersek de gpasswd komutunun d parametresini kullanarak, komutu gpasswd -d kullanıcı_adı çıkarılacağı_grup_adı şeklinde kullanmamız gerekmektedir.

RedHat

Pardus (Debian)

Kullanıcı Değişimi

Geçiş işlemleri için su (Switch User) komutunu kullanıyoruz. Komutun kullanımı ile ilgili iki farklı durum var, bunlar;

  • su kullanıcı_adı : diğer kullanıcı kimliğine geçiş yapar.
  • su - kullanıcı_adı : diğer kullanıcı kimliğine geçiş yapar ve direk olarak geçiş yapılan kullanıcının profili ile çalışmaya başlar.

Örnek ile açıklamak gerekirse;

İlk önce “root” kullanıcısıyken “ali” isimli kullanıcı hesabına su ali komutuyla giriş yapıp daha sonra whoami komutuyla hesabı kontrol ediyorum ve exit ile çıkış yapıyorum.

İkinci olarak “root” kullanıcısıyken “ali” hesabına geçiş yapmak için su - ali komutuyla giriş yapıp daha sonra whoami komutuyla hesabı kontrol ediyorum ve exit ile çıkış yapıyorum.

# su ali kullanıcı geçişte exit komutuyla exit çıktısı alınırken, su – ali kullanıcı geçişte exit komutuyla logout çıktısı almaktayız.

Aktif-Pasif Hesap Ayarlama

Kullanıcı hesabını kilitlemek için usermod -L kullanıcı_adı komutunu kullanırız. Parolayı devre dışı bırakmak için, sistem otomatik olarak şifreli parolanın önüne ‘!’ işareti koyar ve kullanıcı hesabına giriş yapamaz.

Pasif durumdaki hesabı aktif hale getirmek için ise usermod -U kullanıcı_adı komutu kullanılır. Aynı şekilde hesabın tekrar aktif hale getirilmesi de devre dışı bırakılmış olan kullanıcı parolasının önündeki ‘!’ işaretinin kaldırılmasıyla gerçekleşir.

RedHat

Pardus (Debian)

Kullanıcılarda sadece !! yada ! görürsekte kullanıcı password atanmamış olmaktadır. Onu da passwd komutuyla atayabiliriz.

Redhat

Pardus (Debian)

# last komutuyla sisteme giriş yapan son kullanıcıları gösterir. # last -5 komutu ile son 5 gösterir. (Detaylı bilgi için # last –help)

Pardus (Debian)

 Vakit ayırıp okuduğunuz için teşekkür ederim. Başka yazımda görüşmek dileğiyle…

You may also like...

Leave a Reply