GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So verwalten Sie Benutzer mit useradd unter Linux

Benutzer hinzufügen Der Befehl ist ein Low-Level-Dienstprogramm, das zum Hinzufügen/Erstellen von Benutzerkonten in Linux verwendet wird und andere Unix-ähnliche Betriebssysteme.

Linux ist ein Mehrbenutzersystem, was bedeutet, dass mehr als eine Person gleichzeitig mit demselben System interagieren kann. Diese Benutzer müssen erstellt werden, bevor sie das System verwenden.

Beim Aufruf useradd erstellt ein neues Benutzerkonto gemäß den in der Befehlszeile angegebenen Optionen und den in /etc/default/useradd festgelegten Standardwerten Datei. useradd liest auch den Inhalt der /etc/login.defs Datei. Diese Datei enthält die Konfiguration für die Shadow-Passwort-Suite, wie z. B. die Passwort-Ablaufrichtlinie, Bereiche von Benutzer-IDs, die beim Erstellen von System- und regulären Benutzern verwendet werden, und mehr.

Nur root oder Benutzer mit sudo-Berechtigungen können den Befehl useradd verwenden, um ein neues Benutzerkonto zu erstellen. Beim Aufruf erstellt useradd ein neues Benutzerkonto gemäß den in der Befehlszeile angegebenen Optionen und den in /etc/default/useradd festgelegten Standardwerten Datei.

  • Es bearbeitet /etc/passwd , /etc/shadow , /etc/group und /etc/gshadow Dateien für die neu erstellten Benutzerkonten.
  • Erstellt und füllt ein Home-Verzeichnis für den neuen Benutzer.
  • Legt Berechtigungen und Eigentumsrechte für das Home-Verzeichnis fest.

Inhaltsverzeichnis

  1. Neuen Benutzer erstellen
  2. Neuen Benutzer hinzufügen und Home-Verzeichnis erstellen
  3. Erstellen Sie einen Benutzer mit einem anderen Home-Verzeichnis
  4. Benutzer mit einer bestimmten Benutzer-ID
  5. Benutzer mit einer bestimmten Benutzer-ID
  6. Hinzufügen eines Benutzers zu mehreren Gruppen
  7. Benutzer ohne Basisverzeichnis
  8. Benutzer mit Ablaufdatum des Kontos
  9. Benutzer mit Ablaufdatum des Passworts
  10. Hinzufügen benutzerdefinierter Kommentare zu Benutzern
  11. Festlegen einer Benutzer-Login-Shell
  12. Erstellen eines Systembenutzers
  13. Verkettung der Argumente
  14. Ändern der standardmäßigen useradd-Werte
  15. Löschen eines Benutzers aus Linux
  16. Hinzufügen einer Gruppe in Linux
  17. Benutzergruppe ändern

1. Erstellen Sie einen neuen Benutzer

Grundlegende Syntax von useradd Befehl ist:

# sudo useradd [options] username

Beispiel:

sudo useradd citizix

Wenn wir unter Linux einen neuen Benutzer mit der useradd hinzufügen Befehl, wird es in einem gesperrten Zustand erstellt und um dieses Benutzerkonto zu entsperren, müssen wir mit dem passwd ein Passwort für dieses Konto festlegen Befehl.

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

Ein Eintrag wird automatisch zu /etc/passwd hinzugefügt Datei:

$ cat /etc/passwd | grep citizix
citizix:x:1001:1001::/home/citizix:/bin/bash

