Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Linux下通过受限bash创建指定权限的账号

Linux下通过受限bash创建指定权限的账号

作者头像
洗尽了浮华
发布于 2018-01-23 07:47:47
发布于 2018-01-23 07:47:47
1.8K00
代码可运行
举报
文章被收录于专栏:散尽浮华散尽浮华
运行总次数:0
代码可运行

在日常业务运维中,有时为了配合解决问题,需要给非运维人员开通系统账号,用于查询日志或代码。通常为了系统安全或避免不必要的误操作等目的,会将账号权限降至最低。下面介绍下在Linux下通过受限bash创建指定权限账号的操作记录:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@mq-server ~]# ln -s /bin/bash  /bin/rbash
[root@mq-server ~]# useradd -s /bin/rbash wangshibo
[root@mq-server ~]# passwd wangshibo
[root@mq-server ~]# mkdir /home/wangshibo/bin
[root@mq-server ~]# chown root. /home/wangshibo/.bash_profile 
[root@mq-server ~]# chmod 755 /home/wangshibo/.bash_profile
[root@mq-server ~]# vim /home/wangshibo/.bash_profile       //复制下面的内容覆盖原内容
# .bash_profile
 
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi
 
# User specific environment and startup programs
 
PATH=$HOME/bin
 
export PATH
[root@mq-server ~]# ln -s /bin/cat /home/wangshibo/bin/cat
[root@mq-server ~]# ll /home/wangshibo/
total 4
drwxr-xr-x 2 root root 4096 Nov 25 23:38 bin
[root@mq-server ~]# ll /home/wangshibo/bin/
total 0
lrwxrwxrwx 1 root root 8 Nov 25 23:12 cat -> /bin/cat

如上设置后,可以发现创建的wangshibo用户家目录下的文件权限是root.root,上面只设置了wangshibo用户的cat权限,并且只能cat查看wangshibo用户家目录/home/wangshibo下的文件。除了cat命令外。不能执行其他命令!

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[wangshibo@mq-server ~]$ cat /var/log/messages
cat: /var/log/messages: Permission denied
[wangshibo@mq-server ~]$ ls
-rbash: /home/wangshibo/bin/ls: No such file or directory
[wangshibo@mq-server ~]$ touch test
-rbash: /home/wangshibo/bin/touch: No such file or directory

如果要想在其家目录下有其他命令的执行权,那么需要添加这些命令的软链接到/home/wangshibo/bin目录下(可以通过which命令查看二进制命令的全路径)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@mq-server ~]# ln -s /bin/ls /home/wangshibo/bin
[root@mq-server ~]# ln -s /bin/touch /home/wangshibo/bin
[root@mq-server ~]# ln -s /bin/mkdir /home/wangshibo/bin
[root@mq-server ~]# ln -s /usr/bin/vim /home/wangshibo/bin/
[root@mq-server ~]# ll /home/wangshibo/bin/
total 0
lrwxrwxrwx 1 root root  8 Nov 25 23:12 cat -> /bin/cat
lrwxrwxrwx 1 root root  7 Nov 25 23:44 ls -> /bin/ls
lrwxrwxrwx 1 root root 10 Nov 25 23:45 mkdir -> /bin/mkdir
lrwxrwxrwx 1 root root 10 Nov 25 23:44 touch -> /bin/touch
lrwxrwxrwx 1 root root 12 Nov 25 23:45 vim -> /usr/bin/vim

