PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SLES 9/10 sulog logout mitprotokollieren



compliance08
13.06.08, 10:38
Hi,

ich benötige nicht nur die su login Einträge in var/log/messages, sondern auch die logouts des jeweiligen su`s. Weiß jemand wie das geht? Bei RedHat Enterprise Linux wird das ganze von Haus aus mitprotokolliert.

Danke und Gruß

cane
13.06.08, 14:22
Nur mal als Tipp: Wenn der User sich nicht ausloggt also das Terminal indem z.B. eine SSH Sitzung auf den Server auf ist einfach schliesst bekommst Du das nicht mit...

mfg
cane

compliance08
16.06.08, 14:34
Hallo,

das ist natürlich klar, es geht aber um den ganz normalen Vorgang, indem ich mit "logout" wieder auf den alten User zurück switche.

Gruß

compliance08
18.06.08, 15:10
Hat vielleicht noch jemand eine Idee?

Gruß

cane
18.06.08, 15:42
Schau doch mal wie redHat das ganze löst.

mfg
cane

Los_Andros
18.06.08, 18:36
Schau doch mal wie redHat das ganze löst.

mfg
cane

geht das bei Red-Hat?
Bei Centos wird mir das nicht angezeigt, was ja binärkompatibel zum RHEL ist.

An einer Lösung wäre ich auch sehr interessiert

Los_Andros
18.06.08, 21:55
hätte da eine Paranoid Lösung anzubieten.

Man benötigt "screen".

Mit screen kann man eine komplette Session mitloggen. Screen an sich ist sehr nützlich um Session Abbrüche zu verhindern, aber man kann es auch "Mißbrauchen".

Einfach die .bashrc in dem jeweiligen Home Verzeichnis anpassen und screen von dort ausführen.

Wird screen mit der Option "-L" gestartet, wird der gesamte Output in eine Logdatei umgeleitet. Mit STRG+D wird ein "logout" ausgeführt, der als letzter Command in der screenlog.%n steht.
Dann einfach auf den last-access auf die Datei zugreifen und per Shellscript den letzten Zugriff (dem Logout) ermitteln und oer .bashrc anzeigen.


Ist etwas gefrickelt, geht aber ;-)

compliance08
20.06.08, 15:54
Hi,

danke für die Ideen. Wie RedHat das macht, ich hab leider keine Ahnung. Ich habe lediglich im Log gesehen, dass beides protkolliert wird. Werde mal schauen ob nicht in der Syslog.conf da noch was zu holen ist.

Gruß

403
21.06.08, 03:59
ist das nicht eher ein Fall fuer pam bzw /etc/default/su?

Los_Andros
21.06.08, 09:06
ist das nicht eher ein Fall fuer pam bzw /etc/default/su?
Also ich kenne kein pam Modul, dass das erledigt
Und für /etc/default/su müsst es dann irgendeinen PArameter geben, der das übernimmt.
Ich kenne den leider nicht

403
21.06.08, 13:03
hm, hm, sieht so aus als muesste man das selber schreiben..

Also hier ansetzen um su mit pam/syslog zu wrappen:



session - this group of tasks cover things that should be done prior
to a service being given and after it is withdrawn. Such tasks include
the maintenance of audit trails and the mounting of the user's home
directory. The session management group is important as it provides
both an opening and closing hook for modules to affect the services
available to a user.






syslog(LOG_ERR|LOG_AUTH, "pam_close_session(): %s", pam_strerror(pamh, pam_err)); \
if ((pam_err = pam_end(pamh, pam_err)) != PAM_SUCCESS) \
syslog(LOG_ERR|LOG_AUTH, "pam_end(): %s", pam_strerror(pamh, pam_err)); \
}



Vielleicht reicht es in das obige Snippet noch getuid() einzubauen, dass der Output dann so
aussieht:

"pam_close_session(): %s , uid %d"

Vielleicht geht es ja doch einfacher ueber die Konfiguration?! Komisch, ich koennte schwoeren das "su: session finished for user xxx" schon gesehen habe. Aber gut das waren wohl su -c Aktionen.


@TE: Wie sieht es denn aus bei Redhat?


Gruss 403