Linux'de kullanıcı işlemleri yapmadan önce sisteme root olarak giriş yaparız.
Linux'de kullanıcı eklemek ve kullanıcı yetki ve özellikleri üzerinde değişiklikler yapmak için iki önemli komut useradd ve usermod komutlarıdır. useradd komutu ile kullanıcı eklerken usermod komutu ilede önceden atanmış kullanıcı özelliklerini değiştirebiliriz.
Bu işlemlere başlamada önce önemli olan bazı bilgileri öğrenmeliyiz. Bir kullanıcının yetkilerini belirleyebildiğimiz grupları bir kullanıcı için birincil grup ve diğer ikincil gruplar şeklinde kategorize edebiliriz.
Kullanıcı yetki, grup ve özelliklerinin kaydının tutulduğu dosyaları aşağıdaki gibi sıralayabiliriz.
- /etc/passwd - Tek satırlık kullanıcı bilgilerinin tutulduğu ayar dosyası.
- /etc/shadow - Tek satırlık kullaıcı şifrelerinin tutulduğu ayar dosyası.
- /etc/group - Sistemdeki grupların kaydının tutulduğu dosya.
- /etc/default/useradd - Eğer useradd komutu ile bir grup belirtilmemişse kullanılacak ayarların bulunduğu dosya
- /etc/login.defs -
useradd komutunu aşağıdaki parametreler yardımı ile kullanıcı eklemek için kullanırız.
useradd -G {grup-adi} kullanciadi useradd [-c comment] [-d home_dir] [-e expire_date] [-f inactive_time] [-g initial_group] [-G group[,...]] [-m [-k skeleton_dir]] [-p passwd] [-s shell] [-u uid [ -o]] login useradd -D [-g default_group] [-b default_home] [-f default_inactive] [-e default_expire_date] [-s default_shell]
-c comment | Şifre dosyasındaki yorum kısmı gireriz. |
-d home_dir | home_dir parametresi ile girilen dizini kullanıcı dizini olarak atamak için kulanılır. Girilmediği takdirde ön tanımlı home dizini login işleminden sonra açılır. |
-e expire_date | Kullanıcı hesabının devre dışı olacacağı tarih. Girilecek tarih YYYY-MM-DD formatında olmalı. |
-f inactive_time | Şifre geçersiz hale geldikten sonra (Şifre değiştirme süreci bittikten sonra ) kullanıcı hesabı tamamen geçersiz olmadan önce kaç gün daha hesabın duracağını belirler. 0 değer şifre süresi dolduktan hemen sonra hesabın devre dışı kalacağını gösterir. -1 değeri bu özelliği devre dışı bırakır . |
-g initial_group | Grup adı veya grup id değeri. Grup adı veya id değeri sistemde önceden bulunmalı. Ön tanımlı grup id'i 1 dir. |
-G group,[,...] | Kullanıcının kayıtlı olacağı ek ikincil gruplar. Boşluk karakteri arada bulunmadan virgül ile ayrılmış bir şekilde gruplar girilmeli. |
-m | Eğer bu parametre girilirse kullanıcı dizini henüz mevcut değilse oluşturuur. Eğer -k opsiyonu kullanılırsa skeleto_dir adresindeki dosya yapısı kullanıcı home dizinine aktarılır aksi takdirde /etc/skel deki yapı kulllanılır. Ön tanımlı olarak -m kullanılmazsa hiçbir klasör yapısı kopyalanmamasıdır. |
-p passwd | crypt fonksiyonu kriptolanmış şifre kullanıcıya atanır. Ön tanımlı değer kullanıcıyı pasif yapmaktadır. |
-s shell | Ön tanımlı shell atanır. Eğer kullanılmazsa sistemin ön tanımlı shell değeri kullanılır |
-u uid | Kullanıcı id si için bir sayısal değer. 99 değerinden büyük ve hiç bir kullanıcı id si ile çakışmayacak bir değer kullanılmalıdır. 99'a kadar olan değerler sistem tarafından kullanılır. Ön tanımlı olarak 99'dan büyük ve hiçbir kullanıcı id'sini atanmamış en küçük değer kullanılır. |
-b default_home | Eğer -d seçeneği kullanılmamışsa ön tanımlı home dizinine eklenecek başlangıç yolunu belirler. |
-e default_expire_date | Tüm kullanıcı hesapları için ön tanımlı geçersiz olma tarihi. |
-f default_inactive | Şifre değiştirme süresi dolduktan sonra tüm kullanıcılar için hesapların pasif olarak kalacağı ön tanımlı süre |
-g default_group | Tüm kullanıcılar için ön tanımlı grup adını değiştrimek için kullanılır |
-s default_shell | Tüm kullanıcılar için ön tanımlı shell'i ayarlamak için kullanılır. |
useradd -DYukarıdaki komutu kullanarak sisteme eklenen her yeni kullanıcı için kullanılacak ön tanımlı değerleri listeleyebiliriz.
grep www /etc/groupYukarıdaki komutu kullanarak sistemde www grubunun olup olmadığını denetleyebiliriz.
groupadd wwwYukarıdaki komut vasıtasıyla eğer www grubu yoksa bu grubu ekleyebiliriz.
useradd -G www ufukYukarıdaki komut vasıtasıyla ufuk adlı kullanıcıyı www grubunada dahil ederek sisteme ekleyebilirz.
passwd ufukYukarıdaki komut vasıtasıyla ufuk adlı kullanıcının şifresini değiştirebiliriz.
id ufukYukarıdaki komut vasıtasıyla ufuk adlı kullanıcının bilgilerini listeleyebiliriz.
useradd -G www,users,workers ufuk-G seçeneği kullanıldığında birden fazla grup adını virgül ile ayırarak ufuk adlı kullanıcıyı bu gruplara dahil ederek ekleyebiliriz.