Benutzerverwaltung

Die Benutzerverwaltung eines Systems stellt an den Systemadministrator verschiedene Anforderungen. Bereits während der Installation von Debian GNU kann ein Benutzer hinzugefügt werden. Dies sollte auch auf jeden Fall geschehen. Nachdem das System in den produktiven Betrieb übergegangen ist, sind Aufgaben wie das anlegen oder löschen von Benutzern, das anpassen von Zugriffsrechten oder Quotas (beispielsweise zur Beschränkung des Plattenplatzes je Benutzer) durch den Systemadministrator zu erledigen.

Informationen zu Zugriffsrechten finden sich an anderer Stelle in dieser Dokumentation, hier soll es zunächst um das hinzufügen und löschen von Benutzeraccounts gehen.

Benutzer hinzufügen

Das hinzufügen neuer Benutzer ist Aufgabe des Systemadministrators und muss daher mit Superuser-Rechten durchgeführt werden. Neben dem klassischen Weg, dem hinzufügen der erforderlichen Daten mittels eines Editors in den entsprechenden Dateien, steht unter Debian GNU das Programm adduser zur Verfügung.


adduser [--home DIR] [--shell SHELL] [--no-create-home] [--uid ID]
[--firstuid ID] [--lastuid ID] [--gecos GECOS] [--ingroup GROUP | --gid ID]
[--disabled-password] [--disabled-login] user
   Add a normal user

adduser --system [--home DIR] [--shell SHELL] [--no-create-home] [--uid ID]
[--gecos GECOS] [--group | --ingroup GROUP | --gid ID]
[--disabled-password]
[--disabled-login] user
   Add a system user

adduser --group [--gid ID] group
addgroup [--gid ID] group
Add a system group

adduser user group
Add an existing user to an existing group

Global configuration is in the file /etc/adduser.conf.
Other options are [--quiet] [--force-badname] [--help] [--version]
[--conf
FILE].


adduser kennt eine Reihe von Optionen die in der Manpage beschrieben sind oder, in verkürzeter Form, mittels adduser -h angezeigt werden. Für den „Hausgebrauch“ ist es ausreichend das Programm ohne weitere Optionen aufzurufen, adduser verfügt über einen interaktiven Modus in dem alle notwendigen Angaben erfragt werden.

sushi:~# adduser 
Enter a username to add: dd
Adding user dd...
Adding new group dd (1001).
Adding new user dd (1001) with group dd.
Creating home directory /home/dd.
Copying files from /etc/skel
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
Changing the user information for dd
Enter the new value, or press return for the default
	Full Name []: Donald Duck
	Room Number []: 
	Work Phone []: 
	Home Phone []: 
	Other []: 
Is the information correct? [y/n] y
					

Zunächst ist der Benutzer (Loginname) anzugeben. Hier bietet es sich an eine kurze Zeichenkette zu wählen, diese Angabe wird bei jeder Anmeldung am System benötigt.

Unter Debian GNU wird für jeden neuen Benutzer auch gleich eine eigene Gruppe erzeugt, die Heimatverzeichnisse für jeden Benutzer (mit Ausnahme von „root“) befinden sich unterhalb von /home/. Dort wird für jeden Benutzer ein Verzeichnis mit dem Namen des Benutzers erzeugt. Weiterhin werden alle dateien aus dem Verzeichnis /etc/skel/ in das Homeverzeichnis des Benutzers kopiert. Hierbei handelt es sich um verschiedene Voreinstellungen, beispielsweise für die bash, welche dann von Benutzer angepasst werden können.


sushi:~# ls -a /etc/skel/ 
.  ..  .alias  .bash_logout  .bash_profile  .bashrc  .cshrc


Es wird dann (zur Sicherheit doppelt) nach einem Passwort gefragt. Weiterhin sollte der „Full Name“ des Benutzers korrekt angegeben werden. Alle weiteren Angaben stammen aus der Urzeit der Unix Systeme und müssen nicht ausgefüllt werden. Abschliessend kann noch entschieden werden ob alle Angaben korrekt ausgefüllt wurden. Ist dies der Fall so wird der Benutzer dem System hinzugefügt und der Zugang steht ab sofort zur Verfügung. Wird das Programm abgebrochen (durch Eingabe von„n“ oder auch „CTRL+C“ so werden alle bereits erzeugten Dateien, Verzeichnisse und Einträge in Konfigurationsdateien wieder entfernt.

Benutzer löschen

Das entfernen von Benutzern aus dem System ist deutlich einfacher. Hierzu steht das Kommando deluser zu Verfügung. Auch diese Programm kann interaktiv benutzt werden, hier aber ein Beispiel mit der Angabe des Benutzernamens auf der Kommandozeile:


sushi:~# deluser dd
Removing user dd...
done.


Zu beachten ist das dabei nicht das Homeverzeichnis des Benutzers gelöscht wird. Dies bleibt dem Systemadministrator überlassen.