zoukankan      html  css  js  c++  java
  • linux基础学习-CentOS7.5用户管理

    一、用户组分类:管理员组和普通组
             管理员组(root,gid为0)
                  普通组:gid范围:1-65535,分为系统组和登录组,
                  系统组(gid范围:1-999)和登录组(gid范围:6000-10000)
    二、用户的分类:
            用户分为:管理用户和普通用户。

            (1)管理用户root(uid为0),权利最大的管理员,所有的权限对它来说几乎是形同虚设的,它的存在就是为了管理其它用户的,于是普通用户都得由它来创建。        (2)普通用户分为登录用户和系统用户。uid的范围也和group相似,uid范围:1-65535,登录用户(uid范围:1-999)可以用来登录,可以通过不同验证方式登录,但是对于新手来说,刚开始接触大多数都是密码验证登录。系统用户(6000-10000)。

    三、用户即用户组的创建:
        一个用户从创建到使用,通常经过的流程为:
            创建用户组——用户组密码——创建用户——设定密码。
              翻译成命令,即:
              groupadd——gpasswd——useradd——passwd。

              如果对用户组没要求,可以不用创建用户组的,而直接创建user,会生成相应的组的。一般来说,gpasswd不是必须的,因此最简单的useradd passwd,这里操作要在root权限下。

        

    id 用户名,显示当前账号信息

    指定附加组,一个用户只能拥有一个基本组,也称之有效组,或者说主组,但是却可以属于多个附加组,而一个组可以有多个用户,是多对多的关系,如果有的命令还没熟悉,没关系,可以往下面继续查看,如何为用户指定附加组(useradd -G),以及后面追加附加组(usermod -aG)

     chage命令:更改密码的过期信息,主要是对应修改/etc/shadow里面的数据
        -l:列出密码的详细参数
        -d  :修改创建密码的距离19700101那天的秒数,即将最近一次密码设置时间设为“最近日期”    chage -d "487208" centos
        -E:修改过期时间
        -W:指定警告时间
        -m:密码最短可修改天数
        -M:密码最长必须修改天数

        userdel命令:删除用户
        userdel [选项] username
        -r:删除用户时一并删除其家目录

        usermod命令;修改用户属性
        usermod [option] username
        -u,--uid UID:指定新的UID
        -g:--gid GROUP:修改用户所属的基本组:
        -G,   --groups GROUP1[,GROUP2,...[,GROUPN]]]修改附加组,原来的附加组会被覆盖
        -a:--append,与-G一同使用,用于为用户追加新的附加组
        -c, --comment  COMMENT :指明注释信息-d,--home HOME_DIR:修改用户的家目录,用户原有的文件不会被移置新位置   默认修改是不创建新的文件位置的
        -m,--move-home,只能与-d选项一同使用,用于将原来的家目录移动为新的家目录
        -l,--login NEW_LOGIN:修改用户名
        -s,--shell SHELL:修改用户默认的shell
        -L;--lock 锁定用户密码
        -U,--unlock;解锁用户的密码

        eg2:修改用户名(usermod -l)以及修改用户家目录并移除原来目录(usermod -md)如下

     2.用户组的创建
            涉及命令:groupadd,groupdel,groupmod,gpasswd
                 groupadd命令:添加组
            groupadd [option] group_name
            -g GID:指定GID,默认是上一个组的GID+1
            -r:创建系统组

            groupmod命令:修改组属性
            groupmod [option] groupname
            -g GID:修改gid
            -n newname:修改groupname
    groupdel命令:
            groupdel [option] group

            gpasswd:修改组密码,并且设置user
            gpasswd [option] group
            -a USERNAME:向组中添加用户
            -d USERNAME:从组中移除用户

        3.检验以及查看用户即用户组
         系统关机后,内存里面的数据是不会存在的,而且像账号密码这么重要的数据当然是需要写到磁盘上面去了,而且应该是写到某个固定的文档中去了,对吧。下面我想介绍两种查看用户及用户组方法:通过命令查看和通过文档查看
       (1)通过命令查看:id     
         id命令:显示用户的真实和有效ID
            id [option]... [user]
            -u:仅显示有效的UID
            -g:仅显示用户的基本组
            -G:仅显示用户所有的组
            -n:显示名字而非ID,和上面的参数可以搭配使用
       (2)通过文档查看:tail -n /etc/passwd | /etc/shadow | /etc/group
           这仨文档有什么关系呢:当我们登录到系统时,输入账号密码后,系统会根据你输入到账户到/etc/passwd搜寻看有没有这个账户,即/etc/passwd里面的name,没有则退出,有的话,再去/etc/shadow里面去核对密码,当所有都无误了
           /etc/passwd:主要是存放user信息的库
            name:password:UID:GID:GECOS:directory:shell
           /etc/shadow:单独存放user的密码
           用户名:加密的密码:最近一次修改密码的时间:最短使用期限:最长使用期限:警告期限:过期期限:保留字段
           /etc/group:存放group信息的库

           group_name:password:GID:user_list

        1.查看系统支持的shells:  cat /etc/shells
        2.用户添加附加组有三种方法:第一:usermod -aG  username ,第二: gpassword -a username groupname,第三:vi /etc/group,在最后一项添加username
        删除附加组: gpasswd  -d  USERNANME,vi /etc/group
        3./etc/passwd,/etc/shadow,/etc/group的默认设置是在 /etc/login.defs
        4.passwd的加密究竟用的哪种加密算法,在/etc/shadow里面的第二字段就有据可查,总共由3个$符隔开,第一和第二个$之间表示加密的算法,为6表示sha512,第二个$和第三个$之间表示的是salt,最后一段就是真正的加密数据了。
            passwd --status  USERNAME ,或者 passwd -S USERNAME 可以也可以查看账户的属性以及使用的什么加密算法
                加密算法 对称和非对称
                    公式:s={p,c,k,e,d}, p=Ek(c),c=Dk(p)
                    对称 DES,3DES,RC2 RC4
                    非对称 RSA DSA
                    单向加密 md5 sha base64 hmac
            加密算法代号:   
                1  md5:message digest,128bits  消息摘要
                2  sha:secure hash algorithm   安全的哈希算法,160bits
                3  sha224
                4  sha256
                5  sha384
                6  sha512

    设置普通用户也能执行yum等命令,等于root权限。

    1、打开visudo文件,设置 serverdevops     ALL=(ALL)     ALL

  • 相关阅读:
    Redis集群~StackExchange.redis连接Twemproxy代理服务器
    开源的Android视频播放器
    Servlet 实现文件的上传与下载
    HDU1878 欧拉回路
    C#根据域名查询IP(CMD命令参数输入或者启动程序后再输入查询)
    Windows API获取系统配置文件的配置参数
    Lucene核心--构建Lucene搜索(下篇,理论篇)
    Lucene核心--构建Lucene搜索(上篇,理论篇)
    hdu1397(素数组和成偶数的个数 用 标记法)
    hdu1248
  • 原文地址:https://www.cnblogs.com/Klanti/p/9470591.html
Copyright © 2011-2022 走看看