• 十三、用户名密码管理


    一、创建用户

    命令

    注释说明

    useradd

    adduser命令,执行此命令可在系统中添加用户

    userdel

    执行此命令可以删除用户及相关用户的配置或文件

    passwd

    执行此命令可以为用户设置密码

    chage

    修改用户密码有效期

    usermod

    修改用户的命令,可以通过usermod来修改登录名、用户的家目录等等

    id

    查看用户的UIDGID及所归属的用户组

    su

    用户切换工具

    sudo

     Sudo通过另一个用户来执行命令(execute a command as another user)su是用来切换用户,然后通过切换到的用户来完成相应的任务,但sudo能在命令后面直接接命令执行,比如sudo ls /root,不需要root密码就可以执行只有root才能执行相应的命令或具备的目录权限,这个权限需要通过visudo命令或者直接编辑/etc/sudoers来实现

    1、useradd命令使用

      useradd -u 2001 -s /sbin/nologin -M -c dddd -e 2025/9/01 pp

         -u 指定uid   -s 添加shell   -M 不创建家目录  -c 添加说明  -e 用户过期时间

      

      默认用户配置文件useradd

      创建用户调用这个文件 

      /etc/default/useradd


      [root@localhost.localdomain ~]# cat /etc/default/useradd
      # useradd defaults file   
      GROUP=100
      HOME=/home   #把用户的家目录创建在/home中
      INACTIVE=-1   #是否启用账号过期停权,-1表示不启用
      EXPIRE=    #账号终止日期,不设置表示不启用
      SHELL=/bin/bash     #新用户默认所用的shell类型
      SKEL=/etc/skel   #配置新用户家目录的默认文件存放路径
      CREATE_MAIL_SPOOL=yes 

      如果不指定参数,就默认使用useradd里面的参数

      

      chage -l tom      查看用户tom的有效期

    二、用户组

    groupadd命令的使用

    groupadd kkk    添加组

    groupadd -g 444 tom  指定GID

    只记这个就可以了

    三、修改用户密码

    passwd命令的使用

    passwd  tom  更改用户tom密码

    echo 111 |passwd --stdin tom    非交互式给tom添加密码  写脚本时经常用到

    要求tom用户7天内不能更改密码,60天以后必须修改密码,过期前10天通知tom用户,过期后30天后禁止用户登陆

    [root@dingjian ~]# passwd -n 7 -x 60 -w 10 -i 30 tom
    
    Adjusting aging data for user tom.
    
    passwd: Success
    
    [root@localhost.localdomain /etc/skel]# chage -l tom
    Last password change : Sep 22, 2020
    Password expires : Nov 21, 2020
    Password inactive : Dec 21, 2020
    Account expires : never
    Minimum number of days between password change : 7
    Maximum number of days between password change : 60
    Number of days of warning before password expires : 10

     

    chage命令使用

    chage –E 2020/10/30 tom 修改tom的过期时间

    或者

    [root@dingjian ~]# usermod -e 01/28/2020 tom

    userdel命令的使用

    userdel  -r ddd  删除ddd用户 –r连家目录和邮件一起删掉

    在工作中,在/etc/passwd里面把用户密码加注释,

    在删用户时要考虑到用户的家目录中有没有重要数据,不要轻易删除

    groupdel 444  删除组

    无论使用useradd或者usermod等命令创建或者删除用户,都更改以下四个文件

    /etc/group

    /etc/gshadow

    /etc/passwd

    /etc/shadow

    usermod -e 01/28/2020 tom

    -e 账号停止日期  -g 更新用户新的起始登入用户组 -G 定义group  -s shell    -u uid  

    usermod命令的使用

    用户信息修改相关命令useradd

    usermod命令相关的文件有:

    /etc/passwd   用户账号资料文件

    /etc/shadow   用户账号资讯加密文件

    /etc/group    用户组资讯文件

    参数选项

    注释说明带※号的内容是最需要掌握的

    -e expire_date

    ※加上用户账号停止日期,日期格式为MM/DD/YY

    -f inactive_days

    账号过期几日后永久停权。当值为0时账号则立刻被停权。而当值为-1时则关闭此功能。预设值为-1

    -g initial_group

    ※更新用户新的起始登入用户组。用户组名须己存在。用户组ID必须参照既有的用户组,用户组ID预设值为1

    -G group[…]

    ※定义用户为一堆groups的成员。每个用户组使用”,”逗号分隔开来,用户组名同-g选项的限制

    -l login_name

    变更用户login时的名称为login_name 。其余信息不变

    -s shell

    ※指定新登入shell,如此栏留白,系统将选用系统预设shell,这个-s参数功能也可以使用chsh命令来修改,也可以手功修改/etc/passwd

    -u   uid

    ※指定用户UID值,除非接-o能数,如usermod –u 505 –o tom ,否则ID值必须是唯一的数字(不能为负数)

    [root@dingjian ~]# usermod -c tom -u 1806 -G root,sa -s /bin/tcsh -d /tmp/oldboy6 oldboy6

    -c 更改说明  -u UID –G 修改组 –s 更改shell  -d 修改家目录

    id tom 显示用户tom的信息

    显示己经登陆的用户,并且都做了什么的信息

    [root@localhost.localdomain ~]# w
    17:51:50 up 2 days, 20:29, 3 users, load average: 0.00, 0.01, 0.05
    USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
    root tty1 Mon21 2days 0.15s 0.15s -bash
    root pts/0 192.168.200.2 13:49 1:32m 1.94s 1.94s -bash
    root pts/1 192.168.200.2 17:36 6.00s 0.05s 0.00s w

    [root@dingjian ~]# who     显示哪些用户在登陆,终端及登陆时间,来源于主机。 

    [root@dingjian ~]# last        显示己登陆用户列表及登陆时间等

                              查看的信息和/var/log/wtmp  /var/log/btmp两个文件有关

    [root@dingjian ~]# lastlog     报告最近的所有系统用户的登陆信息,安全检查或者被攻击检查   查看的信息和/var/log/lastlog日志有关

    [root@dingjian ~]# users     显示当哪些用户在登陆 

    [root@dingjian ~]# uptime

     07:58:01 up 6 days,  8:34,  1 user,  load average: 0.03, 0.04, 0.01

    groups tom  查看所属组

    显示第一个为主组,后面的是附加组

    四、用户之间的切换

    su 命令就是切换用户身份的命令,

    通过su命令可以在用户之间切换,超级权限用户root向普通或虚拟用户切换不需要密码验证(这就是超级权限所在),其它普通用户之间或者普通用户切换到root,都需要切换用户的密码验证

    env查看环境变量

    su命令总结

    1.普通用户切换到root用户,可使用su su – root 。必须输入root的密码才能完成切换

    2.root用户切换到普通用户,可使用”su – 普通用户名的写法,不需要输入任何密码就能完成切换,切换到普通用户后,使用普通用户的PATH变量,

    3.如果仅希望以某用户的角色执行命令,而不直接切换到该用户下操作,可以使用su – 用户名 –c “命令”

     

  • 相关阅读:
    JavaScript框架大战已结束,赢家只有一个
    js的作用域
    前端不缓存,ajax不缓存,js操作cookie
    7 款最棒的 React 移动端 UI 组件库 特别针对国内使用场景推荐
    变量提升与函数提升
    分享 11 张巨好看的PC端界面!!!
    C# 生成自签名CA证书
    2023年值得推荐的五大React Native UI库
    iPhone 返厂维修全记录
    macOS10.15安装qt出现 “无法打开“qtopensourcemacx645.13.2.app”,因为Apple无法检查其是否包含恶意软件。
  • 原文地址:https://www.cnblogs.com/mr-xiong/p/13730458.html
Copyright © 2020-2023  润新知