1、资源分派:
Authentication 认证
Authorization 授权
Accoutinglaudition 审计
2、用户和组账号概述:
Linux系统中用户账号主要包括:
超级用户 root uid=0
普通用户 users uid=500+(centos6);1000+(centos7);
程序用户 uid=1-499(centos6);1-999(centos7);
注:普通用户和程序用户可分配的uid和gid范围是:1—65535;
3、Linux的安全上下文:
运行中的程序称为进程,进程所能够访问资源的权限取决于进程的运行者的身份;
例:
[root@centos6 ~]# /bin/cat file1
[root@centos6 ~]$ /bin/cat file1
4、Linux的组类别:
Linux系统中组账号主要包括:
超级用户 root gid=0
普通用户 users gid=500+(centos6);1000+(centos7);
程序用户 gid=1-499(centos6);1-999(centos7);
注:普通用户和程序用户可分配的uid和gid范围是:1—65535;
组账号中每一个用户账号至少属于一个组,这个组称为该用户的基本组(主组),如果该用户同时还包括在其它的组中,则这些组称为该用户的附加组,一个用户可以属于零个或多个附加组(辅助组);
5、用户和组的配置文件:
Linux用户和组的主要配置文件
/etc/passwd :用于保存用户名称、宿主目录、登录shell等基本信息;
/etc/shadow :用于保存用户的密码、账号有效期等信息;
/etc/group :组及其属性信息;
/etc/gshadow :组密码及其相关属性;
6、/etc/passwd文件中的配置行格式
Passwd文件的每一行内容中,包含了7个用冒号“:”分割的配置字段,从左至右各配置字段的含义如下:
第一字段:用户账号的名称,也是登录系统时使用的识别名称;
第二字段:经过加密的密码字串,或者密码占位符“x”;
第三字段:用户账号的UID号;
第四字段:所属基本组账号的GID号;
第五字段:用户的全名,可填写与用户相关的说明信息;
第六字段:宿主目录,即该用户登录后所在的默认工作目录;
第七字段:登录shell等信息,用户完成登录后使用的shel;
7、/etc/shadow文件中的配置行格式
Shadow文件的每一行内容中,包含了9个用冒号“:”分隔得配置字段,从左到右各配置字段的含义分别如下:
第一字段:用户账号名称;
第二字段:使用sha512加密的密码字串信息,当为“*”或“!!”时表示此用户不能登录到系统,若该字段为空,则该用户无需密码即可登录系统;
第三字段:上次修改密码的时间,表示从1970年1月1日算起到最近一次修改密码时间隔得天数;
第四字段:密码的最短有效天数,自本此修改密码后,必须经过该天数后才能再次修改密码,默认值为0,表示不进行限制;
第五字段:密码的最长有效天数;自本次修改密码后,经过该天数以后必须再次修改密码。默认值为99999 ,表示不进行限制;
第六字段:提前多少天警告用户口令将过期,默认值为7;
第七字段:在密码过期之后多少天内禁用此用户;
第八字段:账号失效时间,此字段指定了用户作废的天数,默认值为空,表示账号永久可用;
第九字段:保留字段,目前没有特定用途;
8、密码加密机制:
加密:明文—–》密文
解密: 密文—–》明文
单向加密:哈希算法,原文不同,密文必不同;
常用加密算法:
md5 、sha1、sha224、sha256、sha384、sha512
更改Linux系统加密算法命令:
Authconfig –passaglo=sha384 –update
9、密码的复杂性要求:
*使用数字、大写字母、小写字母及特殊字符中的至少3种;
*足够长
*使用随机密码
*定期更换,不用使用最近曾经使用过的密码;
10、/etc/group文件中的配置行格式
第一个字段:群组名称;
第二个字段:群组密码,通常不需要设定,密码是被记录在/etc/gshadow;
第三个字段:群组的GID号;
第四个字段:以当前组为附加组的用户列表(分隔符为逗号);
11、/etc/gshadow文件中的配置行格式
第一个字段:群组名称;
第二个字段:群组密码;
第三个字段:组管理用列表;
第四个字段:以当前组为附加组的用户列表;
12、pwck命令:检查用户密码文件的完整性:
主要对/etc/passwd和/etc/shadow文件检查;
例:
[root@centos6 ~]# pwck
13、grpck命令:检查组用户密码文件的完整性
主要对/etc/group和/etc/gshadow文件检查;
例:
[root@centos6 ~]#grpck
14、用户和组管理命令:
useradd命令:添加用户账号
useradd [options] LOGIN
-u:指定用户的uid号,要求该uid号未被其他用户使用;
-o:配合-u选项,不检查uid的唯一性;
-g:指定用户的基本组,可为组名,也可以是GID;
-c:用户的注释信息;
-d:指定用户的宿主目录位置;
-s:指定用户的登录shell;
-G:指定用户的附加组,组事先必须存在;
-M:不建立使用者目录;
useradd的默认值设定在:/etc/default/useradd
显示或更改useradd默认设置:
Useradd -D
useradd -D -s /bin/csh (更改useradd的默认shell)
15、newusers命令批量创建用户:
首先使用vim编辑一个/etc/passwd文件格式的文件
[root@centos6 ~]# vim user.txt
使用newusers命令批量创建用户:
[root@centos6 ~]# newusers user.txt
16、chpasswd命令:批量修改用户口令
首先使用touch创建一个文件p.txt,在p.txt文件中写入对应的用户名和密码用“:”分隔开;
[root@centos6 ~]#touch p.txt
[root@centos6 ~]#vim p.txt
[root@centos6 ~]# cat p.txt | chpasswd
17、Usermod命令:用户的属性修改:
usermod [options] LOGIN
-u:修改用户的uid;
-g:修改用户的基本组名;
-G:修改用户的附加组名;
-s:修改用户的登录shell;
-c:‘comment’新的注释信息;
-d:修改用户的宿主目录位置;
-l:更改用户账号的登录名称;
-L:锁定用户账号;
-U:解锁用户账号;
-e:yyyy-mm-dd指明用户账号过期日期;
-f:设定非活动期限;
18、userdel命令:删除用户账号
userdel [options] LOGIN
-r:可以将该用户的宿主目录一并删除;
19、查看用户相关的id信息:
id [OPTION]… [USERNAME]
-u:uid
-g:GID
-G:groups
-n:name
20、su切换用户或以其他用户身份执行命令;
su [OPTION]… [-] [USER [ARG]…]
su useranme :非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录;
su – username :登录式切换,会读取目标用户的配置文件,切换至家目录,完全切换;
root su 至其他用户无需密码,非root用户切换时需要密码;
su – username -c ‘command’
21、passwd命令设置密码:
Passwd:修改自己的密码;
passwd [ options] username 修改指定用户的密码,仅root用户有权限;
-l:锁定指定用户;
-u:解锁指定用户;
-e:强制用户下次登录修改密码;
-n:指定最短使用期限;
-x:指定最大使用期限;
-w:提前多少天开始警告
-i:非活动期限;
–stdin:从标准输入接受用户密码;
echo “redhat” | passwd –stdin username
22、chage命令:修改用户密码策略
Chage [option] login
下一次登录强制重设密码:
Chage -d 0 username
23、 chfn命令:指定个人信息
24、chsh命令:用来修改设定用户的shell
[root@centos6 ~]# chsh
25、groupadd命令:创建组账号
groupadd [options] group
-g:指明GID号;
-r:创建系统组;
26、groupmod命令:修改组属性
groupmod [options] GROUP
-n:新组名;
-g:新组GID;
27、groupdel命令:删除组账号
groupdel groupname
28、gpasswd命令:添加组账号
gpasswd [option] group
-a:添加用户到指定组;
-d:从指定组中移除用户;
-M:可以同时添加多个用户到指定组;
29、groupmems命令:更改和查看组成员
groupmems [option] [action]
-g:更改为指定组;
-a:指定用户加入组;
-d:从组中删除用户;
-p:从组中清除所有成员;
-l :显示组成员列表;
原创文章,作者:zhengyibo,如若转载,请注明出处:http://www.178linux.com/27474