linux 学习-用户&群组&权限
Linux用户&群组&权限
⦁ Linux安全性模型
1)Linux使用User和Group控制使用者对文件的存取权限
2)用户使用账号和口令登录Linux
3)每个文件都有owner,并且owner属于某个Group
4)每个程序都有owner和Group
⦁ 用户概述
1、每个用户都有一个唯一的User ID
2、User的信息存储在/etc/passwd中

1)存储用户名和home目录等信息
2)/etc/shadow
3、每个User都有一个home目录
4、User未经授权将禁止读写或执行其他User的文件
5、root用户解读
1)超级管理员账号,具有至高无上的权限
2)一般不要随便用root登录并操作系统
⦁ 用户群组概述
1、每个User都属于一个Group,具有唯一的标识符gid
2、Group信息存储于/etc/group中
1)gid、成员等

系统默认的账户群组id<500 自定义的账户群组gid>=500
2)/etc/gshadow
3、系统会为每个User关联一个和User同名的Group
1)每个User至少存在于自己同名的Group中
2)User也可以加入其他的Group
4、在同一个Group中的成员可以共享其他成员的文件
⦁ Linux权限种类
1、读权限,用r表示(read) 可以读取文件或者列出目录的内容(ls)
2、可写权限,用w表示(write) 可以写、删除文件或者目录
3、可执行权限,用x表示(execute)
1)可以执行可执行文件
2)可以进入目录并使用cd切换进入目录
4、没有任何权限,用-表示
⦁ Linux文件和目录权限解读
1、文件和目录属性解读
drwxrwxrwx
d 表示该对象是文件夹
- 表示这是文件
后面每3位为 rwx 分别表示 read write 和 execute 权限 - 表示没有权限
红色的表示用户的权限
黄色的表示群组的权限
黑色的表示特例用户的权限
⦁ Linux权限验证流程

⦁ 设置Linux文件和目录的权限
1、字符表示法
1)chmod [-R] mode file
2)模式类别
chmod [-R] mode file
eg. chmod [ugo] [+-=] [rwx] filename
eg. chmod [ugo] [+-=] [rwx] *
2、数字表示法
1)使用一组三位数字来表示
2)第一组代表owner的权限
3)第二组代表group的权限
4)第三组代表others的权限
chmod 777 * 读写执行权限 赋予给每个文件
⦁ 用户的主要群组和次要群组
1、主要群组 每个文件必须有一个组所有者,因此必须有一个与每个用户相关的默认组,这个默认 组成为新建文件的组所有者,被称作用户的主要群组。用户的主要群组在passwd文件 中的第四个字段中定义。
2、次要群组 除了主要群组,用户也可以根据需要再隶属于其他群组,这些组被称为次要群组,在 group文件中的第四个字段中定义
⦁ 用户的管理
1、useradd [-u UID] [-g 主要群组] [-G 次要群组] [-mM] [-c 说明] [-d 家目录] [-s shell]
-u:制定一个特殊的UID给该账号 系统账号<500 用户账户>=500
-g:指定一个主要群组的名称,会修改passwd文件
-G:指定次要群组的名称,会修改group文件
-M:强制不要创建用户家目录,系统账号默认
-m:强制建立用户家目录,一般账号默认
-c:passwd文件的第五个字段的说明文字
-d:指定用户的家目录位置,不要使用默认的值
-s:指定默认的shell,如果没有指定则默认是/bin/bash
2、usermod [-cdegGlsuLU] username
-c:该账号的说明文字
-d:账号的家目录
-e:指定用户帐号禁用的日期,格式YY-MM-DD
-G:修改次要群组的名称,会修改group文件
-g:修改主要群组名称
-a:与-G合用,可增加次要群组
-l:将当前账号的名称重命名为指定的名称
-u:修改UID
-L:暂时将用户的密码冻结无法登录
-U:解冻账号,其实是删除shadow的!字符
3、userdel [-r] username
-r:连同用户的家目录一起删除
4、passwd,修改密码
⦁ 用户信息的检查
1、finger [-s] username:查阅用户相关的信息 -s:仅仅列出用户的账号、全名、登录时间等
2、id,可以查阅某人或者自己相关的UID、GID信息
3、whoami
4、who&w
5、users
6、groups
⦁ 用户群组的管理
1、groupadd [-g gid] [-r] 组名
-g:后面接特定的GID,用来指定GID
-r:建立系统群组
2、groupmod [-g gid] [-n group_name] 群组名
-g:修改既有的GID数字
-n:修改既有的组名
3、groupdel [groupname] 删除特定的群组
⦁ 默认权限的控制
1、内核级别,文件的默认权限是666
2、内核级别,目录的默认权限是777
3、通过umask来阻止一些权限,从而产生最终的权限
4、非管理账号的umask为0002
5、root的umask为0022
6、umask作用原理

