The environment is Ubuntu Server 12.04
I would like to create a user on a server that is only able to ssh into a shell that runs tail -f on a log file and closes the session once the program ends (ctrl+c).
Is there a way to achieve this?
To be pedantic, it won't be ctrl+c, but
You can put essentially whatever you want in the user's shell in
You can use some interpreter other than rbash, but it is advisable to use a restricted shell in such cases.
To be extremely pedantic about it, you should add the script's path to
Keep in mind also that the user could potentially put the script in the background, or use some options (
ssh forced commands spring to mind if you're happy to use keypair based authentication.
You can configure ssh to run a command of your choice when you log in using public key authentication. To do this, generate a pair of keys:
but you can add a command to this, and ssh will run that command when logging in with the key:
Then the user can ssh to the machine using