用户和组

一,基本正则表达式,grep
1,基本正则表达式元字符
(1)字符匹配

.匹配任意单个字符
[]匹配指定范围内的任意单个字符
[^]匹配指定范围外的任意单个字符
[[:digit:]]匹配数字
[[:lower:]]匹配小写字母
[[:upper:]]匹配大写字母
[[:alpha:]]匹配所有字母

(2)匹配次数

*与前面字符相关的任意次数
.*匹配任意长度的任意字符
\?匹配前面字符的0或1次
\*匹配一次或者多次
\{m,n\}匹配至少m次,至多n次
\{0,n\}匹配至多n次
\{m,\}匹配最少m次

注:\在使用时要加上引号
(3)位置锚定

^行首锚定
$行尾锚定
^$或 ^ [[:speace:]] $空行
< 或 \b词首锚定
>词尾锚定

(4)分组和引用
引用:\(\)

[root@demo5-6 ~]# cat test
he loves his lovers
he likes his liker
she like her lovers
she like her liker
[root@demo5-6 ~]# grep '\(l..e\).*\1' test
he loves his lovers
he likes his liker
she like her liker

实例:

[root@demo5-6 ~]# grep '\(l..e\).*\1' test
[root@demo5-6 ~]# grep -v /bin/bash$ /etc/passwd  不以结尾
[root@demo5-6 ~]# grep "\<[0-9]\{2,3\}\>" /etc/passwd 匹配两位或3位数

二,用户,组的基本概念
1,用户和组

   系统上每一个进程都是有一个特定用户发起的
	系统上文件都是由特定用户拥有的
	用户对系统上的文件访问时,受到权限控制
	与运行中的进程相关联的用户确定该进程可访问的文件和目录

2,用户:

用户标识符,密码
用户分类:
		管理员
		普通用户

3,组:

用户组,用户容器
组类别:
		用户的基本组
		用户的附加组  

4,用户和组的标识符

(1)uid—属主(/etc/passwd)        0-65535
	管理员用户:root     0
	普通用户:  1-65535
		系统用户
			CentOS6:1-499
			CentOS7:1-999
		登陆用户	
			CentOS6:500-
			CentOS7:1000-
(2)gid—属组(/etc/group)    0-65535 
		系统用户
			CentOS6:1-499
			CentOS7:1-999
		登陆用户	
			CentOS6:500-
			CentOS7:1000-

5,认证信息:密码

(1) /etc/shadow用户密码    
(2)/etc/gshadow  组密码
(3) 密码策略:
            使用随机密码
 			最短长度不低于8位
			应该使用小写字母,大写字母,数字,标点符号四类中至少三类
			定期更新

三,用户总管理
安全上下文:进程是以其发起者的身份运行,对进程的访问权限,取决于发起此进程的用户权限;
1,组

(1)groupadd增加组用户
	-g GID:指定组ID,默认为上一个组ID+1
	-r :创建一个系统组
(2)groupmod 修改组属性
	-g:修改组ID
	-n:修改组名
(3)groupdel删除组(groupdel 组名)

2,用户

(1)useradd 创建用户
	-u :指定UID
	-g :制定基本组ID
	-G:指定用户的附加组,附加组要事先存在
	-c:添加注释信息
	-d:指定用户的家目录,通过复制/etc/skel目录,并改名
	-s:指定用户的默认Shell
	-r:创建系统用户
(2)useradd -D 创建用户的配置
(3)userdel 删除用户(userdel 登录名)
	-r:删除用户时一并删除家目录
(4)usermod  修改用户属性
	-u :修改用户ID
	-g:修改用户的基本组
	-G:修改用户的附加组
	-c:修改注释条件
	-d:修改家目录
	-m:与-d一起使用,用于将原来家目录的文件移动到新的家目录
	-a:与-G一起使用,追加用户的附加组
	-l:修改用户名
	-s:修改默认shell
	-L:锁定用户密码
	-U:解锁用户密码

3,passwd修改密码

	(1)passwd 密码:直接修改自己的密码
	(2)passwd username:修改指定用户密码,仅root用户有此权限			
			-l:锁定用户
			-d:清除密码串
			-e DATE:过期日期
			-i DAYS:非活动期限
			-n DAYS:密码最短使用权限
			-x DAYS:密码最长使用期限
			-w DAYS:告警期限

4,gpasswd:

	(1)-a username:向组内添加用户
	(2)-d username:从组内删除用户

5,newgrp:临时切换指定组的组为基本组
6,change:更改密码过期信息

	-d:指定密码最后修改日期
	-E:密码到期日期
	-w:密码过期前的警告天数
	-m:密码可以更改的最小天数
	-M:密码可以保持有效的最大天数

7,id:

	-u:显示UID
	-g:显示GID
	-G:显示用户的所有组ID
	-n:显示名字

例如:

/etc/passwd
	         root:x:0:0:root:/root:/bin/bash
	         用户名:密码(x占位符):用户标识符:组标识符:注释信息:主目录:登陆shell
/etc/passwd
root$6$bDAKD3bEXeceK27$cRvKT2F6wSzRnltBaUeEXzgeItRN1906ERor0M8WZR36bfy7oacomPk2rkhX6zo8AQg52JwrWKFQPXiT1BmyD.:18099:0:99999:7:::
登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

