当前位置:C++技术网 > 资讯 > Linux用户权限管理--学习笔记

Linux用户权限管理--学习笔记

更新时间:2016-07-22 09:42:44浏览次数:1+次

Linux的用户:

    Linux下的用户很多,Linux的设计采用了多用户的设计思想,他的用户很多,如:负责数据库的用户:mysql用户,负责邮件的snmp用户,还有非标准的用户如:sys,bin等等...但是这些到底有啥用呢?

    举个例子说明:Linux就是一个大公司,一个成熟的运行公司,办公人员有:总经理(root),总经理秘书(sudo命令),部门经理(sys,bin等),为啥没有员工呢?因为员工是最底层的,他没有管理的权限,仅仅是听从领导安排,授予权限执行命令,例如:执行reboot,shurdown等等。

    那我做为什么角色存在呢?计算机属于我,我当然是董事长了,充当大老板的角色,我指定总经理的密码,通过遥控总经理从而可以控制公司的一举一动,随时可以以总经理的身份发命令,当然,如果我不高兴我还可以撤掉这个总经理。但是公司的存在要有干活的吧,为了企业名声,我要开放一下部分区域允许别人参观吧?比如蒙牛公司邀请市民参观牧场,加工厂,那些市民就是一个普通用户的身份,只能看看,不能带走公司的设备吧!但是老总看某某东西不顺眼,直接告诉后勤主任“去,把那个碍眼的东西拿走,看着闹心”,如果市民对后勤主任说“去,把那个碍眼的东西拿走,看着闹心”,后勤主任如果心情好就不理他(No Response,Permisson Denied),心情不好,直接告诉保安把他请出去,拉黑他(恶意行为处理,如发起DDoS攻击的用户)

命令行处理:

    假设我的公司是kali_linux,我的组织结构是酱紫的~:

然后,可以看到我的员工有好多,最大的领导是:root,二把手是daemon(守护进程),三号人物bin,四号人物是sys,以此向下类推,这些人都是一个“头头”,手下有很多的精兵强将,如:bin下有很多的高手:

...未完,具体的自己用虚拟机看吧

其他的领导(用户)也是这样子,有很多很多的手下。

当然,当我们进入这个公司的时候,也会有人为我们服务,如我们参观蒙牛公司的牧场,那么就会有一个向导给我们介绍牧场的结构(如执行man指令),有服务人员给我们水喝,当我们需要帮助的时候,可以把我们的请求发给董事长(sudo请求)

开始具体的命令行处理:

添加用户

useradd UserName

删除用户

userdel UserName

添加用户组

groupadd GroupName

删除用户组

groupdel GroupName

限制特权

//1.编辑文件实现
gedit /etc/sudoers//编辑文件实现限制用户或者用户组的权限
//2.命令行实现
    //假设我是kali linux系统,我当前是root身份
#我添加一个用户组:trainee
groupadd trainee
#添加一个用户zhang,隶属于用户组trainee
useradd zhang -g trainee
#我不允许zhang 进入root文件夹,那么我告知root“你的文件夹仅仅能有我看到,即:drwx------”
chmod 700 root 
#0:无权限,1:执行权限 x ,2:写权限 w ,4 :读权限 r ,那么7=1+2+4,读写执行,则:
#700代表了 文件拥有者可以读写执行,文件所属组不能操作,其他人无法操作。
解释一下文件权限的拆分:

常见权限 :-rw-rw-rw-,拆分之后:-    rw-    rw-    rw-  首个是一个字符,后面的每三个一组。

1.-代表普通文件,d代表目录(directory),l代表一个链接(link,类似于快捷方式),b块设备(如磁盘),c字符设备(鼠标,键盘神马的),s是socket套接字,p是管道文件

2.第一组:rw- 分别是读 写 和 无权限。占位为 1 2 3位,赋予读写执行,那么就是rwx,读执行就是r-x,懂了没?第二组,第三组类似。

3.第一组权限是属于文件的拥有者的权限,第二组是所属组的权限,第三组是其他用户组的访问控制权限,如root用户创建文件,属于root,root用户修改文件权限为:-r-- --- ---普通用户想看都看不到,因为这文件属于root用户,当其他的用户想看文件的时候,先验证的最后的三位权限:---即没有任何权限,所以如果是:r--那么就可以看,但也仅仅是看看文件名和内部的二进制流啥的,对了还都是乱码(-_-#),啥都不能动,就算那个文件是苍老师的电影,你也只能看看,不能看到内容(播放属于x——执行权限)

就酱紫,实现了文件的权限控制,如果我限制了某某用户可以看,其他人不可以看呢?比如苍老师的电影,限制了我的好基友看,其他的好孩子不能看,那咋办?解决办法为:把好基友的用户名(jiyou)加到一个用户组(HAOJIYOU),然后修改文件的所属组到这个用户组(不修改也可以)

chown -c jiyou:HAOJIYOU canglaoshi.rmvb
就这样,我在赋予jiyou拥有sudo的权限。。于是,好基友的人生就这么被我带上了不归路(~_~↑)