7、使用减法计算是错误的
linux 学习-用户&群组&权限的更多相关文章
- linux用户 群组权限
用户及passwd文件 /etc/passwd文件的功能 /etc/passwd文件每个字段的具体含义 shadow文件 /etc/shadow文件的功能 /etc/shadow文件每个字段的具体含义 ...
- Linux用户群组权限恢复
/etc/passwd:该文件用于存放用户详细信息:例如 root:x:0:0:root:/root:/bin/bash 用户id 0:就表示root用户 bin下的bash:表示可以登入操作系统 s ...
- linux 用户/群组/权限
mv 原文件名 新文件名 #相当于重命名 查看文件内容相关命令 cat #查看文件全部内容 head - n #查看文件前n行内容(默认前十行) tail -n #查看文件后n行内容(默认后十行) t ...
- Linux学习之文件属性chattr权限与sudo权限(十二)
Linux学习之文件属性chattr权限与sudo权限 文件属性chattr Linux文件的隐藏属性在保护系统文件的安全性上非常重要,是防止误操作的,对root用户也同样有效.chattr命令只能在 ...
- Linux学习之文件特殊权限详解(SetUID、SetGID、Sticky BIT)(十一)
Linux学习之文件特殊权限详解(SetUID.SetGID.Sticky BIT) 目录 SetUID SetGID Sticky BIT SetUID SetUID简介 只有可以执行的二进制程序和 ...
- Linux给用户添加sudo权限
一.linux给用户添加sudo权限: 有时候,linux下面运行sudo命令,会提示类似: xxxis not in the sudoers file. This incident will be ...
- Linux修改用户所在组方法
Linux修改用户所在组方法 usermod -g 用户组 用户名强行设置某个用户所在组usermod -G 用户组 用户名把某个用户改为 group(s) usermod -a -G 用户组 用户名 ...
- centos的用户、组权限、添加删除用户等操作的详细操作命令
1.Linux操作系统是多用户多任务操作系统,包括用户账户和组账户两种 细分用户账户(普通用户账户,超级用户账户)除了用户账户以为还 有组账户所谓组账户就是用户账户的集合,centos组中有两种类型, ...
- Linux之acl库的安装与使用(限制Linux某用户的访问权限)
acl库 作用:限制Linux某用户的访问权限 acl库的安装 首先github中下载acl代码: git clone https://github.com/acl-dev/acl 进入acl, 执行 ...
随机推荐
- DDD实践(一)
DDD实践切入点(一) 前两篇:大型系统的支撑,应用系统开发思想的变迁 之前大致说了使用DDD的前期准备,现在可以真正开始实践了,以我刚刚结束的一个简单的经典DDD方式的项目为例子,当然由于比较简单, ...
- .NET MVC通过反射获取数据修
.NET MVC通过反射获取数据修 折磨了我一个晚上的问题,奈何对物理的反射印象太深了,整天去想着物理的反射.折射怎么解.感谢少将哥哥给我的指点,经过一个晚上对反射的恶补,最终搞定了.纪念一下. 1. ...
- Code reviews and bad habits
图文大话编程语言史 投递人 itwriter 发布于 2014-03-07 17:16 评论(2) 有298人阅读 原文链接 [收藏] « » 英文原文:Code reviews and bad ...
- mac os 上安装mysqldb血泪史
昨天下午在mac上安装mysql-python一直未遂今天查了很多资料终于成功了 最后还是在stackoverflow点击打开链接(好网站啊,一般有什么技术问题在这都能找到)上找到了答案,废话少数: ...
- 【NET】Winform分页控件初探
public partial class WinFormPager : UserControl { ; /// <summary> /// 当前页 /// </summary> ...
- 使用 Spring 2.5 TestContext 测试DAO层
资源准备: mysql5.0 spring-2.5 hibernate-3.2 junit-4.jar 创建表 DROP TABLE IF EXISTS `myproject`.`boys`; ...
- Hadoop Streaming框架学习(一)
Hadoop Streaming框架学习(一) Hadoop Streaming框架学习(一) 2013-08-19 12:32 by ATP_, 473 阅读, 3 评论, 收藏, 编辑 1.Had ...
- TFTP:简单文本传输协议,BOOTP:引导程序协议
TFTP:简单文本传输协议,BOOTP:引导程序协议 1.TFTP: TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的一个用 ...
- JAVA多线程经典问题 -- 生产者 消费者
工作2年多来一直也没有计划写自己的技术博客,最近辞职在家翻看<thingking in JAVA>,偶尔看到了生产者与消费者的一个经典的多线程同步问题.本人在工作中很少使用到多线程以及高并 ...
- Arduino 各种模块篇 RGB LED灯
示例代码: 类似与这样的led,共阴rgb led,通过调节不同的亮度,组合成不同的颜色. 示例代码: /* 作者:极客工坊 时间:2012年12月18日 IDE版本号:1.0.1 发布地址:www. ...