Die Felder in /etc/passwd werden durch Doppelpunkt : getrennt und sie stellen Folgendes dar:

  • Benutzername :Anmeldename des Benutzers, der zum Anmelden am System verwendet wird. Es sollte zwischen 1 und 32 Zeichen lang sein.
  • Passwort :Benutzerpasswort (oder x-Zeichen), gespeichert in /etc/shadow Datei im verschlüsselten Format.
  • Benutzer-ID (UID) :Jeder Benutzer muss eine Benutzer-ID haben (UID ) Benutzeridentifikationsnummer. Standardmäßig UID 0 ist für den Root-Benutzer und UIDs im Bereich von 1-99 reserviert sind für andere vordefinierte Konten reserviert. Weitere UIDs im Bereich von 100-999 sind für Systemkonten und Gruppen reserviert.
  • Gruppen-ID (GID) :Die primäre Gruppen-ID (GID ) Gruppenidentifikationsnummer, gespeichert in /etc/group Datei.
  • Benutzerinformationen :Dieses Feld ist optional und ermöglicht es Ihnen, zusätzliche Informationen über den Benutzer zu definieren. Beispiel:vollständiger Name des Benutzers. Dieses Feld wird durch den ‚Finger‘-Befehl gefüllt.
  • Basisverzeichnis :Der absolute Speicherort des Home-Verzeichnisses des Benutzers.
  • Schale :Der absolute Speicherort der Shell eines Benutzers, z. B. /bin/bash .

2. Neuen Benutzer hinzufügen und Home-Verzeichnis erstellen

Verwenden Sie das -m (--create-home ) Option zum Erstellen des Benutzer-Home-Verzeichnisses als /home/username :

sudo useradd -m username

Der obige Befehl erstellt das Home-Verzeichnis des neuen Benutzers und kopiert Dateien aus /etc/skel Verzeichnis in das Home-Verzeichnis des Benutzers.

3. Erstellen Sie einen Benutzer mit einem anderen Home-Verzeichnis

Standardmäßig erstellt useradd ein Home-Verzeichnis mit demselben Namen wie der Benutzername. Um ein anderes Home-Verzeichnis zu erstellen, verwenden Sie -d Argument mit dem Pfad zu diesem Verzeichnis.

Dieser Befehl erstellt das Home-Verzeichnis /opt/citizixone für den Benutzer Citifixon.

sudo useradd -d /opt/citizixone citizixone

Checken Sie /etc/passwd ein

$ cat /etc/passwd | grep citizixone
citizixone:x:1002:1002::/opt/citizixone:/bin/bash

4. Benutzer mit einer bestimmten Benutzer-ID

Wenn Sie eine Benutzer-ID für den zu erstellenden Benutzer angeben müssen, verwenden Sie das Argument -u (--uid ) so:

sudo useradd -u 1009 citizix

5. Spezifische Gruppen-ID

Um eine Gruppen-ID anzugeben, verwenden Sie -g (--gid ) Option wie in diesem Beispiel:

sudo useradd -g citizix citizixtwo

Überprüfen Sie die GID des Benutzers mit diesem Befehl:

$ sudo id citizixtwo
uid=1003(citizixtwo) gid=1001(citizix) groups=1001(citizix)

$ cat /etc/passwd | grep citizixtwo
citizixtwo:x:1003:1001::/home/citizixtwo:/bin/bash

6. Benutzer zu mehreren Gruppen hinzufügen

Wenn Sie einen Benutzer mehreren Gruppen hinzufügen möchten, verwenden Sie das -G (--groups ) Option wie in diesem Beispiel:

Fügen Sie den Benutzer citizix hinzu zu Gruppen admins , webadmin , developers :

sudo usermod -a -G admins,webadmin,developers citizix

Erstellen Sie einen Benutzer citizixtwo Hinzufügen zu den Gruppen admins , webadmin , developers :

sudo useradd -G admins,webadmin,developers citizix

Verwenden Sie diese Befehle, um zu überprüfen, ob die Benutzer erfolgreich zu den Gruppen hinzugefügt wurden:

sudo id citizix
sudo id citizixtwo

7. Benutzer ohne Basisverzeichnis

Wenn Sie einen Benutzer ohne Home-Verzeichnis erstellen möchten, verwenden Sie das -M Möglichkeit:

sudo useradd -M citizix

8. Benutzer mit Kontoablaufdatum

Manchmal möchten Sie einen Benutzer mit Ablaufdatum erstellen. Verwenden Sie diesen Befehl, um einen Benutzer citizixfour zu erstellen das am 2021-12-30 abläuft :

