LinuxQuestions.org
Help answer threads with 0 replies.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie
User Name
Password
Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question? If it is not in the man pages or the how-to's this is the place!

Notices


Reply
  Search this Thread
Old 09-23-2004, 12:30 PM   #1
qowpal
LQ Newbie
 
Registered: Sep 2004
Posts: 3

Rep: Reputation: 0
Question I want to force user logouts


I would like to know if there is a way to log off all users that remain logged in after business hours. They are Windows clients logged into a Red Hat 9 box.
 
Old 09-23-2004, 12:39 PM   #2
masand
LQ Guru
 
Registered: May 2003
Location: INDIA
Distribution: Ubuntu, Solaris,CentOS
Posts: 5,522

Rep: Reputation: 69
hi there

what protocol are they using to login to linux machines???

regards
 
Old 09-23-2004, 12:45 PM   #3
qowpal
LQ Newbie
 
Registered: Sep 2004
Posts: 3

Original Poster
Rep: Reputation: 0
TCP/IP
 
Old 09-23-2004, 12:51 PM   #4
serz
Member
 
Registered: Apr 2003
Location: Buenos Aires, Argentina
Distribution: Slackware, Gentoo
Posts: 397

Rep: Reputation: 30
Quote:
Originally posted by qowpal
TCP/IP
He meant telnet/ssh, or whatever.
 
Old 09-23-2004, 12:57 PM   #5
masand
LQ Guru
 
Registered: May 2003
Location: INDIA
Distribution: Ubuntu, Solaris,CentOS
Posts: 5,522

Rep: Reputation: 69
hi there

sorry,
i meant whether telnet, or other service

regards
 
Old 09-23-2004, 01:01 PM   #6
qowpal
LQ Newbie
 
Registered: Sep 2004
Posts: 3

Original Poster
Rep: Reputation: 0
telnet
 
Old 09-23-2004, 01:16 PM   #7
masand
LQ Guru
 
Registered: May 2003
Location: INDIA
Distribution: Ubuntu, Solaris,CentOS
Posts: 5,522

Rep: Reputation: 69
hi there

i have written one program which is a module for my project

i will uploading that soon to sourceforge.net( it has been already delayed though)

i can give u the compiled binary if u want...

i will be able to give the code,once that is released under the GNU license,which will be done after it is uploaded

regards
 
Old 09-23-2004, 01:44 PM   #8
btmiller
Senior Member
 
Registered: May 2004
Location: In the DC 'burbs
Distribution: Arch, Scientific Linux, Debian, Ubuntu
Posts: 4,290

Rep: Reputation: 378Reputation: 378Reputation: 378Reputation: 378
This actually isn't terribly hard at all. All you need to do to disconnect a login session is to kill -9 the user's shell. So you can read the list of prohibited users from a file, do ps aux and grep for shells being run by those users, and pass 'em on to kill -9. Should be a not terribly difficult bash or Perl script to write. Run it from cron at the end of the day, and presto.

Of course, you need a way to prevent them from re-logging on. There are tools that limit user login times, but I've never used them. Alternatively, if you want nobody but root to be able to log on during off hours, you can have your cron file touch /etc/nologin and then have another cron entry remove that file at the start of business the next day.
 
Old 09-23-2004, 01:54 PM   #9
masand
LQ Guru
 
Registered: May 2003
Location: INDIA
Distribution: Ubuntu, Solaris,CentOS
Posts: 5,522

Rep: Reputation: 69
hi there

kill -9

will surely eject the user but at some cost though

what about the utmp file entries??,they are ditd if the usr logs out/logs in

u need to maintain that too for records

and if the user has made some process free of the terminal, then u need to kill that,that will not be killed after u terminate the bash session

i had initailly tries the
ps -aux
thing but it did not give me the desired results


regards
 
Old 09-23-2004, 02:33 PM   #10
btmiller
Senior Member
 
Registered: May 2004
Location: In the DC 'burbs
Distribution: Arch, Scientific Linux, Debian, Ubuntu
Posts: 4,290

Rep: Reputation: 378Reputation: 378Reputation: 378Reputation: 378
Well, it's easy enough to simply kill all the processes associated with a particular user (and deny them access to cron and at so they can't be restarted). You could also try a normal kill (SIGTERM not SIGKILL) of the login shell, which should cause all the clean-up to be done. BTW, I just tried kill 9'ing the shell myself, and the utmp/wtmp info does seem to be written out correctly (at least based on the results of w and last). I think this is because the process controlling the session (i.e. telnetd, sshd, or init/getty for local connections) detects the exit and writes out the log info, independent of the user's shell. I'm not 100% sure that this is how it works, though.
 
Old 09-23-2004, 02:52 PM   #11
masand
LQ Guru
 
Registered: May 2003
Location: INDIA
Distribution: Ubuntu, Solaris,CentOS
Posts: 5,522

Rep: Reputation: 69
hi there

there are utmp funcions in C which allowu to manuallly edit th utmp file

see more on that

man setutent

these functions are standard utm functions and are used to edit the utmp file
upon login/logout


regards
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
kdeinit hangs because of user logouts emu eduja Linux - General 0 01-17-2005 03:41 AM
Force user to be in a group to use su? jrbush82 Linux - Security 2 06-03-2004 09:48 PM
Force user login with different account rte Linux - Newbie 1 04-01-2004 09:09 AM
Force user ust Linux - General 1 10-09-2003 11:03 AM
'force user' options does not work? Cps530 Linux - Security 2 10-04-2002 06:16 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie

All times are GMT -5. The time now is 08:13 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration