Unix / Linux - Kullanıcı Yönetimi

Bu bölümde, Unix'te kullanıcı yönetimi hakkında ayrıntılı olarak tartışacağız.

Bir Unix sisteminde üç tür hesap vardır -

Kök hesap

Bu aynı zamanda superuserve sistemin tam ve sınırsız kontrolüne sahip olacaktı. Bir süper kullanıcı herhangi bir komutu herhangi bir kısıtlama olmaksızın çalıştırabilir. Bu kullanıcı bir sistem yöneticisi olarak kabul edilmelidir.

Sistem hesapları

Sistem hesapları, sisteme özgü bileşenlerin çalışması için gerekli olanlardır, örneğin posta hesapları ve sshdhesaplar. Bu hesaplar genellikle sisteminizdeki bazı belirli işlevler için gereklidir ve bunlarda yapılacak herhangi bir değişiklik sistemi olumsuz etkileyebilir.

Kullanıcı hesapları

Kullanıcı hesapları, kullanıcılar ve kullanıcı grupları için sisteme etkileşimli erişim sağlar. Genel kullanıcılar genellikle bu hesaplara atanır ve genellikle kritik sistem dosyalarına ve dizinlerine sınırlı erişime sahiptir.

Unix, bir dizi hesabı mantıksal olarak gruplandıran bir Grup Hesabı konseptini destekler . Her hesap, başka bir grup hesabının parçası olacaktır. Bir Unix grubu, dosya izinlerini ve süreç yönetimini yönetmede önemli bir rol oynar.

Kullanıcıları ve Grupları Yönetme

Dört ana kullanıcı yönetim dosyası vardır -

  • /etc/passwd- Kullanıcı hesabı ve şifre bilgilerini saklar. Bu dosya, Unix sistemindeki hesaplar hakkındaki bilgilerin çoğunu içerir.

  • /etc/shadow- İlgili hesabın şifrelenmiş parolasını tutar. Tüm sistemler bu dosyayı desteklemez.

  • /etc/group - Bu dosya, her hesabın grup bilgilerini içerir.

  • /etc/gshadow - Bu dosya, güvenli grup hesabı bilgilerini içerir.

Yukarıdaki tüm dosyaları kontrol edin. cat komut.

Aşağıdaki tablo, hesaplar ve gruplar oluşturmak ve yönetmek için Unix sistemlerinin çoğunda bulunan komutları listelemektedir -

Sr.No. Komut ve Açıklama
1

useradd

Sisteme hesap ekler

2

usermod

Hesap özniteliklerini değiştirir

3

userdel

Hesapları sistemden siler

4

groupadd

Sisteme gruplar ekler

5

groupmod

Grup özniteliklerini değiştirir

6

groupdel

Grupları sistemden kaldırır

Burada bahsedilen her komutun sözdiziminin tamamını kontrol etmek için Manpage Yardım'ı kullanabilirsiniz .

Bir Grup Oluşturun

Şimdi bir grubun nasıl oluşturulacağını anlayacağız. Bunun için herhangi bir hesap oluşturmadan önce grup oluşturmamız gerekiyor aksi takdirde sistemimizdeki mevcut grupları kullanabiliriz. Listelenen tüm gruplara sahibiz/etc/groups dosya.

Tüm varsayılan gruplar, sistem hesabına özel gruplardır ve bunların sıradan hesaplar için kullanılması önerilmez. Dolayısıyla, yeni bir grup hesabı oluşturmak için sözdizimi aşağıdadır -

groupadd [-g gid [-o]] [-r] [-f] groupname

Aşağıdaki tablo parametreleri listeler -

Sr.No. Seçenek ve Açıklama
1

-g GID

Grubun kimliğinin sayısal değeri

2

-o

Bu seçenek, benzersiz olmayan GID'li grup eklemeye izin verir

3

-r

Bu bayrak talimat verir groupadd bir sistem hesabı eklemek için

4

-f

Bu seçenek, belirtilen grup zaten mevcutsa, yalnızca başarı durumuyla çıkılmasına neden olur. -G ile, belirtilen GID zaten mevcutsa, diğer (benzersiz) GID seçilir

5

groupname

Oluşturulacak gerçek grup adı