这样,wangshibo用户就拥有了上面加入的命令的执行权

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@mq-server ~]# su - wangshibo
[wangshibo@mq-server ~]$ ls
bin
[wangshibo@mq-server ~]$ touch test
[wangshibo@mq-server ~]$ mkdir ops
[wangshibo@mq-server ~]$ vim test
[wangshibo@mq-server ~]$ cat test
dsfdsafsadf
[wangshibo@mq-server ~]$ rm -f test
-rbash: rm: command not found
[wangshibo@mq-server ~]$ ls /usr/
bin  etc  games  include  lib  lib64  libexec  local  sbin  share  src  tmp
[wangshibo@mq-server ~]$ cat /var/log/messages
cat: /var/log/messages: Permission denied
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-11-25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
介绍linux下利用编译bash设置root账号共用的权限审计设置
在日常运维工作中,公司不同人员(一般是运维人员)共用root账号登录linux服务器进行维护管理,在不健全的账户权限审计制度下,一旦出现问题,就很难找出源头,甚是麻烦! 在此,介绍下利用编译bash使不同人员在使用root账号登陆服务器后,能记录各自的操作,并且可以结合ELK日志分析系统收集登陆操作日志。 废话不多说!下面分享下操作记录: 服务器ip:192.168.1.180 首先是编译bash [root@dev ~]# cd /usr/local/src/ [root@dev src]# wget h
洗尽了浮华
2018/01/23
2.1K0
linux系统下的权限知识梳理
下面对linux系统下的有关权限操作命令进行了梳理总结,并配合简单实例进行说明。 linux中除了常见的读(r)、写(w)、执行(x)权限以外,还有其他的一些特殊或隐藏权限,熟练掌握这些权限知识的使用,可以大大提高我们运维工作的效率。 (0)umask是权限码,默认是022--------------------------------------------------                   使用命令“umask”就能查询出来 文件默认的权限是666,目录默认的权限是777 新建文件和目录的
洗尽了浮华
2018/01/22
2.1K0
linux系统下的权限知识梳理
Linux profile1,bashrc,.bash_profile,.bash_login,.profile,.bashrc,.bash_logout浅析 Part1
profile,bashrc,.bash_profile,.bash_login,.profile,.bashrc,.bash_logout浅析 Part 1
授客
2019/09/12
1.7K0
搞它!!!linux账号和权限管理
前言: Linux登陆需要用户名、密码。/etc/passwd 文件保存用户名。登录Linux时,Linux 先查找 /etc/passwd 文件中是否有这个用户名,没有则跳出,有则读取用户名的user ID 、 group ID 、用户名对应的根目录路径以及所使用的 shell ,最后在 /etc/shadow 中核对该 UID 对应的 PWD 是否正确,正确则登录到该用户的 shell。
不吃小白菜
2020/09/03
3.9K0
搞它!!!linux账号和权限管理
linux目录结构及文件管理
                   /bin           普通用户的命令,普通用户能使用
yuezhimi
2020/09/30
1.7K0
linux目录结构及文件管理
linux基础学习整理
本文练习使用系统信息如下 [root@host shl]#cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) 清屏:clear 帮助命令:help、man、info 查看文件内容:cat [root@host ~]# cat /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin ... 屏幕打印信息:echo [root@host
未来sky
2018/12/10
1.1K0
学习笔记0316----linux基本命令(一)
/boot/ 系统启动目录; /sys/ 系统内核相关目录; /proc/ 系统进程目录; /run/ 系统产生临时文件目录; /bin/ 用户命令目录 /sbin/ root用户命令目录 /lib/ 库目录 /lib64/ 库目录,配置文件目录 /media/ 媒体挂载目录 /mnt/ 临时挂载目录
嘻哈记
2022/01/11
1.6K0
学习笔记0316----linux基本命令(一)
第九章·Linux权限管理-特殊权限
-多年互联网运维工作经验,曾负责过大规模集群架构自动化运维管理工作。 -擅长Web集群架构与自动化运维,曾负责国内某大型金融公司运维工作。 -devops项目经理兼DBA。 -开发过一套自动化运维平台(功能如下): 1)整合了各个公有云API,自主创建云主机。 2)ELK自动化收集日志功能。 3)Saltstack自动化运维统一配置管理工具。 4)Git、Jenkins自动化代码上线及自动化测试平台。 5)堡垒机,连接Linux、Windows平台及日志审计。 6)SQL执行及审批流程。 7)慢查询日志分析web界面。
DriverZeng
2022/09/26
6380
第九章·Linux权限管理-特殊权限
Linux 学习笔记
Linux学习笔记 请切换web视图查看,表格比较大,方法:视图》》web板式视图 博客园不能粘贴图片吗  http://wenku.baidu.com/view/bda1c3067fd5360cba1adb7d 目录 Linux学习笔记... 1 请切换web视图查看,表格比较大,方法:视图》》web板式视图... 1 1.      常用命令... 3 1.1文件处理命令... 3 1.2权限管理命令... 8 1.3文件搜索命令... 12 1.4帮助命令... 19 1.5压缩解压命令... 20
Ryan-Miao
2018/03/13
2.3K0
默认权限umask、文件系统权限、特殊权限
该文章介绍了如何通过执行top命令来查看Linux系统的实时性能,包括CPU、内存、I/O等各方面的信息。此外,还介绍了如何使用top命令来查看Linux系统中各个进程的性能,并给出了常见进程的PID和命令名称。同时,还讲解了如何通过kill命令结束进程,以及如何使用top命令查看Linux系统中各个进程的实时性能。
惨绿少年
2017/12/28
4K0
linux运维中的命令梳理(一)
在linux日常运维中,我们平时会用到很多常规的操作命令。 ------------------------------------------------------- 在修改文件后,执行下面操作进行代码提交到git: git add . git status #查看修改了哪些文件信息 git commit -m "edit message"
洗尽了浮华
2018/01/23
7.6K0
Linux基础知识总结2 | vim与bash
vim fileName可以新建一个文件,编辑完后按ESC输入:wq即可完成编辑且退出,若文件权限不对无法写入,可以加一个!表示强制写入,即 :wq!,但这是在“你的权限可以改变”的情况下才能成立的
素履coder
2022/03/02
8220
Linux基础知识总结2 | vim与bash
linux常用命令
  下载的tar.gz包装的软件可能是源码,但也有的地方把二进制码打包成tar.gz的。源代码包和二进制包是软件包的两种形式。   二进制包中包括了已经编译过的程序,只需要解包安装就可以使用。源代码包里面包括了程序原始的程序代码,需要进行编译后会出现一个可以运行的程序。
