wall < "autologout.sh"

Broadcast message from spillerm@unixe.de (pts/1) (Mi Jun 02 12:48:04 2010):
4
Diesen Beitrag schrieb ich vor 9 Jahren. Behalte das beim Lesen bitte im Hinterkopf.

Wer kennt das nicht: da betreut man Serversysteme, auf denen sich permanent x Leute tummeln, und die lassen ihre SSH-Logins einfach offen bis ultimo… Nicht, dass das in der heutigen Zeit noch zu wirklichen Engpässen führen würde im Hinblick auf Ressourcen, aber es erhöht den Verwaltungsaufwand doch ungemein, beispielsweise wenn Wartungsarbeiten anstehen — von sicherheitskritischen Aspekten (insbesondere in Umgebungen, die root-Logins nicht verbieten) mal ganz abgesehen.

Schaut man sich /etc/profile einmal näher an, so stellt man fest, dass Scripte, die in /etc/profile.d liegen, automatisch beim Login ausgewertet werden; so kann man beispielsweise ein kleines Dingelchen erstellen mit folgendem Inhalt:

## /etc/profile.d/autologout.sh
readonly TMOUT="900" && export TMOUT

Anschliessend das Teil mit den richtigen Rechten versehen und ausführbar machen:

$ chmod 0755 /etc/profile.d/autologout.sh

Loggen sich nun User ein, die die bash verwenden, wird die Variable TMOUT automatisch auf 900 (= Zeit in Sekunden, bis Logout bei Inaktivität erfolgt) gesetzt. Und das Nette ist: die User können das mit einem simplen unset nicht einfach umgehen.

$ unset TMOUT
-bash: unset: TMOUT: cannot unset: readonly variable

Sprich: entweder, sie arbeiten aktiv, oder aber sie werden nach einer Viertelstunde gekicked. Wie ich feststellen durfte ein kleines, aber nettes Feature, das viele nicht kennen — das allerdings sehr vielseitig verwendbar ist.

Und damit verabschiede ich mich in ein langes Wochenende…

4
  1. den Logout kann man mit einem simplen „tail -F “ verhindern

  2. ah jetzt ja, fein fein :)

Keine weitere Reaktionen mehr möglich.