我已经设置了一些测试帐户来测试实施 rbash,以限制用户在服务器上执行过多操作。目前我正在使用这些配置文件.bash_profile
进行设置bash -r
。但是当用户键入时,exit
他们会进入正常的 bash shell。
exit
我希望当他们输入注销服务器时也能实现这一点。否则bash -r
将无助于限制该访问。
如果您有任何想法请告诉我。
答案1
rbash
通过或-s
选项将用户的登录shell设置为,例如。useradd
usermod
usermod -s /bin/rbash luser
如果你的rbash
可执行文件位于/bin/rbash
。
答案2
你的问题的确切答案是
exec bash -r
这将代替使用 rbash 登录 shell,而不是简单地启动子进程。
最好的答案是更改用户的登录shell。
答案3
这是 /bin/bash 未显示的修复方法,然后执行以下操作
sudo ln -s /bin/bash /bin/rbash
sudo bash -c ‘echo “/bin/rbash” >> /etc/shells’
sudo chsh -s /bin/rbash ruser
然后执行此操作来更改用户 shell
chsh -s /bin/rbash test