11 Wege um Account-Informationen in Linux zu bekommen

Dieser Artikel zeigt elf nützliche Möglichkeiten, um Informationen über Benutzer auf einem Linux-System zu finden. Die folgenden Befehle helfen die Kontodaten eines Benutzers abzurufen, Anmeldedaten anzuzeigen und aufzuzeigen, was Benutzer auf dem System gerade machen.

1. id Command

id ist ein sehr einfaches command line utility um sich schnell Benutzer- und Gruppen-IDs anzeigen zu lassen.

Im Folgenden ein Beispiel über die Ausgabe:

$ id qm-b

uid=1000(qm-b) gid=1000(qm-b) groups=1000(qm-b),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),108(lxd),124(wireshark),130(sambashare)

2. groups Command

Der groups command ist sinnvoll, um sich schnell die Benutzer-Gruppen anzeigen zu lassen, denen ein Benutzer angehört:

$ groups qm-b

qm-b : qm-b adm cdrom sudo dip plugdev lxd wireshark sambashare

3. finger Command

finger ist ein nützlicher command wenn man mehr Informationen über einen Benutzer in Linux sehen will. In den meisten Linux-Systemen ist finger allerdings nicht vorinstalliert.

Um das Paket zu installieren kann man unter Ubuntu/Debian den folgenden Command nutzen:

$ sudo apt install -y finger

Der Command zeig den “echten” Namen eines Benutzers, das home Verzeichnis, die shell, Login-Name/-Zeit u.ä.. Die Ausgabe sieht in etwa wie folgt aus:

$ finger qm-b

Login: qm-b        			    Name: qm-b
Directory: /home/qm-b           Shell: /bin/bash
On since Fri Dec 22 04:39 (CET) on tty2 from tty2
   2 hours 1 minute idle
No mail.
No Plan.

4. getent Command

getent ist ein command line utility umm Einträge aus __N__ame __S__ervice __S__witch (NSS) Bibliotheken aus einer spezifizierten System-Datenbank zu erhalten.

Um Account-Details eines Benutzers zu bekommen, kann die passwd Datenbank genommen werden.

$ getent passwd qm-b

qm-b:x:1000:1000:qm-b,,,:/home/qm-b:/bin/bash

5. grep Command

grep ist wohl eines der am Häufigsten bekannten Command Line Tools und bietet die gleiche Ausgabe wie zuvor der getent Command, wenn man die System-Account Datei /etc/passwd verwendet:

$ grep -i qm-b /etc/passwd

qm-b:x:1000:1000:qm-b,,,:/home/qm-b:/bin/bash

6. lslogins Command

Der lslogins command zeigt Informationen über bekannte Benutzer im System. Gibt man die -u flag, werden ausschließlich “echte” Accounts angezeigt.

$ lslogins -u

UID USER       PROC PWD-LOCK PWD-DENY LAST-LOGIN     GECOS
   0 root       144                                  root
1000 qm-b      70                     Dec24/04:00:07 qm-b,,,

7. users Command

Der users command zeigt alle Benutzernamen der aktuell angemeldeten Benutzer.

$ users

qm-b
root

8. who Command

Der who command zeigt alle angemeldeten Benutzer, inklusive der Terminals über die sie angemeldet sind.

$ who -u

qm-b  tty2         2021-12-24 04:02 alt        2417 (tty2)
$ who -u

qm-b  pts/0         2021-12-24 04:02  .        2534500 (192.168.1.101)

9. w Command

w command zeigt alle angemeldeten Benutzer inklusive was sie gerade machen.

$ w

12:46:54 up  2:10,  1 user,  load average: 0.34, 0.44, 0.57
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU  WHAT
qm-b     pts/0    192.168.1.101    04:02    2:10m  0.12s  0.01s w

10. last oder lastb command

last/lastb commands zeigt eine Liste aller zuletzt angemeldeten Benutzer.

$ last
# OR
$ last -a   # zeigt den hostnamen in der letzten spalte
qm-b     pts/0         Fri Dec 24 04:02     still logged in    192.168.1.101
reboot   system boot   Fri Dec 24 03:58     still running      5.4.0-91-generic
# ...

Um alle Benutzer aufzulisten, die zu einer spezifischen Zeit online waren, kann die Flag -p genommen werden:

$ last -ap now

qm-b     pts/0         Fri Dec 24 04:02     still logged in    192.168.1.101
reboot   system boot   Fri Dec 24 03:58     still running      5.4.0-91-generic

wtmp begins ..

11. lastlog Command

Der lastlog command is used to find the details of a recent login of all users or of a given user as follows.

$ lastlog
# ODER
$ lastlog -u qm-b 	# lastlog records eines spezifischen Benutzers (qm-b)
Username         Port     From             Latest
root                                       **Never logged in**
daemon                                     **Never logged in**
bin                                        **Never logged in**
sys                                        **Never logged in**
sync                                       **Never logged in**
www-data                                   **Never logged in**
mdm                                        **Never logged in**
# ..