• Linux从入门到精通——用户管理


       什么是用户?

      用户是操作者在系统中的身份,是系统最底层的安全机制的一部分

      用户在系统中以字符和文件的形式存在

          普通用户家目录为 /home/              超级用户家目录为 /root/

    ####用户管理命令###

    1.用户的查看

       (1)查看当前用户               whoami     ##查看当前用户

       (2)系统中用户的查看
                   id      ##查看指定用户id信息
                   id
                           -u  ##查看用户的uid
                           -g  ##查看用户的gid
                           -G  ##查看用户所在的所有组的id
                           -n  ##显示名字而不显示id数字

    2.用户切换
                   su - 用户名称
                   su - 中 “-” 标示在用户身份切换时同时切换当前用户的环境
                   su - 执行时高级用户切换到低级用户不需要密码,低级用户切换到高级需要,平级用户切换切换也需要
                             【 注意:每次su切换到其他用户操作之后必须exit退出,然后再次切换到其他用户】

                              

    3.用户在系统中的存储方式 
                /etc/passwd 
                  用户信息文件
                 用户名称:密码:uid:gid:说明:家目录:默认shell

               /etc/group
                 用户组信息文件
                 组的名字:组密码:组id:组成员
              /etc/shadows
                认证信息文件

             /etc/skel/.*
                默认开启shell的配置,用户的骨文件

            /home/username
               用户的家目录

    4.用户的删除
                     userdel student                 ##删除用户但是不删除用户的配置文件
                     userdel -r student              ##删除用户并删除系统文件

    5.用户建立

        用户信息监控命令
                     watch -n 1 ‘tail -n 3 /etc/passwd /etc/group;ls -l /home' 
                     ##加 “ ” 表示监视后面所有的命令。如果没有 “ ” 只会监控  “;” 之前的一个命令
                     ##在watch后面跟  -n 1  表示一秒监控一次
                     ##watch 监控
                     ##命令中的 “ ;” 表示先执行分号之前的命令,然后执行分号之后的。
        
        (1)useradd     ##建立用户的,建立用户时,读取/etc/login.defs 文件内容确定规则
                     【 普通用户id1000以后,超级用户id在200之前 】
                         useradd -u 8888 student      ##指定用户的uid
                         useradd -g 21 student        ##指定用户的初始组id,“前提是,21用户组必须是存在的”
                         useradd -c 'haha' student    ##指定用户的说明
                         useradd -G 21 student        ##指定用户的附加组id,“前提是,21用户组必须是存在的”
                         useradd -d /home/wf student  ##指定用户的家目录
                         useradd -s /bin/sh student   ##指定用户的默认shell
                         userdel                       ##用户删除   
                  【 注意:每要更改一个默认的值时,都应该先userdel一下用户 】  

       

      

      
        (2)groupadd ##建立用户组
                        groupadd -g 21 student               ##建立用户组并且指定用户组的初始组id
                        groupdel                                      ##删除用户组
         
                     【附加知识点:ctrl+ail+f2]             [init 3]关闭图形  [init 5]开启图形
                                  
        (3)用户信息更改       usermod
                        usermod -l 新名称 student     ##更改用户新名称
                        usermod -u 6666 student      ##更改用户uid
                        usermod -g 21 student        ##更改用户的初始id
                        usermod -G 21 student        ##更改用户的附加组
                                                                       (如果本身有一个附加组,那么用-G会把原来那个附加组更改)
                        usermod -aG 72 student      ##添加用户的附加组,如果本身有附加组时,会在后面追加一个新的附加组
                        usermod -G “” student      ##删除用户所有附加组        
                        usermod -c "haha" student    ##更改用户的说明文字
                        usermod -d /home/wf student  ##更改用户家目录的指向
                        usermod -md /home/wf student ##更改用户家目录
                        usermod -s /bin/sh student   ##更改用户的shell 
                        usermod -L student           ##冻结用户
                        usermod -U student           ##解锁用户
          
     6.用户密码设置  passwd student     [密码是不显示的,安全]

    ####用户认证信息管理###   
             
               【  附加知识点:[kill -9 程序编号  结束(程序标号)进程]  】
      
       认证信息文件  
                         /etc/shadows   ##记录用户认证信息
        用户名称:
        用户密码:
          passwd student
          passwd -l student   ##在用户密码前加入“!!”,类似于冻结
          passwd -u student   ##解锁密码
          passwd -d student   ##清空student密码
          usermod -L student  ##在用户密码前加入“!”
          usermod -U student  ##解锁用户
        用户密码最后一次被更改的时间:
            passwd -e student  ##会改变用户最后一次更改密码
                      的时间为0,用户在登陆时会被强制更改密码
            chage -d 0 student  ##两个命令功能相似
        密码最短有效期: 
            passwd -n 1 student  ##student用户在一天之内不
                                             ##能更改密码
            change -m 1 student
        密码最长有效期:
            passwd -x 30 student ##student在30天内必须更改
                        ##   密码
            change -M 40 student  
        密码警告期限:
            passwd -w 2 student  ##密码过期前两天有警告输出
            change -W 2 student
        密码非活跃期限:
            passwd -i 1 student
                                      ##密码过期后仍可登录系统的天数
            change -I 1 student 
        密码到期日:
            chage -E 2018-11-11 student                   ##student用户在2018-11-11会被冻结
        用户自定义列,不能被操作。

    ####用户授权###
           
              用户授权配置文件   /etc/sudoers 
              授权配置命令:visudo 这个语法 会有语法的报错和vim相比 
              hostname  查看主机(本机)名

      1)规范操作:文件100行左右   
         普通用户  主机名称=(转换成新的用户身份) 命令1,命令2,...                     ##执行命令要密码

         普通用户  主机名称=(转换成新的用户身份) NOPASSWD:命令                   ##免密执行命令
                                                             
           示例:
             student 主机名称=(root) /usr/sbin/useradd
             student 主机名称=(root) NOPASSWD:/usr/sbin/useradd,/usr/sbin/userdel
       
            普通用户因为被授权可以被调用,调用方式:sudo useradd hello
     

  • 相关阅读:
    数学建模反思
    [Leetcode]unique binary search trees
    暑假结束了,开始新的学习
    什么是lamda表达式?
    [Java]三大特性之封装
    [Leetcode]003. Longest Substring Without Repeating Characters
    [Leetcode] 002. Add Two Numbers
    [Leetcode] 001.Two Sum
    [数据结构]AVL树
    [数据结构]二叉搜索树
  • 原文地址:https://www.cnblogs.com/wf-aiyouwei/p/9333690.html
Copyright © 2020-2023  润新知