Linux系统用户、组

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文件中的配置行格式

 

   blob.png

 

  Passwd文件的每一行内容中,包含了7个用冒号“:”分割的配置字段,从左至右各配置字段的含义如下:

 

      第一字段:用户账号的名称,也是登录系统时使用的识别名称;

      第二字段:经过加密的密码字串,或者密码占位符“x”;

      第三字段:用户账号的UID号;

      第四字段:所属基本组账号的GID号;

      第五字段:用户的全名,可填写与用户相关的说明信息;

      第六字段:宿主目录,即该用户登录后所在的默认工作目录;

      第七字段:登录shell等信息,用户完成登录后使用的shel;

 

7、/etc/shadow文件中的配置行格式

 

   blob.png

 

 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文件中的配置行格式

 

       blob.png 

             

      第一个字段:群组名称;

      第二个字段:群组密码,通常不需要设定,密码是被记录在/etc/gshadow;

      第三个字段:群组的GID号;

      第四个字段:以当前组为附加组的用户列表(分隔符为逗号);

 

11、/etc/gshadow文件中的配置行格式

 

       blob.png

 

        第一个字段:群组名称;

        第二个字段:群组密码;

        第三个字段:组管理用列表;

        第四个字段:以当前组为附加组的用户列表;

 

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

 

  blob.png 

 

    使用newusers命令批量创建用户:

 

    [root@centos6 ~]# newusers  user.txt

 

16、chpasswd命令:批量修改用户口令

 

    首先使用touch创建一个文件p.txt,在p.txt文件中写入对应的用户名和密码用“:”分隔开;

 

     [root@centos6 ~]#touch p.txt

     [root@centos6 ~]#vim  p.txt

 

    blob.png 

 

     [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命令:指定个人信息

 

            blob.png

 

24、chsh命令:用来修改设定用户的shell

 

        [root@centos6 ~]# chsh

 

        blob.png

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

赞 (0)
zhengyibozhengyibo
上一篇 2016-08-04 14:41
下一篇 2016-08-04 14:41

相关推荐

  • grep,sed,与正则等

    grep:文本过滤(模式:pattern)工具; grep, egrep, fgrep(不支持正则表达式搜索 sed:stream editor,文本编辑工具; awk:Linux上的实现gawk,文本报告生成器;a grep [OPTIONS] PATTERN [FILE…] grep…

    Linux干货 2016-08-12
  • CentOS 7 RPM包方式安装LAMP

    细节要求: (1) 三者分离于两台主机; (2) 一个虚拟主机用于提供phpMyAdmin;另一个虚拟主机用于提供wordpress; (3) 提供xcache加速; (4) 为phpMyAdmin提供https虚拟主机; 一、准备CentOS 7主机环境以及Repo仓库提供基于rpm安装包方式的程序包安装源 安装主机程序包规划: 主机1:web-serve…

    Linux干货 2017-02-16
  • lvs应用

    练习一:负载均衡一个php应用: 测试是否需要会话保持; 是否需要用到共享存储;    为了检测是否需要会话保持和共享存储,要在两台主机上分别配置LAMP环境;这样就使得两者之间没有了共享存储;负载均衡使用nat模型的wlc算法,并且不使用lvs的长连接选项。数据库故意使用了相同的账号密码来进行安装。 步骤一:配置环境: 使用yum分别安…

    Linux干货 2016-11-11
  • pxe自动安装linux

    配置自动安装操作系统 1.网卡应支持pxe技术,由网卡作为dhcp的客户端向dhcp服务器请求一个IP地址,dhcp会将ip,网关等信息和的tftp服务器的地址应加载的文件名提供给客户端 2.根据dhcp服务器提供的信息网卡上内置的tftp客户端向tftp服务器发出请求,将文件下载至内存,包括bootloader(可能有选单),initrd,内核等(内核和i…

    Linux干货 2016-11-11
  • 学习学习,复习复习,linux基础中的基础

    计算机的组成及其功能          根据冯诺依曼体系结构构成的计算机,应该具备以下几点功能: l  具有把程序、数据输入到计算机的能力 l  具有长期记忆程序、数据、中间结果以及最终结果的能力 l  能够完成各种算术运算、逻辑运算和数据传输的数据…

    Linux干货 2016-09-25
  • 数组和变量之间的关系及如何灵活运用数组

    什么是数组?数组:存储多个元素的连续的内存空间,相当于多个变量的集合什么是变量? 变量即是存储单个元素的内存空间 如果整个数组只有一个名字;数组名是数组的标识;也是数组所指向的存储多个元素的连续的内存空间开始地址的标识;数组索引定义从 0 开始(第一个数组元素);到 N 结束引用某个数组元素时,数组名+【索引】格式:${ARRAY_NAM…

    Linux干货 2017-05-22