Bashrc 对给定用户禁用除给定命令之外的所有命令

Bashrc 对给定用户禁用除给定命令之外的所有命令

除了那些包含给定单词的命令之外,是否可以获取bashrc用户输入的每一个命令?

就像您可以使用别名来更改用户的含义一样,您可以将“cd”等别名设置为空。这样用户就无法再应用该命令。

也许这样你就可以让给定用户只能应用一个命令?

答案1

如果您只需要用户使用 sftp 或 rsync 远程访问文件,但无法运行 shell 命令,那么使用rssh或者scponly

如果您需要用户只能运行几个程序,请设置受限外壳对于他们来说,例如rbashrksh。在受限 shell 中,PATH无法更改,只能执行路径中的程序。请注意不要允许允许用户运行其他程序的程序,!例如.对文件的访问仍然由文件权限控制。|vi

答案2

一些 shell(ksh、fe)具有受限模式,在这种模式下它们不会执行$PATH.

相关内容