linux 限制用户命令方法
linux 上想限制用户可以执行的命令,可以通过环境变量和安装lshell工具方式。
环境变量的方式
脚本放在 /etc/profile.d/ 下,每个用户登入的时候都交脚在这里的环境变量。
脚本中判断当前用户,root 用户不受权限。
1 | vim /etc/profile.d/login.sh |
将允许用户执行的命令软连到用户家目录的bin下,这样用户只能执行特定的命令。
1 | exec bash --restricted --noprofile --rcfile $HOME/.newbash_profile |
lshell 工具
也可以安装 lshell 工具来实现对用户命令的限制, lshell不仅可以限制用户执行的命令,还可以限制用户对目录的限制等。
lshell 的github地址:https://github.com/ghantoos/lshell
安装
1 | yum install lshell # 需要 epel 源 |
lshell 使用
1 | $ lshell --help |
配置文件
配置文件分:
- User configuration
- Group configuration
- Default configuration
看一个官网的例子,很简单
1 | # CONFIGURATION START |
我简单使用的一个案例:
1 | [root@test00 ~]# cat /etc/lshell.conf |
修改用户shell为lshell
1 | usermod rd -s /usr/bin/lshell |
添加组 (方便记录日志)
1 | usermod -aG lshell rd |
记录日志: (我没有使用)
1 | groupadd --system lshell |
注释: lshell 没有重启, 随时修改配置文件,用户重新登入即可生效。
感觉文章还可以的话,帮忙点点下面的广告哦! 谢谢支持!