SSH sessions beenden

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
NCoDer
Beiträge: 42
Registriert: 01.02.2004 11:48:54

SSH sessions beenden

Beitrag von NCoDer » 05.05.2005 19:27:53

Habe folgendes Problem: Auf meinem System werden 42 eingeloggte Benutzer angezeigt, das sind alles alte nicht korrekt beendete SSH-Root-Sessions.

1. Frage: Wie beende ich deren Login-Status? kill pid geht nicht

2.Frage: Wie konfiguriere ich meinen sshd damit er die Session automatisch nach einem Timeout beendet? Habe

Code: Alles auswählen

ClientAliveInterval 60
ClientAliveCountMax 3
im meiner sshd_config stehen, das nützt aber nichts, die session bleiben ewig offen

Benutzeravatar
thorben
Beiträge: 722
Registriert: 14.09.2003 23:23:49

Beitrag von thorben » 05.05.2005 20:08:52

moin,
"kill -9 PID" geht auch nicht?

gruß
thorben

NCoDer
Beiträge: 42
Registriert: 01.02.2004 11:48:54

Beitrag von NCoDer » 06.05.2005 08:41:26

Damit kann ich den Prozess killen, aber der user bleibt eingeloggt. w zeigt immer noch 42 eingeloggte Bebutzer an.

Kann man nicht irgendwie in deren virtuelle Konsole wechseln und sich dann ausloggen?

Das ist meine Ausgabe von w:

Code: Alles auswählen

3:root     pts/0    dsl-084-056-230- 20Apr05 15days  0.00s  0.01s bash
4:root     pts/1    dsl-084-056-230- 20Apr05 15days  0.01s  0.01s -bash
5:root     pts/2    dsl-084-056-234- 22Apr05 13days  0.00s  0.00s -bash
6:root     pts/3    dsl-084-056-230- 21Apr05 15days  0.01s  0.01s -bash
7:root     pts/4    dsl-084-056-231- 23Apr05 13days  0.02s  0.00s -bash
8:root     pts/5    dsl-084-056-231- 23Apr05 13days  0.00s  0.00s -bash
usw...
Außerdem wäre eine IdleTimeout Funktion für SSH wichtig. Hat da keiner eine Idee? Ich habe die gleiche Konfiguration auf einem VirtualServer laufen, da wird die session immer nach 2 Minuten Inaktivität beendet.

NCoDer
Beiträge: 42
Registriert: 01.02.2004 11:48:54

Beitrag von NCoDer » 06.05.2005 17:40:29

Das TimeOut Problem habe ich nun mit setzen der bash Variablen $TMOUT gelöst.

Die idle sessions kriege ich aber trotzdem nicht weg. Hat niemand 'ne Idee? Außer rebooten?

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22359
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 06.05.2005 17:45:31

Was passiert denn wenn du die ssh beendest?

Code: Alles auswählen

 /etc/init.d/ssh stop 
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

NCoDer
Beiträge: 42
Registriert: 01.02.2004 11:48:54

Beitrag von NCoDer » 06.05.2005 17:48:40

Gar nichts. Laufende Sessions werden nicht beendet. (Zum Glück, sonst käme ich gar nicht mehr an den Server). Ich administriere komplett remote über ssh.

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22359
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 06.05.2005 18:32:55

Stell mal fest welche pids vom sshd noch da sind.

Code: Alles auswählen

 ps -ef |grep sshd 

Code: Alles auswählen

 
root@biljana:/home/matthias# ps -ef |grep sshd
root      8153     1  0 17:36 ?        00:00:00 /usr/sbin/sshd
root     12089  8153  0 18:22 ?        00:00:00 sshd: falk [priv]
falk     12091 12089  0 18:22 ?        00:00:00 sshd: falk@pts/3
root@biljana:/home/matthias#
Damit der User rausfliegt muß in diesem Falle die pid 12091 abgeschossen werden

Code: Alles auswählen

 kill 12091 
reicht. Vieleicht funktionierst ja auch bei deinem Problem.

______________________________________________________________________________________________________
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

NCoDer
Beiträge: 42
Registriert: 01.02.2004 11:48:54

Beitrag von NCoDer » 06.05.2005 19:51:04

Tja, nun erscheinen die jeweiligen Sessions nicht mehr, weder mit ps -au noch mit w. Aber who meldet weiterhin 41 User???

Wer weiß, woher who seine Informationen bezüglich der eingeloggten user bezieht? Das Manual sagt aus /etc/utmp oder /etc/wtmp. Die gibt es aber beide nicht.

Benutzeravatar
ThorstenS
Beiträge: 2875
Registriert: 24.04.2004 15:33:31

Beitrag von ThorstenS » 06.05.2005 20:14:13

such mal mittels lsof nach wtmp - hast du evtl. das file gelöscht aber ein Prozess hat es noch im Zugriff? Dann könnte sowas passieren.

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22359
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 06.05.2005 22:12:29

Im

Code: Alles auswählen

 /etc/ 
, das halte ich für ein Gerücht.

Versuch mal die Dateien

Code: Alles auswählen

 /var/run/utmp  /var/log/wtmp  
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

NCoDer
Beiträge: 42
Registriert: 01.02.2004 11:48:54

Beitrag von NCoDer » 07.05.2005 10:47:26

Du hast recht, es gibt diese Dateien, aber die sind nicht sehr hilfreich. Es ist nicht ersichtlich ob und wie darin gespeichert ist, wieviele Session gerade offen sind. Kein Plaintext.

Benutzeravatar
ThorstenS
Beiträge: 2875
Registriert: 24.04.2004 15:33:31

Beitrag von ThorstenS » 07.05.2005 11:03:32

Das wird dir helfen:
last -f $DATEI

Antworten