Limiting a user to a script upon login, nothing else.


 
Thread Tools Search this Thread
Homework and Emergencies Emergency UNIX and Linux Support Limiting a user to a script upon login, nothing else.
# 8  
Old 01-07-2010
If you set your script as their login shell, there's no time during which they can hit ctrl-c and crash the program down to a prompt since it was never run from a prompt in the first place. All they'd do is log themselves out. To get access to arbitrary commands they must run a new shell instance, exploit weaknesses in your input programming, modify your script, or modify their RC files.
# 9  
Old 01-07-2010
Quote:
Originally Posted by Corona688
If you set your script as their login shell, there's no time during which they can hit ctrl-c and crash the program down to a prompt since it was never run from a prompt in the first place. All they'd do is log themselves out. To get access to arbitrary commands they must run a new shell instance, exploit weaknesses in your input programming, modify your script, or modify their RC files.
And how can I set it to their login shell?? I mean, I can script but I understand little of the *NIX (Debian, for this matter) structure...

Appreciate you help!
# 10  
Old 01-07-2010
here you go

Changing your login shell

Basically, set the shell to ~/myscript instead of /bin/bash or whatever shell you are using, or to the full path where the script lives.

I think the command to change the shell for a user is chsh
# 11  
Old 01-07-2010
Quote:
Originally Posted by ppucci
And how can I set it to their login shell?? I mean, I can script but I understand little of the *NIX (Debian, for this matter) structure...

Appreciate you help!
Quote:
Originally Posted by jgt
Replace the shell in /etc/passwd with the name of the script.
Make sure that the script contains all the required path statements etc.
/etc/passwd is a text file that lists users and their login shells, among other things, one user per line.

Quote:
Originally Posted by Corona688
Depending on the system you may also need to add it to /etc/shells in order to allow it.
# 12  
Old 01-08-2010
thank you all, it did work great!!!
# 13  
Old 01-11-2010
If you don't want to allow the user to get the prompt shell, you can put at the very beggining of the script the code listed below.
Code:
trap "exit"  2 3 17 9

When the user choose the "EXIT" option in your script, the shell will be closed and the user will be logged out.

I think the best option is the one that JGT USER gave you.
# 14  
Old 02-03-2010
Quote:
trap "exit" 2 3 17 9
Sorry to be a bore, but never trap signal 9. Also avoid issuing "kill -9" unless you are absolutely desparate to shut a system down.


In a unix shell script this is sufficient to stop the user being left at a shell prompt:
Code:
trap 'exit' 1 2 3 15

To confine the user to a shell script the following line in their profile is what you need.
Code:
exec scriptnaname

With the proviso that the script contains the correct trap statement.

Last edited by methyl; 02-03-2010 at 06:26 PM.. Reason: layout & ambiguous use of the word "trap" !
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Login into another user from user inside script

now i have logged in username : ramesh in unix Now i have to created script file to login into another user and have run a command inside that user and after executing the command i have to exit from that user. Inside script, i have to login into su - ram along with password : haihow and have to... (4 Replies)
Discussion started by: rammm
4 Replies

2. Shell Programming and Scripting

How to Login as another user through Shell script from current user[Not Root]

Hi Every body, I would need a shell script program to login as different user and perform some copy commands in the script. example: Supppose ora_toms is the active user ora_toms should be able to run a script where user: ftptomsp pass: XXX should login through and run the commands ... (9 Replies)
Discussion started by: ujjwal27
9 Replies

3. UNIX for Dummies Questions & Answers

Limiting User mailbox size in /var/spool

How can one limit the size of user mailboxes in /var/spool/mail? (0 Replies)
Discussion started by: proactiveaditya
0 Replies

4. UNIX for Dummies Questions & Answers

User login monitoring script.

Hi guys, I'm need to write a script that runs an infinite loop to check users that login/out of a server. I'm just not sure about the syntax with while loops and whether or not you can include a nested if-statement? Cheers Spaulds (2 Replies)
Discussion started by: Spaulds
2 Replies

5. Shell Programming and Scripting

Running script from other user rather than login user

Hi, My requirement is that i am login from ROOT in a script but when any command is coming which is logging to sqlplus then i have to run it with normal user as only normal user have permission to connect to sqlplus . i tried making a script like this : #! /bin/ksh su -... (3 Replies)
Discussion started by: rawatds
3 Replies

6. Shell Programming and Scripting

limiting data inputs for the user

if my user has to enter the name of months to carry out a search how can I limit the input values to only the month names and nothing else? so far my input criteria for the user is this: i would like it so the user can only enter the months in the way i have stated. otherwise they would... (11 Replies)
Discussion started by: amatuer_lee_3
11 Replies

7. Shell Programming and Scripting

login to different user completely within the script

I am trying to write a script where I would login to a userid with id and password while staying completely within the script. I am doing this in order to edit a file where I change permissions. The objective is to allow one user only to edit a file. This is what I have now. cd $HOME/data ... (1 Reply)
Discussion started by: yakdiver
1 Replies

8. AIX

Limiting length of user in while creating user

Hi all, I am a newbe to aix 5.2. I want to specify the characters used by users while creating user in aix like specifying the length of the password should i use some sript for that if it is then please let me know how to do this if yes give me the link for the scripts. Thanks in advance ... (2 Replies)
Discussion started by: Satya Mishra
2 Replies

9. Shell Programming and Scripting

User Login Monitor Script

I need some help writing a script that I can run as a cron job. I want this script to be able find all the users that have logged on to this machine since the last time the script was run (plan to run daily at 11:30pm, so everyone who logged on that day) and email me who logged on, and when. ... (2 Replies)
Discussion started by: Drewser
2 Replies

10. UNIX for Dummies Questions & Answers

user login script question

hi all, what file(s) needs to be changed and in what way in order to do the following: when user A logs onto freebsd 4.8 automaticaly he needs to start up a script a made that executes: sets ltp0 in polling mode, executes tn5250 keyboard mapping starts tn5250 with the correct parameters. ... (2 Replies)
Discussion started by: termiEEE
2 Replies
Login or Register to Ask a Question