sudo useradd -e 2021-12-30 citizixfour

Um das Alter des Kontos und des Passworts zu überprüfen, verwenden Sie chage Befehl:

$ sudo chage -l citizixfour
Last password change                    : Oct 08, 2021
Password expires                    : never
Password inactive                   : never
Account expires                     : Dec 30, 2021
Minimum number of days between password change      : 0
Maximum number of days between password change      : 99999
Number of days of warning before password expires   : 7

9. Benutzer mit Ablaufdatum des Passworts

Das -f Das Argument wird verwendet, um die Anzahl der Tage zu definieren, die der Benutzer nach Ablauf eines Kennworts inaktiviert ist. Ein Wert von 0 Benutzerkonto deaktivieren, sobald das Passwort abgelaufen ist. Standardmäßig ist der Kennwortablaufwert auf -1 gesetzt bedeutet nie ablaufen.

Hier in diesem Beispiel legen wir ein Ablaufdatum für das Kontopasswort auf 45 days fest auf einem Benutzer citizixfive mit -e und -f Optionen.

sudo useradd -e 2021-12-30 -f 45 citizixfive
sudo chage -l citizixfive

10. Benutzerspezifische Kommentare hinzufügen

Das -c (--comment ) Option fügt eine kurze Beschreibung für den neuen Benutzer hinzu. Normalerweise werden der vollständige Name des Benutzers oder die Kontaktinformationen als Kommentar hinzugefügt.

sudo useradd -c "Citizix User" citizixsix

Überprüfen Sie den /etc/passwd

$ cat /etc/passwd | grep citizixsix
citizixsix:x:1006:1006:Citizix User:/home/citizixsix:/bin/bash

11. Festlegen einer Benutzer-Login-Shell

Das -s (--shell ) Option wird verwendet, um eine Login-Shell anzugeben. Wir können entweder eine der installierten Shells wie /bin/bash verwenden oder bin/zsh oder für Benutzer, die nichts mit der Login-Shell zu tun haben, können wir /sbin/nologin machen um anzugeben, dass es keine Login-Shell gibt:

# Specify /bin/zsh
sudo useradd -s /bin/zsh citizix

# Specify no login
sudo useradd -s /sbin/nologin citizix

12. Erstellen eines Systembenutzers

Manchmal benötigen wir Systembenutzer, die entweder vom System oder von Anwendungen verwendet werden, die wir im System installieren.
Verwenden Sie den -r (--system ) Argument zum Definieren eines Systembenutzers:

sudo useradd -r grafana

13. Verkettung der Argumente

Wir können die Argumente auch beim Erstellen eines Benutzers verketten.

Überprüfen Sie dieses Beispiel zum Erstellen eines Benutzers beim Erstellen eines angegebenen Home-Verzeichnisses /var/www/citizix und Definieren einer benutzerdefinierten Login-Shell /bin/zsh und Hinzufügen eines Kommentars Citizix Web User :

sudo useradd -m -d /var/www/citizix -s /bin/zsh -c "Citizix Web User" -U citizix

14. Ändern der Standardwerte für useradd

Das useradd Standardwerte werden in der Datei /etc/default/useradd gespeichert .

Überprüfen Sie den Inhalt von /etc/default/useradd :

$ cat /etc/default/useradd
# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes

Sie können sie auch mit dem Argument -D abfragen für useradd Befehl:

$ sudo useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes

Um diese Werte zu aktualisieren oder zu ändern, bearbeiten Sie entweder die Datei oder verwenden Sie useradd -D Werte übergeben.

Beispiel zum Ändern der Login-Shell von /bin/bash nach /bin/zsh

sudo useradd -D -s /bin/zsh

Lassen Sie uns überprüfen, ob es aktualisiert wurde:

$ sudo useradd -D | grep -i shell
SHELL=/bin/zsh

15. Löschen eines Benutzers aus Linux

