10-07-2010
- You an wrap su in an expect script (exposing the password a bit),
- or set up passwordless login for you-here to him-here using rsh/remsh/rexec/ssh/ssh2,
- or hit some custom service like a web site running under that user
- or have some sort of server/daemon process running or frequent cron under that user looking for some sort of message (file, named pipe, email, tcp/udp IP port or other similar network facility like netbui) to trigger the commands you need,
- or write an setuid bit friendly C program or restricted shell owned by other id that can be executed by you. Setuid is not shell friendly, as it drops LD_LIBRARY_PATH or the like used for dynamic linking and must be compiled staticly or with -R to give it library path for every necessary lib file.
This User Gave Thanks to DGPickett For This Post:
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
I wrote a unix script that will perform differnt tasks on bahalf of number of users. I use "sudo" to run the script. The problem is when I execute the command: su - user -c "xxx " > output_file, I get the system output header frm the su command. Is there a way to get rid of it instdead of... (2 Replies)
Discussion started by: nimo
2 Replies
2. Shell Programming and Scripting
Hi
Is there any way to switch user inside a shell script? (4 Replies)
Discussion started by: ./hari.sh
4 Replies
3. Shell Programming and Scripting
Hi everyone:
I have a big trouble, I need create a script that must switch user and then must execute
certain commands, sadly neither my user nor the second user have no privileges
for sudo, I've tried everything but seems su doesn't accept input redirection, please help me, it's very... (8 Replies)
Discussion started by: edgarvm
8 Replies
4. Shell Programming and Scripting
Hi,
I am trying to create one script where I have to login as another user inside the script to exeute some commands
How can i achieve this?
Many thanks in advance. (4 Replies)
Discussion started by: prarat
4 Replies
5. Shell Programming and Scripting
Hi,
script1.sh
script2.sh
script3.sh
From above, script1.sh is the main script which is executed from root user, creates installation directory, changing ownership and execution rights etc..etc.. and finally calls scripot2.sh and script3.sh to create the database as well as for post... (1 Reply)
Discussion started by: milink
1 Replies
6. UNIX for Dummies Questions & Answers
hi,
i want to execute a shell script as a different user. the flow is like this.
there is a html web page from which i have to call a shell script. web server is apache. to call the shell script from html page, a perl script is required.
so the html page calls the perl script and the perl... (2 Replies)
Discussion started by: Little
2 Replies
7. Shell Programming and Scripting
I want to switch to another user without password inside shell.
I used the below command and it is not working.
sudo su - user1
user1 is not in the sudoers file. This incident will be reported.
I'm getting the above message.
If I want to add user1 into the sudoers file using... (5 Replies)
Discussion started by: Roozo
5 Replies
8. Shell Programming and Scripting
Hi everyone:
I need create a script that must switch user and then must execute
certain commands, sadly neither my user nor the second user have no privileges
for su - ,
I've tried everything but seems su doesn't accept input redirection,
please help me,
... (4 Replies)
Discussion started by: ooilinlove
4 Replies
9. Shell Programming and Scripting
Hi,
I need to switch from local user to root user in a shell script.
I need to make it automated so that it doesn't prompt for the root password.
I heard the su command will do that work but it prompt for the password.
and also can someone tell me whether su command spawns a new shell or... (1 Reply)
Discussion started by: Little
1 Replies
10. UNIX for Beginners Questions & Answers
HI
in a server we can't login with root user directly but i can login with different user and then i can switch to root user by su command
Requirement
is there anyway where i can write a script without mentioning password in file as mentioning the root password is not the... (3 Replies)
Discussion started by: scriptor
3 Replies
LEARN ABOUT MOJAVE
git-shell
GIT-SHELL(1) Git Manual GIT-SHELL(1)
NAME
git-shell - Restricted login shell for Git-only SSH access
SYNOPSIS
chsh -s $(command -v git-shell) <user>
git clone <user>@localhost:/path/to/repo.git
ssh <user>@localhost
DESCRIPTION
This is a login shell for SSH accounts to provide restricted Git access. It permits execution only of server-side Git commands implementing
the pull/push functionality, plus custom commands present in a subdirectory named git-shell-commands in the user's home directory.
COMMANDS
git shell accepts the following commands after the -c option:
git receive-pack <argument>, git upload-pack <argument>, git upload-archive <argument>
Call the corresponding server-side command to support the client's git push, git fetch, or git archive --remote request.
cvs server
Imitate a CVS server. See git-cvsserver(1).
If a ~/git-shell-commands directory is present, git shell will also handle other, custom commands by running "git-shell-commands/<command>
<arguments>" from the user's home directory.
INTERACTIVE USE
By default, the commands above can be executed only with the -c option; the shell is not interactive.
If a ~/git-shell-commands directory is present, git shell can also be run interactively (with no arguments). If a help command is present
in the git-shell-commands directory, it is run to provide the user with an overview of allowed actions. Then a "git> " prompt is presented
at which one can enter any of the commands from the git-shell-commands directory, or exit to close the connection.
Generally this mode is used as an administrative interface to allow users to list repositories they have access to, create, delete, or
rename repositories, or change repository descriptions and permissions.
If a no-interactive-login command exists, then it is run and the interactive shell is aborted.
EXAMPLE
To disable interactive logins, displaying a greeting instead:
$ chsh -s /usr/bin/git-shell
$ mkdir $HOME/git-shell-commands
$ cat >$HOME/git-shell-commands/no-interactive-login <<EOF
#!/bin/sh
printf '%s
' "Hi $USER! You've successfully authenticated, but I do not"
printf '%s
' "provide interactive shell access."
exit 128
EOF
$ chmod +x $HOME/git-shell-commands/no-interactive-login
To enable git-cvsserver access (which should generally have the no-interactive-login example above as a prerequisite, as creating the
git-shell-commands directory allows interactive logins):
$ cat >$HOME/git-shell-commands/cvs <<EOF
if ! test $# = 1 && test "$1" = "server"
then
echo >&2 "git-cvsserver only handles "server""
exit 1
fi
exec git cvsserver server
EOF
$ chmod +x $HOME/git-shell-commands/cvs
SEE ALSO
ssh(1), git-daemon(1), contrib/git-shell-commands/README
GIT
Part of the git(1) suite
Git 2.17.1 10/05/2018 GIT-SHELL(1)