注:最后一次修改时间:表示从某一个时间点开始,到用户组最后一次修改指令的时间天数,一般1970.1.1
例如:

 [root@demo5-6 ~]# groupadd -g 1000 ttt
[root@demo5-6 ~]# tail -1 /etc/group
ttt:x:1000:
[root@demo5-6 ~]# groupmod -g 999 ttt
[root@demo5-6 ~]# tail -1 /etc/group
ttt:x:999:
[root@demo5-6 ~]# groupmod -n aaa ttt
[root@demo5-6 ~]# tail -1 /etc/group
aaa:x:999:
[root@demo5-6 ~]# groupdel aaa
[root@demo5-6 ~]# tail -1 /etc/group
slocate:x:21:

四,Linux文件系统权限
1,权限对象

	文件拥有者(属主),owner
	群组(属组),group
	其他(other)

2,权限类型

	d   rwxr-xr-x. 2 root root 4096 Jul 27 00:52 ccc
	文件类型		r:4
				w:2
				x:1
	如:rw-rwx-r 674(作加法)
(1)rwx权限说明:
	1,对文件而言:
		r:可以获取文件数据
		w:可以修改文件数据
		x:可以将此文件运行为进程
	2,对于目录而言
		r:可以使用ls命令获取文件列表
		w:可以修改文件列表,及创建和删除
		x:表示可以cd次目录,并且可以使用ls- l获取文件的详细属性
(2)权限判断逻辑
		文件:前提条件,用户能进入到文件所在目录
				删除文件:看用户是否具备对目录的w权限
					1,判断用户身份,owner-group-other
				创建文件:看用户是否具备对目录的w权限
					1,判断用户身份,owner-group-other
		目录:前提条件:判断用户是否能够成功进入目录所在目录,x
				删除目录:看用户是否具备对目录的w权限
					1,判断用户身份,owner-group-other
				创建目录:看用户是否具备对目录的w权限
					1,判断用户身份,owner-group-other
	(3)权限管理命令(chmod)
			a,三类用户:
				u属主,g属组,o其他,a所有
			b,MODE表示法:
				赋权表示法:rwx
			  		u=
				授权表示法:
					u+,u-,新增,减
			注意·,只有用户自己修改自己的文件
		  	c,从属关系:chown,chgrp
           		用法:	chown username:grouname 目录名
						chown username: 目录名
						chown  :grouname 目录名
						chgrp groupname 目录名

3,进程对文件的访问权限模型:

进程的属主与文件的属主是否相同,若相同,则应用文件的属主				   权限;
	否则,则检查进程的属主是否属于文件的属组,如果是,则应用属组的权限,否则,则应用other权限;

4,基本权限ACL(+)

(1)应用:
		针对单个用户设置
		针对用户组设置
		子文件/目录继承父目录的权限
(2)setfacl的参数
	-m:配置acl权限(不能和-x连用)
	-x:删除acl权限
	-b:移除acl权限
	-R:递归配置acl
	-d:配置默认的acl参数,只对目录有效

例如:

[root@demo5-6 ~]# setfacl -m u:gentooo:rw /tmp/file  在文件中配置acl权限
[root@demo5-6 ~]# getfacl /tmp/file  查看配置
[root@demo5-6 ~]# setfacl -m d:u:gentooo:rw /tmp/test2在文件夹中配置acl权限
只能修改不能新增。

5,权限的掩码(umask)

	文件权限:666-022=644
	目录权限:777-022=755

6,特殊权限:

(1)SUID:当在文件所有者的x权限上出现s时,表示当前这个文件具有SUID权限
	1,SUID权限仅对二进制程序有效
	2,执行者对于程序有x权限
	3,本程序仅在执行程序的过程中有效
	4,程序的执行者拥有该程序的拥有者的权限
	不能放在脚本和目录上。
	(2)如果当球按这个文件属主位没有x权限,显示大写S
SGID:属组
	1,SGID权限仅对二进制程序有效
	2,执行者对于程序有x权限   可执行权限
	3,主要用于目录上:
	继承父目录的属组
(3)SBIT:other
	1,主要针对于other位
	2,作用于目录
	3,在该目录下创建的新的文件和目录,只有自己和root可以删除
	4,对文件无效
(4)SUID,SGID,SBIT设置
	字符表示法:s   s    t
	数字表示法:4   2   1(书写放在最前面)

7,chattr:增加隐藏属性

a:append  只能向文件添加数据,不能删除数据(不能覆盖,只能追加)
i:文件不能删除,改名,链接,同时不能写入内容
A:atime   访问时间不能修改
[root@demo5-6 ~]# touch /tmp/test2
[root@demo5-6 ~]# ll /tmp/test2
total 8
-rw-rw-r--+ 1 root root 3 Jul 28 23:04 test3
[root@demo5-6 ~]# chattr +A /tmp/test2
[root@demo5-6 ~]# touch /tmp/test2
[root@demo5-6 ~]# ll /tmp/test2
total 8
-rw-rw-r--+ 1 root root 3 Jul 28 23:04 test3

8,lsattr:列出隐藏属性

[root@demo5-6 ~]# lsattr test
-------------e- test

注:-e表示为普通文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值