Um einen Benutzer zu löschen, verwenden Sie userdel Befehl:

sudo userdel citizixfive

16. Hinzufügen einer Gruppe unter Linux

Um eine Gruppe manuell zu erstellen, verwenden Sie den Befehl.

Dadurch wird eine Gruppe sftp-users erstellt in unserem System:

sudo groupadd sftp-users

Lassen Sie uns bestätigen, dass die Gruppe erstellt wurde

$ sudo grep sftp-users /etc/group
sftp-users:x:1007:

Verwenden Sie den Befehl -G für andere Gruppen (-G fügt den Benutzer einer neuen Gruppe hinzu, behält ihn aber auch in der alten Gruppe (anhängen).

Verwenden Sie die id Befehl zum Bestätigen

sudo id citizix

17. Benutzergruppe ändern

Um einen Benutzer zu erstellen und seine primäre Gruppe in die angegebene zu ändern, verwenden Sie -g Möglichkeit:

sudo useradd -g citizix citizixseven

Schlussfolgerung

Wir haben untersucht, wie grundlegende Operationen mit useradd durchgeführt werden Befehle. Wir haben es geschafft, Benutzer zu erstellen, sie zu Gruppen hinzuzufügen und sie zu ändern oder zu löschen.

Sie können die Hilfeseiten verwenden, um mehr über den Befehl useradd zu erfahren:

man useradd

Um alle Optionen für useradd zu überprüfen, geben Sie den Befehl im Terminal ohne Option ein:

$ useradd
Usage: useradd [options] LOGIN
       useradd -D
       useradd -D [options]

Options:
  -b, --base-dir BASE_DIR       base directory for the home directory of the
                                new account
  -c, --comment COMMENT         GECOS field of the new account
  -d, --home-dir HOME_DIR       home directory of the new account
  -D, --defaults                print or change default useradd configuration
  -e, --expiredate EXPIRE_DATE  expiration date of the new account
  -f, --inactive INACTIVE       password inactivity period of the new account
  -g, --gid GROUP               name or ID of the primary group of the new
                                account
  -G, --groups GROUPS           list of supplementary groups of the new
                                account
  -h, --help                    display this help message and exit
  -k, --skel SKEL_DIR           use this alternative skeleton directory
  -K, --key KEY=VALUE           override /etc/login.defs defaults
  -l, --no-log-init             do not add the user to the lastlog and
                                faillog databases
  -m, --create-home             create the user's home directory
  -M, --no-create-home          do not create the user's home directory
  -N, --no-user-group           do not create a group with the same name as
                                the user
  -o, --non-unique              allow to create users with duplicate
                                (non-unique) UID
  -p, --password PASSWORD       encrypted password of the new account
  -r, --system                  create a system account
  -R, --root CHROOT_DIR         directory to chroot into
  -P, --prefix PREFIX_DIR       prefix directory where are located the /etc/* files
  -s, --shell SHELL             login shell of the new account
  -u, --uid UID                 user ID of the new account
  -U, --user-group              create a group with the same name as the user
  -Z, --selinux-user SEUSER     use a specific SEUSER for the SELinux user mapping

Linux
  1. Verwalten Sie die Home-Verzeichnisse von Linux-Benutzern mit systemd-homed

  2. So löschen Sie Benutzerkonten mit Home-Verzeichnis in Linux

  3. So erstellen Sie mehrere Benutzerkonten in Linux

  4. Benutzer zu Gruppe in Linux hinzufügen, Anleitung (mit Beispielen)

  5. Verwalten Sie Linux-Benutzer und Linux-Gruppen

So erstellen Sie Benutzer mit dem Befehl Useradd in Linux

So verwalten Sie Nodejs-Versionen mit n in Linux

Hinzufügen neuer Benutzer in Linux mit dem Useradd-Befehl

So erstellen und verwalten Sie neue Benutzer unter Linux

So verwalten Sie Speicher mit GParted Linux

So erstellen/fügen Sie Benutzer in Linux hinzu