Herhangi bir parametre belirtmezseniz, sistem varsayılan değerleri kullanır.

Aşağıdaki örnek, çoğu yönetici için oldukça kabul edilebilir olan varsayılan değerlere sahip bir geliştirici grubu oluşturur .

$ groupadd developers

Bir Grubu Değiştirin

Bir grubu değiştirmek için, groupmod sözdizimi -

$ groupmod -n new_modified_group_name old_group_name

Developer_2 grup adını geliştirici olarak değiştirmek için şunu yazın -

$ groupmod -n developer developer_2

Finansal GID'yi 545'e nasıl değiştireceğiniz aşağıda açıklanmıştır -

$ groupmod -g 545 developer

Bir Grubu Sil

Şimdi bir grubu nasıl sileceğimizi anlayacağız. Mevcut bir grubu silmek için tek ihtiyacınız olangroupdel command ve group name. Finansal grubu silmek için komut -

$ groupdel developer

Bu, o grupla ilişkili dosyaları değil, yalnızca grubu kaldırır. Dosyalara sahipleri tarafından hala erişilebilir.

Hesap oluştur

Unix sisteminizde nasıl yeni bir hesap oluşturacağımızı görelim. Bir kullanıcının hesabını oluşturmak için sözdizimi aşağıdadır -

useradd -d homedir -g groupname -m -s shell -u userid accountname

Aşağıdaki tablo parametreleri listeler -

Sr.No. Seçenek ve Açıklama
1

-d homedir

Hesap için ana dizini belirtir

2

-g groupname

Bu hesap için bir grup hesabı belirtir

3

-m

Eğer yoksa ana dizini oluşturur

4

-s shell

Bu hesap için varsayılan kabuğu belirtir

5

-u userid

Bu hesap için bir kullanıcı kimliği belirtebilirsiniz

6

accountname

Oluşturulacak gerçek hesap adı

Herhangi bir parametre belirtmezseniz, sistem varsayılan değerleri kullanır. useradd komut değiştirir /etc/passwd, /etc/shadow, ve /etc/group dosyalar ve bir ev dizini oluşturur.

Bir hesap oluşturan örnek aşağıdadır mcmohd, ana dizini şu şekilde ayarlanıyor: /home/mcmohd ve grup olarak developers. Bu kullanıcıya Korn Shell atanacaktır.

$ useradd -d /home/mcmohd -g developers -s /bin/ksh mcmohd

Yukarıdaki komutu vermeden önce, geliştirici grubunu kullanarak oluşturduğunuzdan emin olun .groupadd komut.

Bir hesap oluşturulduktan sonra şifresini şu şekilde ayarlayabilirsiniz: passwd aşağıdaki gibi komut -

$ passwd mcmohd20
Changing password for user mcmohd20.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.

Yazarken passwd accountname, süper kullanıcı olmanız koşuluyla size şifreyi değiştirme seçeneği sunar. Aksi takdirde, aynı komutu kullanarak ancak hesap adınızı belirtmeden yalnızca parolanızı değiştirebilirsiniz.

Bir Hesabı Değiştirin

usermodkomutu, komut satırından mevcut bir hesapta değişiklik yapmanızı sağlar. Aynı argümanları kullanıruseradd komutunun yanı sıra hesap adını değiştirmenize izin veren -l bağımsız değişkeni.

Örneğin, hesap adını değiştirmek için mcmohd -e mcmohd20 ve ana dizini buna göre değiştirmek için aşağıdaki komutu vermeniz gerekecek -

$ usermod -d /home/mcmohd20 -m -l mcmohd mcmohd20

Bir Hesabı Sil

userdelkomutu mevcut bir kullanıcıyı silmek için kullanılabilir. Dikkatli kullanılmazsa bu çok tehlikeli bir komuttur.

Komut için kullanılabilen yalnızca bir argüman veya seçenek var .r, hesabın ana dizinini ve posta dosyasını kaldırmak için.

Örneğin, mcmohd20 hesabını kaldırmak için aşağıdaki komutu verin -

$ userdel -r mcmohd20

Ana dizini yedekleme amacıyla saklamak istiyorsanız, -rseçeneği. Ana dizini daha sonra gerektiğinde kaldırabilirsiniz.