当前位置: 首页 > news >正文

基础权限储存

一、要求:

1、建立用户组shengcan,其id为2000工
2、建立用户组 caiwu,其id为2001
3、建立用户组 jishu,其id 为 2002
4、建立目录/sc,此目录是 shengchan 部门的存储目录,只能被 shengchan 组的成员操作,其他用户没有任何权限
5、建立目录/cw,此目录是 caiwu部门的存储目录,只能被 caiwu组的成员操作,其他用户没有任何权限
6、建立目录/s,此目录是 jishu 部门的存储目录,只能被 jishu 组的成员操作,其他用户没有任何权限
7、/pub 目录为公司公共目录,所有人都可以自由管理文件
8、tabadmin 用户为公司存储管理员可以对以上任何文件做任何操作。

二、步骤

1、建立用户组:

建立用户组:
[root@node1 opt]# groupadd -g 2000 shengchan
[root@node1 opt]# groupadd -g 2001 caiwu
[root@node1 opt]# groupadd -g 2002 jishu
创建用户:
[root@node1 opt]# useradd -G shengchan suser
[root@node1 opt]# useradd -G jishu juser
[root@node1 opt]# useradd -G caiwu cuser
查看用户信息:
[root@node1 ~]# id suser
用户id=1002(suser) 组id=1002(suser) 组=1002(suser),2000(shengchan)
[root@node1 ~]# id juser
用户id=1003(juser) 组id=1003(juser) 组=1003(juser),2002(jishu)
[root@node1 ~]# id cuser
用户id=1004(cuser) 组id=1004(cuser) 组=1004(cuser),2001(caiwu)

二、创建目录并修改权限

创建目录:
[root@node1 opt]# mkdir /sc /js /cw
修改目录所属用户组:
[root@node1 ~]# chgrp shengchan /sc
[root@node1 ~]# chgrp caiwu /cw
[root@node1 ~]# chgrp jishu /js
drwxrws---. 2 root shengchan 6  7月  2 17:27 /sc
drwxr-xr-x. 2 root caiwu 6  7月  2 17:27 /cw
drwxrws--T. 2 root jishu 6  7月  2 17:27 /js
修改目录权限:基于项目现实中的合理性,所以我们要就行权限修改,其中我们要考虑,任何用户在该目录下创建的文件的属组都应该继承该目录的属组,也就是修改sgid权限,sgid权限也使用s表示,增加权限g+s,移除权限g-s;2xxx  **4755=u+s****(**冒险位,安全性差,任何人运行命令的时候都会是root身份运行**)
还有就是,只允该目录下的文件的创建者删除自己的创建的文件,不允许其他人删除文件。(root用户除外,因为root用户是超级管理员),也就是sticky权限。sticky权限使用t表示,增加权限o+t,移除权限o-t;1xxx。
因为我们需要同时设定两个权限,所以是3xxx (其中3后面所跟为文件本来所要求权限)
[root@node1 ~]# chmod 3770 /sc
[root@node1 ~]# chmod 3770 /js
[root@node1 ~]# chmod 3770 /cw
[root@node1 ~]# chmod 3777 /pub/
[root@node1 ~]# ls -ld /pub/
drwxrwsrwt. 2 root root 32  7月  7 15:21 /pub/
修改mask值
[suser@node1 ~]$ cd /etc/skel/
[suser@node1 skel]$ ls -a
.  ..  .bash_logout  .bash_profile  .bashrc  .mozilla
[suser@node1 skel]$ vim .bash_profile[1]+  已停止               vim .bash_profile
[suser@node1 skel]$ cat .bash_profile
# .bash_profile# Get the aliases and functions
if [ -f ~/.bashrc ]; then. ~/.bashrc
fi# User specific environment and startup programs
if [ "`id -u`" -gt "999" ]
thenumask 027
fi

[suser@node1 ~]$ cd /etc/skel/
skel目录的作用:

                        只要是在这个目录里存在的文件,在建立用户时会自动的把这个目录里面的文件复制到家目录当中,家目录里的文件只对用户生效。

tabamin的用户建立和权限修改

使tabamin可以管理/sc /js /cw /pub这几个目录,就需要设置setfacl权限
[root@node1 ~]# setfacl -m d:u:tabamin:rwx /sc /js /cw /pub(d为默认,加d之后复制权限到新建的文件中)
[root@node1 ~]# setfacl -Rm u:tabamin:rwx /sc /js /cw /pub (R为递归,u为用户)
因为收到特殊权限s的影响,导致用户tabamin无法进行删除命令,所以需要以下操作
[root@node1 ~]# visudoroot ALL=(ALL) ALL
tabamin ALL=(ALL)NOPASSWD: /usr/bin/rm[root@node1 ~]# su - tabamin
[tabamin@node1 ~]$ alias rm='sudo rm'
[tabamin@node1 ~]$ alias
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias rm='sudo rm'
alias xzegrep='xzegrep --color=auto'
alias xzfgrep='xzfgrep --color=auto'
alias xzgrep='xzgrep --color=auto'
alias zegrep='zegrep --color=auto'
alias zfgrep='zfgrep --color=auto'
alias zgrep='zgrep --color=auto'

[root@node1 ~]# setfacl -m d:u:tabamin:rwx /sc /js /cw /pub(d为默认权限)

设置默认权限之后,仅对当前文件新建的文件或目录的权限进修改,已经存在的目录文件则不生效

[root@node1 ~]# setfacl -Rm u:tabamin:rwx /sc /js /cw /pub (R为递归,u为用户)

递归则对已经存在的目录文件的权限进行修改,而对权限修改后新建的目录文件没有作用。

http://www.lryc.cn/news/394023.html

相关文章:

  • Could not find a package configuration file provided by “roscpp“ 的参考解决方法
  • 运维系列.Nginx配置中的高级指令和流程控制
  • Virtualbox和ubuntu之间的关系
  • 【在Linux世界中追寻伟大的One Piece】HTTPS协议原理
  • 【WebRTC实现点对点视频通话】
  • 【Unity】RPG2D龙城纷争(八)寻路系统
  • C++ 函数高级——函数重载——基本语法
  • Go语言实现的端口扫描工具示例
  • SpringSecurity初始化过程
  • Python爬取股票信息-并进行数据可视化分析,绘股票成交量柱状图
  • 秋招突击——7/4——复习{}——新作{最长公共子序列、编辑距离、买股票最佳时机、跳跃游戏}
  • udp发送数据如果超过1个mtu时,抓包所遇到的问题记录说明
  • 电子电气架构 --- 智能座舱万物互联
  • 笔记本电脑内存不够
  • Vue项目使用mockjs模拟后端接口
  • Linux下使用arping检测IP地址是否冲突
  • 为什么 npm run serve 正常,npm run build 就报错:digital envelope routines::unsupported
  • 模电基础 - 简介
  • uniapp中实现瀑布流 短视频页面展示
  • python-开关灯(赛氪OJ)
  • 基于改进高斯-拉普拉斯滤波器的一维时间序列平滑与降噪(MATLAB)
  • 计算组的妙用!!页面权限控制
  • Self-Instruct构造Prompt的例子
  • 友好前端vue脚手架
  • SQL Server特性
  • 华为HCIP Datacom H12-821 卷25
  • 如何在 Selenium Python 中解决验证码 | 2024 完整指南
  • ASCII码对照表【2024年汇总】
  • 刷题之买股票的最佳时机(leetcode)
  • Apache Seata透过源码解决SeataAT模式整合Mybatis-Plus失去MP特性的问题