仅将Linux用户限制为其主目录

时间:2020-01-09 10:43:16  来源:igfitidea点击:

问题描述:如何确保用户只能访问自己的主目录?

解决方法:您可以使用rbash,即受限的bash shell。
受限shell用于设置比标准shell更受控制的环境。
它的行为与bash相同,不同之处在于不允许或者不执行以下操作:

  • 用cd更改目录
  • 设置或者取消设置SHELL,PATH,ENV或者BASH_ENV的值
  • 指定包含/的命令名称
  • 指定一个包含/的文件名作为。的参数。内置命令
  • 指定包含斜杠的文件名作为hash内置命令的-p选项的参数
  • 启动时从Shell环境导入函数定义
  • 启动时从shell环境中解析SHELLOPTS的值
  • 使用>,> | 、、、>&,&>和>>重定向运算符重定向输出
  • 使用exec内置命令将shell替换为另一个命令
  • 在启用内置命令中添加或者删除带有-f和-d选项的内置命令
  • 使用enable buildin命令启用禁用的shell内置程序
  • 在命令内置命令中指定-p选项
  • 使用设置+ r或者设置+ o限制关闭受限模式。

读取任何启动文件后,将强制执行这些限制。
当执行的命令被视为shell程序脚本时,rbash将关闭在shell程序中生成的用于执行脚本的所有限制。

打开/etc/passwd文件并将shell程序设置为/bin/rbash

# vi /etc/passwd

例如,这是用户Hyman的示例条目:

Hyman:x:100:101::/home/Hyman:/bin/rbash

保存并关闭文件。