Heim > System-Tutorial > LINUX > Hauptteil

Einführung automatischer Abmeldemethoden unter Linux, um längere Zeiträume der Benutzerinaktivität zu verhindern

王林
Freigeben: 2024-01-04 16:38:16
nach vorne
1378 Leute haben es durchsucht

Stellen wir uns ein solches Szenario vor. Sie verfügen über einen Server, auf den häufig viele Benutzer von verschiedenen Systemen im Netzwerk aus zugreifen. Es ist möglich, dass einige Benutzer vergessen, sich von der Sitzung abzumelden, während die Sitzung geöffnet bleibt. Wir alle wissen, wie gefährlich es ist, eine Benutzersitzung verbunden zu lassen. Einige Benutzer verwenden dies möglicherweise, um absichtlich Dinge zu tun, die das System beschädigen. Und werden Sie als Systemadministrator jedes System aufsuchen, um zu überprüfen, ob sich der Benutzer abgemeldet hat? Tatsächlich ist dies völlig unnötig. Und wenn es Hunderte oder Tausende von Maschinen im Netzwerk gibt, ist das zu aufwändig. Sie können jedoch festlegen, dass sich Benutzer automatisch abmelden, wenn sie für einen bestimmten Zeitraum auf dem Computer oder in der SSH-Sitzung inaktiv sind. In diesem Tutorial erfahren Sie, wie Sie dies auf einem Unix-ähnlichen System tun. Es ist überhaupt nicht schwierig. Mach es mit mir.

Implementierung der automatischen Abmeldung inaktiver Benutzer nach einer gewissen Zeit unter Linux
Es gibt drei Möglichkeiten, dies zu erreichen. Schauen wir uns zunächst die erste Methode an.

Methode 1:

Bearbeiten Sie die Datei ~/.bashrc oder ~/.bash_profile:

$ vi ~/.bashrc
Nach dem Login kopieren

oder,

$ vi ~/.bash_profile
Nach dem Login kopieren

Fügen Sie die folgenden Zeilen hinzu:

TMOUT=100
Nach dem Login kopieren

Dadurch wird der Benutzer nach 100 Sekunden Inaktivität automatisch abgemeldet. Sie können diesen Wert nach Bedarf definieren. Speichern und schließen Sie die Datei.

Führen Sie den folgenden Befehl aus, damit die Änderungen wirksam werden:

$ source ~/.bashrc
Nach dem Login kopieren

oder,

$ source ~/.bash_profile
Nach dem Login kopieren

Lassen Sie die Sitzung nun 100 Sekunden lang im Leerlauf laufen. Nach 100 Sekunden Inaktivität wird die folgende Meldung angezeigt und der Benutzer meldet sich automatisch von der Sitzung ab.

timed out waiting for input: auto-logout
Connection to 192.168.43.2 closed.
Nach dem Login kopieren

Diese Einstellung kann vom Benutzer einfach geändert werden. Denn die Datei ~/.bashrc gehört dem Benutzer selbst.

Um die Timeout-Einstellung zu ändern oder zu löschen, löschen Sie einfach die oben hinzugefügte Zeile und führen Sie den Quellbefehl ~/.bashrc aus, damit die Änderung wirksam wird.

Darüber hinaus können Benutzer auch den folgenden Befehl ausführen, um die Zeitüberschreitung zu deaktivieren:

$ export TMOUT=0
Nach dem Login kopieren

oder,

$ unset TMOUT
Nach dem Login kopieren

Wenn Sie verhindern möchten, dass Benutzer diese Einstellung ändern, verwenden Sie stattdessen die folgende Methode.

Methode 2:
Melden Sie sich als Root-Benutzer an.

Erstellen Sie eine neue Datei mit dem Namen autologout.sh.

# vi /etc/profile.d/autologout.sh
Nach dem Login kopieren

Fügen Sie Folgendes hinzu:

TMOUT=100
readonly TMOUT
export TMOUT
Nach dem Login kopieren

Speichern und beenden Sie die Datei.

Fügen Sie ausführbare Berechtigungen hinzu:

# chmod +x /etc/profile.d/autologout.sh
Nach dem Login kopieren

Jetzt melden Sie sich ab oder starten Sie das System neu. Inaktive Benutzer werden nach 100 Sekunden automatisch abgemeldet. Normale Benutzer können diese Konfiguration nicht ändern, selbst wenn sie die Sitzungsverbindung beibehalten möchten. Sie erzwingen das Beenden nach 100 Sekunden.

Beide Methoden funktionieren sowohl für lokale als auch für Remote-Sitzungen (d. h. Benutzer, die lokal angemeldet sind, und Benutzer, die über SSH auf dem Remote-System angemeldet sind). Sehen wir uns an, wie Sie automatisch nur inaktive SSH-Sitzungen abmelden, ohne sich automatisch von lokalen Sitzungen abzumelden.

Methode 3:
Auf diese Weise wird der SSH-Sitzungsbenutzer nur dann automatisch abgemeldet, wenn er eine Zeit lang inaktiv war.

Bearbeiten Sie die Datei /etc/ssh/sshd_config:

$ sudo vi /etc/ssh/sshd_config
Nach dem Login kopieren

Folgende Zeilen hinzufügen/ändern:

ClientAliveInterval 100
ClientAliveCountMax 0
Nach dem Login kopieren

Speichern und beenden Sie die Datei. Starten Sie den SSHD-Dienst neu, damit die Änderungen wirksam werden.

$ sudo systemctl restart sshd
Nach dem Login kopieren

Jetzt melden Sie sich per SSH beim Remote-System an. Nach 100 Sekunden wird die SSH-Sitzung automatisch geschlossen und Sie sehen die folgende Meldung:

$ Connection to 192.168.43.2 closed by remote host.
Connection to 192.168.43.2 closed.
Nach dem Login kopieren

Jetzt wird sich jeder, der sich über SSH von einem Remote-System aus bei diesem System anmeldet, nach 100 Sekunden Inaktivität automatisch abmelden.

Das obige ist der detaillierte Inhalt vonEinführung automatischer Abmeldemethoden unter Linux, um längere Zeiträume der Benutzerinaktivität zu verhindern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:jb51.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage