Mehrfaches Anmelden verhindern

Alles rund um die Systemverwaltung, die Administration und Konfiguration Eures Linuxsystems

Moderator: Moderatoren

Antworten
dshks

Mehrfaches Anmelden verhindern

Beitrag von dshks » 27. Jan 2005, 12:29

Hallo,
ich bin auf der Suche nach einem Skript, dass ein mehrfaches Anmelden von Benutzern auf verschiedenen Clients verhindert.

cu

Werbung:
schweer
Hacker
Hacker
Beiträge: 268
Registriert: 2. Jan 2004, 23:40
Wohnort: Bochum

Re: Mehrfaches Anmelden verhindern

Beitrag von schweer » 27. Jan 2005, 20:22

ernst hat geschrieben:ich bin auf der Suche nach einem Skript, dass ein mehrfaches Anmelden von Benutzern auf verschiedenen Clients verhindert.
Habe ich mal gefunden, aber bisher nie verwendet:
Julius Szelagiewicz (julius turtle com)
Fri, 7 Feb 2003 09:32:36 -0500 (EST)

* Messages sorted by: [ date ][ subject ][ author ]
* Next message: Jim Hays "[K12OSN] Cannot connect from Mac OS/X"
* Previous message: Paul Iadonisi "Re: [K12OSN] Prevent a user to log twice"

Ok, guys, here we go again ;-)
Avery good place to check for multiple logins an any *nix system
is /etc/profile. below is the function I use on my HP-UX and linux
computers. put the function definition at the beginning of the
/etc/profile and invoke it where you find it convenient. In RH8.0 you may
have to replace "who -u" with "last -R | grep "still logged in"", because
who seems to be broken. good luck, julius

nologin()
{
#nologin - test for user name already logged in

num=1
numps=0
u=$LOGNAME
if [ "$u" = "julius" -o "$u" = "root" ]
then
num=1
else
num=`who| cut -d" " -f1|grep "^$LOGNAME"$|wc -l`
fi

if [ $num -gt 1 ]
then
numps=`ps -eu $LOGNAME |grep -v -e sleep -e COMMAND|wc -l`
num=`expr $numps + 1`
fi
#[ $num -gt 1 ] to allow su if no login (0 occurences)

if [ $num -gt 1 ]
then
echo yours would be login number $num of name $LOGNAME
echo this is a big no-no!
echo if somebody else used your name, notify D.P. department
echo it is vital to the system\'s well being to know who the users are
echo it is with a heavy processor, that i have to deny you access.
echo have a nice day nevertheless - HAL very junior
exit
#else
# echo you are the one and only $LOGNAME - enjoy!

fi
}
wolfgang

Luppes
Newbie
Newbie
Beiträge: 8
Registriert: 22. Dez 2003, 01:05
Wohnort: Morbach, Rh.-Pf.

Beitrag von Luppes » 1. Feb 2005, 21:34

Hallo,

auch mich hat es genervt, dass sich User an mehreren Terminals gleichzeitig anmelden konnten. Folgender Beitrag hat bei mir zum Erfolg geführt:

http://www.linux-club.de/viewtopic.php?t=77

Insbesondere der letzte Kommentar hat mein Problem sofort gelöst:
in /etc/kde3/kdm/Xstartup steht das:

Code: Alles auswählen

 # multiple login verhinder, userprozesse killen 
 if [ $USER != "root" ]; then 
         skill -u $USER 
         skill -9 -u $USER 
 fi 
falls du einen anderen dm verwendest, musst halt die entsprechende config suchen.
Gruß,
Luppes
1 + 1 = 10

dshks

Danke das war es fast perfekt

Beitrag von dshks » 2. Feb 2005, 16:02

Hi,
fast genau das, wonach ich gesucht habe :D .
Ich habe es noch etwas angepasst:

Code: Alles auswählen

# multiple login verhinder, userprozesse killen
if [ $USER = "root" -o $USER = "mein_account" ]; then
 echo $USER um `date` korrekt eingeloggt >> /tmp/doppelt_eingeloggt
else
        echo $USER um `date` entfernt >> /tmp/doppelt_eingeloggt
        /usr/bin/skill -u $USER
        /usr/bin/skill -9 -u $USER
fi
Der zuletzt angemeldete User schmeißt den vorher angemeldeten raus. Das ist schon mal klasse!!
Perfekt wäre es, wenn der zuletzt angemeldete auch mit entfernt wird, vielleicht noch mit einer Meldung, dass doppelte logins nicht erlaubt sind.

cu ernst

Luppes
Newbie
Newbie
Beiträge: 8
Registriert: 22. Dez 2003, 01:05
Wohnort: Morbach, Rh.-Pf.

Re: Danke das war es fast perfekt

Beitrag von Luppes » 2. Feb 2005, 17:06

Der zuletzt angemeldete User schmeißt den vorher angemeldeten raus. Das ist schon mal klasse!!
Stimmt, das ist auch eine interessante Variante.
Perfekt wäre es, wenn der zuletzt angemeldete auch mit entfernt wird,
Komisch, bei mir ist das der Fall. Sobald jemand auf einem zweiten Terminal sich anmelden möchte, fliegt er auf beiden raus und muss sich neu anmelden.
vielleicht noch mit einer Meldung, dass doppelte logins nicht erlaubt sind.
Das ist auch eine gute Idee und müsste doch zu machen sein...

Gruß,
Luppes
1 + 1 = 10

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast