美文网首页
day23-用户管理补充

day23-用户管理补充

作者: 杨丶子 | 来源:发表于2019-04-25 17:01 被阅读0次
    16952149-21a41f1e55d07c61.png

    一、查询用户命令

    1. id

    显示用户uid gid
    显示用户属于组
    判断用户是否存在
    

    2. w

    查询负载
    显示谁登陆系统 在干啥
    等于uptime 查询负载
    等于who 显示登录信息
    
    “w”命令是用来查看什么的,w每一部分含义 16952149-3913f11107b8ce38.png
    [09:16 root@oldboy ~]# w   
    09:16:43 up 49 min,  3 users,  load average: 0.03, 0.02, 0.05
    USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
    root     tty1                      08:27   49:07   0.04s  0.04s -bash
    root     pts/0    10.0.0.1         08:27    3.00s  0.09s  0.00s w
        oldboy   pts/1    10.0.0.1         08:28   39:07   0.07s  0.07s -bash
    

    3. whoami

    查看当前用户名
    

    4. last

    用户等登录信息 谁什么时候从哪里登录 什么时候退出
    根据时间段找出谁登陆了系统
    
    [13:54 root@oldboy ~]# last
    oldboy   pts/0        10.0.0.1         Thu Apr 25 11:29   still logged in   
    oldboy   pts/0        10.0.0.1         Thu Apr 25 11:24 - 11:29  (00:04)    
    oldboy   pts/1        10.0.0.1         Thu Apr 25 10:03 - 11:24  (01:21)    
    oldboy   pts/1        10.0.0.1         Thu Apr 25 09:35 - 09:42  (00:06)    
    .............省略...~
    root     tty1                          Tue Mar 26 14:22 - 08:31  (18:09)    
    root     pts/0        10.0.0.1         Tue Mar 26 14:22 - 14:22  (00:00)    
    reboot   system boot  3.10.0-957.el7.x Tue Mar 26 14:18 - 08:31  (18:13)    
    root     pts/0        10.0.0.1         Tue Mar 26 14:12 - crash  (00:06)    
    root     pts/0        10.0.0.1         Tue Mar 26 14:11 - 14:12  (00:00)    
    root     tty1                          Tue Mar 26 14:11 - crash  (00:07)    
    reboot   system boot  3.10.0-957.el7.x Tue Mar 26 14:10 - 08:31  (18:21)    
    
    wtmp begins Tue Mar 26 14:10:10 2019
    

    5. lastlog

    显示所有用户最近1次的登录时间
    
    [13:54 root@oldboy ~]# lastlog
    Username         Port     From             Latest
    root             pts/0                     Thu Apr 25 11:29:55 +0800 2019
    bin                                        **Never logged in**
    daemon                                     **Never logged in**
    adm                                        **Never logged in**
    ............省略....~
    stu04                                      **Never logged in**
    stu05                                      **Never logged in**
    stu06                                      **Never logged in**
    stu04stu04                                 **Never logged in**
    stu05stu05                                 **Never logged in**
    stu06stu06                                 **Never logged in**
    

    二、保护用户密码

    可以在在密码中添加数字 大字母 小字母 符号
        "
        ""
        -
    12位以上的密码,上面几种
    
    记录密码:Keepass软件自动生成密码软件

    三、批量添加用户并设置"固定密码"和"随机密码"

    1.添加用户并设定固定密码

    ①.生成用户名

    echo stu{01..3}|xargs -n1
    

    ②命令拼接>利用sed/awk 里面

    sed 's###g' 后两个井号之间写什么 屏幕就显示什么 
    awk  利用 ""    双引号里面写什么 屏幕就显示什么 
    

    ③第3步 把显示内容执行

    执行bash命令解释器
    步骤

    [10:35 root@oldboy ~]# echo stu{01..3}|xargs -n1
    stu01
    stu02
    stu03
    [10:35 root@oldboy ~]# echo stu{01..3}|xargs -n1|sed -r 's#(.*)#useradd \1#g'
    useradd stu01
    useradd stu02
    useradd stu03
    [10:35 root@oldboy ~]# echo stu{01..3}|xargs -n1|sed -r 's#(.*)#useradd \1;echo 123456|passwd --stdin \1#g'
    useradd stu01;echo 123456|passwd --stdin stu01
    useradd stu02;echo 123456|passwd --stdin stu02
    useradd stu03;echo 123456|passwd --stdin stu03
    [10:35 root@oldboy ~]# echo stu{01..3}|xargs -n1|sed -r 's#(.*)#useradd \1;echo 123456|passwd --stdin \1#g'|bash
    Changing password for user stu01.
    passwd: all authentication tokens updated successfully.
    Changing password for user stu02.
    passwd: all authentication tokens updated successfully.
    Changing password for user stu03.
    passwd: all authentication tokens updated successfully.
    
    添加3个用户并设置固定密码123456.png

    2.添加用户并设定随机密码

    批量添加用户stu04 stu05 stu06 随机8位密码 ,把密码和用户名字保存到文件里

    ①第1个里程碑 创建用户名

    echo stu{04..6}|xargs -n1
    

    ②第2个里程碑 设置随机密码

    用下文中的生成随机密码的方法即可。
    

    ③第3个里程碑 命令拼接

    1.
    seq -w 05|sed -r 's#(.*)#useradd abc\1;pass=`echo $RANDOM|md5sum`;echo 123456|passwd --stdin abc&;echo $pass abc& >>/root/pass.txt #g'|bash
    
    2.
    echo stu{04..6}|xargs -n1|sed -r 's#(.*)#useradd \1;pass=`date +%N`;echo $pass|passwd --stdin \1;echo $pass  >>/root/pass.txt &#g'|bash
    

    ④第4个里程碑-交给bash执行 并 检查

    [12:12 root@oldboy ~]#  echo stu{04..6}|xargs -n1|sed -r 's#(.*)#useradd \1;pass=`date +%N`;echo $pass|passwd --stdin \1;echo $pass  >>/root/pass.txt &#g'
    useradd stu04;pass=`date +%N`;echo $pass|passwd --stdin stu04;echo $pass  >>/root/pass.txt stu04
    useradd stu05;pass=`date +%N`;echo $pass|passwd --stdin stu05;echo $pass  >>/root/pass.txt stu05
    useradd stu06;pass=`date +%N`;echo $pass|passwd --stdin stu06;echo $pass  >>/root/pass.txt stu06
    [12:12 root@oldboy ~]#  echo stu{04..6}|xargs -n1|sed -r 's#(.*)#useradd \1;pass=`date +%N`;echo $pass|passwd --stdin \1;echo $pass  >>/root/pass.txt &#g'|bash
    useradd: user 'stu04' already exists
    Changing password for user stu04.
    passwd: all authentication tokens updated successfully.
    useradd: user 'stu05' already exists
    Changing password for user stu05.
    passwd: all authentication tokens updated successfully.
    useradd: user 'stu06' already exists
    Changing password for user stu06.
    passwd: all authentication tokens updated successfully.
    [12:12 root@oldboy ~]# cat pass.txt 
    411076399 stu04
    442078527 stu05
    478506586 stu06
    
    机器识别的时间比较快,批量创建用户时如果用时间做随机数字,最后好用纳秒,用比较大的时间密码可能会重复.png

    3.补充: sed 中的 & 含义

    &符号在sed命令中s###g 表示前面正则匹配到的内容

    16952149-6cd26cdc204a527a.png

    4. 生成随机密码的方法

    #方法1
    tr + head
    tr -cd 'a-zA-Z0-9' </dev/urandom |head -c8 #生成八位数密码
    #方法2
    date +%N
    date +%N|sha512sum| head -c8
    date +%N|md5sum | head -c8
    date +%N |md5sum |head -c10
    #方法3
    RANDOM环境变量  RANDOM生成随机数字、RANDOM +数字 
    echo $RANDOM
    echo $RANDOM|md5sum
    echo $((RANDOM+10000000))
    #方法4
    uuidgen|cut -b 1-8
    #方法5
    mkpasswd|cut -b 1-8
    #方法6
    openssl rand -base64 8
    7+29k0jeCeI=
    #方法7
    string字符转换,转换为人类可读的
    strings /dev/urandom | tr -cd 'a-zA-Z0-9' |head -c8
    #方法8  gpg
    gpg --gen-random -armor 1 12
    gGdc3IQH5WFjvLXL
    

    相关文章

      网友评论

          本文标题:day23-用户管理补充

          本文链接:https://www.haomeiwen.com/subject/hxizgqtx.html