Sie alle hätten die Befehle useradd verwendet und passwd Sehr häufig oder zumindest in der jüngsten Entwicklung hätten Sie GUI verwendet, um Benutzerkonten auf Unix-basierten Systemen zu erstellen. Aber als Linux-Systemadministrator sollten Sie über fundierte Kenntnisse verfügen, anstatt sich nur auf wenige Befehle zu verlassen! Dieser Artikel zeigt Ihnen also, wie Sie ohne die Befehle useradd und passwd ein Konto erstellen und ein Passwort einrichten können!
Schritt1:Erstellen Sie ein Linux-Benutzerkonto
Öffnen Sie die Datei:/etc/passwd und fügen Sie den folgenden Eintrag hinzu:
ramya:x:1600:1600:Ramya:/home/ramya:/bin/bash
Aus dem obigen Eintrag würden Sie 7 Felder sehen, die durch Doppelpunkt. getrennt sind Jedes Feld bezieht sich auf –
1: ramya - Login Name 2: x - Password placeholder 3: 1600 - Unique User Id 4: 1600 - Group Id 5: Ramya - Real Name 6: /home/ramya - Home Directory Location 7: /bin/bash - Shell Type
Das 2. Feld „x“ bedeutet, dass beim Login das Passwort für den Benutzer ramya in /etc/shadow verifiziert werden soll Datei. Die Felder 2, 4, 6 hängen wie folgt von anderen Dingen ab:
Schritt 2:Passwort erstellen
Feld 2 hängt von der Datei /etc/shadow ab wo die Passwörter in einem verschlüsselten Format gespeichert werden, das sich auf den Benutzernamen bezieht, wie unten gezeigt. Hier würde ich Ihnen zeigen, wie Sie das verschlüsselte Passwort auf etwas komplexe Weise einrichten, ohne das passwd zu verwenden Befehl.
ramya:$5$salt233$YZX1FTq8qgsnZF.rmDETGh141vWx72j8OPppSwkJ180:::::::
Im obigen Eintrag der Benutzername ramya wird mit einem verschlüsselten Passwort angehängt, das mit der Python-Anweisung generiert wird.
Methode1:
Um das verschlüsselte Passwort zu generieren (z. B. mylogin897) mit sha256-Algorithmus unter Verwendung von Salt $5$salt233 wie unten gezeigt:
$python -c 'import crypt; print crypt.crypt("mylogin897","$5$salt233")'; $5$salt233$YZX1FTq8qgsnZF.rmDETGh141vWx72j8OPppSwkJ180
Um einen Hash mit dem Sha512-Algorithmus zu generieren, verwenden Sie das Salt:$6$salt233.
Methode2:
Python-Version 3.3 und höher enthält mksalt in crypt, was die Verwendung viel einfacher und sicherer macht:
python3 -c 'import crypt; print(crypt.crypt("test", crypt.mksalt(crypt.METHOD_SHA512)))
Jedes Mal, wenn Sie den obigen Code gegen ein neues zufälliges Salt ausführen, werden die Hashs generiert. Wenn Sie den Hash-Algorithmus nicht in der Funktion crypt.mksalt angeben, wird der stärkste verfügbare verwendet. Die folgenden Tabellen zeigen die Hash-Algorithmen, die das Crypt-Modul unterstützt, und ihre stärksten in aufsteigender Reihenfolge:
Die ID des Hashs (Zahl nach dem ersten $) hängt von der verwendeten Methode ab, die Sie in method1 erkennen können:
1 -> MD5
5 -> SHA-256
6 -> SHA-512
Hinweis:In der Kryptografie ist ein Salt eine Zufallsinformation, die als Zusatz verwendet wird Eingabe in eine Einwegfunktion, die ein Passwort oder eine Passphrase hasht. Die Hauptfunktion von Salts besteht darin, sich gegen Wörterbuchangriffe gegen eine Liste von Passwort-Hashes und gegen pro-berechnete Rainbow-Table-Angriffe zu verteidigen.
Lesen Sie auch:So generieren Sie ein selbstsigniertes x509-SHA256-Hash-Zertifikat mit OpenSSL
Schritt 3:Gruppen-ID erstellen
Feld 4 (Gruppen-ID) wird eingerichtet, indem ein Eintrag wie unten gezeigt in /etc/group erstellt wird Datei:
ramya:x:1600
Schritt 4:Home-Verzeichnis erstellen
Feld 6 (Home-Verzeichnis) wird eingerichtet, indem ein Verzeichnis unter /home/ erstellt wird und setzen Sie die Berechtigungen entsprechend mit dem Befehl chown:
mkdir /home/ramya
chown ramya:ramya /home/ramya
Das obige Verzeichnis sollte drwx haben für den Besitzer und für andere nicht beschreibbar.
chmod 700 /home/ramya
$ls -ld /home/ramya drwx------ 74 ramya ramya 2048 Nov 23 09:39 /home/ramya
Jetzt können Sie sich in das Konto ramya einloggen mit dem Passwort mylogin897 . Sobald Sie sich erfolgreich angemeldet haben, werden Sie in eine Bash-Shell versetzt unter dem Verzeichnis /home/ramya