LOGIN(1) | Dienstprogramme für Benutzer | LOGIN(1) |
login - startet eine Sitzung auf dem System
login [-p] [-h Rechner] [Benutzername] [ENV=VAR...]
login [-p] [-h Rechner] -f Benutzername
login [-p] -r Rechner
Das Programm login wird verwendet, um eine neue Sitzung auf dem System zu starten. Es wird normalerweise automatisch als Antwort auf die login:-Eingabeaufforderung auf dem Terminal des Benutzers ausgeführt. login kann von der Shell besonders behandelt werden und kann nicht als Subprozess gestartet werden. Wenn login von einer Shell aufgerufen wird, sollte es als exec login ausgeführt werden, so dass die aktuelle Shell des Benutzers beendet wird (und somit verhindert wird, dass der neue Benutzer in die Sitzung des alten zurückkehren kann). Der Versuch, von einer Shell außer der Anmelde-Shell login auszuführen, wird eine Fehlermeldung erzeugen.
Falls erforderlich, wird der Benutzer anschließend nach einem Passwort gefragt. Dieses wird während der Eingabe nicht angezeigt. Es sind nur eine kleine Anzahl von Anmeldeversuchen zulässig, ehe login abbricht und die Kommunikation getrennt wird.
Falls der Passwortverfall für Ihr Konto aktiviert wurde, kann es sein, dass Sie vor der weiteren Nutzung nach einem neuen Passwort gefragt werden. Sie müssen Ihr altes und neues Passwort angegeben, bevor Sie fortfahren können. In der Dokumentation zu passwd(1) finden sich weitere Informationen.
Die Benutzer- und Gruppen-IDs werden gemäß den Werten in /etc/passwd gesetzt. Die Werte für $HOME, $SHELL, $PATH, $LOGNAME und $MAIL werden ebenfalls entsprechend den Feldern im Passworteintrag gesetzt. Werte für ulimit, umask und nice können ebenfalls gemäß den Werten im GECOS-Feld gesetzt werden.
Bei einigen Installationen wird anfänglich die Umgebungsvariable $TERM entsprechend dem Terminaltyp Ihrer tty-Zeile, wie sie in /etc/ttytype angegeben ist, gesetzt.
Ein Startskript für Ihren Befehlsinterpreter kann auch ausgeführt werden. Sehen Sie bitte in den entsprechenden Handbuchseiten für weitere Informationen darüber nach.
Eine Subsystem-Anmeldung wird durch einen »*« als erstes Zeichen der Anmelde-Shell gekennzeichnet. Das angegebene Home-Verzeichnis wird als Wurzel für das Dateisystem verwendet, auf welchem der Benutzer tatsächlich angemeldet ist.
Es liegt NICHT in der Verantwortung von login, Benutzer aus der utmp-Datei zu entfernen. Sowohl getty(8) als auch init(8) sind dafür zuständig, die offenkundige Eigentümerstellung einer Terminalsitzung aufzuräumen. Falls Sie login von der Shell ohne exec verwenden, wird der Benutzer, den Sie verwenden, weiterhin als angemeldet erscheinen, obwohl Sie die »untergeordnete Sitzung« beendet haben.
-f
Hinweis: In diesem Fall muss Benutzername angegeben werden.
-h
-p
-r
Die Optionen -r, -h und -f können nur verwendet werden, wenn login von Root ausgeführt wird.
Diese Version von login hat viele Optionen für die Kompilierung, wobei eventuell nicht alle Optionen auf allen Systemen verwendet werden.
Der Ort der Konfigurationsdateien kann je nach Konfiguration des Systems unterschiedlich sein.
Es liegt NICHT in der Verantwortung von login, Benutzer aus der utmp-Datei zu entfernen. Sowohl getty(8) als auch init(8) sind dafür zuständig, die offenkundige Eigentümerstellung einer Terminalsitzung aufzuräumen. Falls Sie login von der Shell ohne exec verwenden, wird der Benutzer, den Sie verwenden, weiterhin als angemeldet erscheinen, obwohl Sie die »untergeordnete Sitzung« beendet haben.
Wie bei jedem anderen Programm kann auch das Erscheinungsbild von login vorgespiegelt werden. Falls unseriöse Benutzer physischen Zugriff auf den Rechner haben, kann dies von einem Angreifer verwendet werden, um das Passwort der Person zu erhalten, die sich als nächste vor den Rechner setzt. In Linux können Benutzer den SAK-Mechanismus verwenden, um einen vertrauenswürdigen Pfad zu erstellen und somit diesem Angriff zu entgehen.
Die folgenden Konfigurationsvariablen in /etc/login.defs beeinflussen das Verhalten dieses Werkzeugs:
CONSOLE_GROUPS (Zeichenkette)
Seien Sie vorsichtig. Benutzer können dauerhaft Zugang zu den Gruppen erlangen, auch wenn sie nicht auf der Konsole angemeldet sind.
DEFAULT_HOME (boolesch)
Falls auf yes gesetzt, wird der Benutzer mit dem Wurzelverzeichnis (/) angemeldet, wenn mit cd nicht in sein Home-Verzeichnis gewechselt werden kann.
ENV_PATH (Zeichenkette)
ENV_SUPATH (Zeichenkette)
ERASECHAR (Zahl)
Wenn der Wert mit »0« beginnt, wird er als Oktalzahl gewertet, wenn er mit »0x« beginnt, als Hexadezimalzahl.
FAIL_DELAY (Zahl)
FAKE_SHELL (Zeichenkette)
HUSHLOGIN_FILE (Zeichenkette)
KILLCHAR (Zahl)
Wenn der Wert mit »0« beginnt, wird er als Oktalzahl gewertet, wenn er mit »0x« beginnt, als Hexadezimalzahl.
LOGIN_RETRIES (Zahl)
Dies wird höchstwahrscheinlich von PAM überschrieben, da standardmäßig das Modul pam_unix drei Versuche enthält. Dennoch stellt dies ein zusätzliches Sicherungssystem dar, falls Sie eine Anmeldemöglichkeit einsetzen, die nicht PAM_MAXTRIES beachtet.
LOGIN_TIMEOUT (Zahl)
LOG_OK_LOGINS (boolesch)
LOG_UNKFAIL_ENAB (boolesch)
Hinweis: Das Protokollieren unbekannter Benutzernamen kann ein Sicherheitsproblem darstellen, wenn ein Benutzer sein Passwort anstelle seines Anmeldenamens eingibt.
TTYGROUP (Zeichenkette), TTYPERM (Zeichenkette)
Standardmäßig ist der Eigentümer des Terminals die Hauptgruppe des Benutzers, die Rechte werden auf 0600 gesetzt.
TTYGROUP kann der Gruppenname oder die als Zahl ausgedrückte Gruppen-ID sein.
Wenn Sie ein write-Programm haben, das »setgid« für eine Gruppe besitzt, der das Terminal gehört, sollten Sie TTYGROUP die Gruppennummer und TTYPERM den Wert 0620 zuweisen. Oder Sie sollten TTYGROUP als Kommentar belassen und TTYPERM den Wert 622 oder 600 zuweisen.
TTYTYPE_FILE (Zeichenkette)
USERGROUPS_ENAB (boolesch)
/var/run/utmp
/var/log/wtmp
/etc/passwd
/etc/shadow
/etc/motd
/etc/nologin
/etc/ttytype
$HOME/.hushlogin
/etc/login.defs
mail(1), passwd(1), sh(1), su(1), login.defs(5), nologin(5), passwd(5), securetty(5), getty(8).
27.07.2018 | shadow-utils 4.5 |