是小北a
2024/08/23
2690
linux常用命令
Linux 学习笔记之超详细基础linux命令 Part 1
功能:10分钟后关机,并向所有终端发送“The system is going down for system halt in 10 minutes”
授客
2019/09/12
6270
Linux系统文件与目录管理
在Linux系统的文件与目录的管理上,不外乎『显示属性』、『拷贝』、『删除文件』、『移动文件或目录』、『重命名』等常用操作,由于文件与目录的管理在 Linux当中是很重要的,尤其是每个人自己家目录的数据也都需要管理,所以我们来谈一谈有关文件与目录的一些基础管理部分吧.
王 瑞
2022/12/28
3.4K0
文件管理类命令常用使用方法及其相关示例演示
cat 使用语法:cat [-AbeEnstTuv][--help][--version] FILENAME 命令功能:查看文件内容或将多文件连接后传输到基本输出(也可以通过重定向将多文件合并为一个文件) 常用选项及示例 -n或–number 由1开始对所有输出的内容以行为单位进行编号 1.[root - gwx-st ~]#>cat test1 -n 2.1 1111 3.2 4.3 22222 5.4 333333 -b 或–number-nonblank 功能与-n相似,但是会忽略文件内的空
小小科
2018/05/04
9060
Linux常用命令
  下载的tar.gz包装的软件可能是源码,但也有的地方把二进制码打包成tar.gz的。源代码包和二进制包是软件包的两种形式。 二进制包中包括了已经编译过的程序,只需要解包安装就可以使用。源代码包里面包括了程序原始的程序代码,需要进行编译后会出现一个可以运行的程序。
是小北a
2023/10/21
6390
Linux常用命令
linux常用命令、bash语法学习笔记,持续记录
所以,当输入 ls 命令,点击回车时,系统会以此从各个目录找到这个命令文件,然后执行该文件.
房东的狗丶
2023/02/17
1.7K0
Linux环境中查看java的安装路径,设置环境变量
在Linux环境中,安装jdk以后,找不到安装目录,导致无法设置环境变量,怎么查找jdk的安装目录呢?
用户7886150
2020/12/01
4.5K0
Linux常用命令:文件与目录
訾博ZiBo
2025/01/06
1860
相关推荐
介绍linux下利用编译bash设置root账号共用的权限审计设置
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档