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…