Klawfinger
Klawfinger

Reputation: 29

Is it possible to disable completely linux Redirection Operators ( <<, >>, <, >, >| )

Is it possible to totally disallow Redirection Operators ( <<, >>, <, >, >| ) in linux, namely on a RedHat distro running bash shell?

Upvotes: 0

Views: 464

Answers (1)

Paul Hodges
Paul Hodges

Reputation: 15418

You want rbash - a restricted shell.

This can be loaded in .bashrc, or .bash_profile.

6.10 The Restricted Shell

If Bash is started with the name rbash, or the --restricted or -r option is supplied at invocation, the shell becomes restricted. A restricted shell is used to set up an environment more controlled than the standard shell. A restricted shell behaves identically to bash with the exception that the following are disallowed or not performed:

  • Changing directories with the cd builtin.
  • Setting or unsetting the values of the SHELL, PATH, ENV, or BASH_ENV variables.
  • Specifying command names containing slashes.
  • Specifying a filename containing a slash as an argument to the . builtin command.
  • Specifying a filename containing a slash as an argument to the -p option to the hash builtin command.
  • Importing function definitions from the shell environment at startup.
  • Parsing the value of SHELLOPTS from the shell environment at startup.
  • Redirecting output using the >, >|, <>, >&, &>, and >> redirection operators.
  • Using the exec builtin to replace the shell with another command.
  • Adding or deleting builtin commands with the -f and -d options to the enable builtin.
  • Using the enable builtin command to enable disabled shell builtins.
  • Specifying the -p option to the command builtin.
  • Turning off restricted mode with set +r or set +o restricted.

These restrictions are enforced after any startup files are read.

When a command that is found to be a shell script is executed (see Shell Scripts), rbash turns off any restrictions in the shell spawned to execute the script.

Upvotes: 1

Related Questions