欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

用户的基本操(二)

程序员文章站 2022-04-15 15:38:06
用户的基本操作(二) 使用who,whoaim,w检查用户登录情况 简单了解下 使用finger命令查询永辉信息及登录信息 使用chfn命令修改用户信息 使用chsh命令修改用户登录bash shell 用户的扩展知识 用户的创建流程 1,useradd创建用户时,系统会以/etc/login.de ......

用户的基本操作(二)

使用who,whoaim,w检查用户登录情况
[root@db04 ~]# who
root     pts/0        2019-06-20 03:07 (10.0.0.1)
[root@db04 ~]# whoami
root
[root@db04 ~]# w
 14:36:59 up 1 day, 1 min,  1 user,  load average: 0.00, 0.00, 0.00
user     tty      from              login@   idle   jcpu   pcpu what
root     pts/0    10.0.0.1         03:07    0.00s  0.18s  0.00s w
简单了解下
  • 使用finger命令查询永辉信息及登录信息

    #如果没有则需要安装
    [root@db04 ~]# yum install -y finger
    #使用方法
    [root@db04 ~]# finger zls
    login: zls                      name:
    directory: /home/zls                    shell: /bin/bash
    never logged in.
    no mail.
    no plan.
  • 使用chfn命令修改用户信息

    #修改用户信息
    [root@db04 ~]# chfn zls
    changing finger information for zls.
    name []: 曾老湿
    office []: 老男孩教育
    office phone []: 13012345678
    home phone []:
    
    finger information changed.
    
    #再次查看
    [root@db04 ~]# finger zls
    login: zls                      name: 曾老湿
    directory: /home/zls                    shell: /bin/bash
    office: 老男孩教育, +1-301-234-5678
    never logged in.
    no mail.
    no plan.
  • 使用chsh命令修改用户登录bash shell

[root@db04 ~]# chsh zls
changing shell for zls.
new shell [/bin/bash]: /sbin/nologin
shell changed.

用户的扩展知识

用户的创建流程

1,useradd创建用户时,系统会以/etc/login.defs, /etc/defaults/useradd两个配置文件作为参照物,如果在创建用户是指定了参数则会覆盖/etc/login.defs, /etc/defaults/useradd文件的默认配置,如果没指定使用默认

#查看配置文件
[root@db04 ~]# less /etc/login.defs
#过滤空行,注释(如何实现)

#参数讲解
#用户的邮件目录
mail_dir    /var/spool/mail
#密码最大天数
pass_max_days   99999
#密码最小天数
pass_min_days   0
#密码最小长度
pass_min_len    5
#密码警告天数
pass_warn_age   7
#普通用户最小uid
uid_min                  1000
#普通用户最大uid
uid_max                 60000
#系统用户最小uid
sys_uid_min               201
#系统用户最大uid
sys_uid_max               999
#普通用户组最小gid
gid_min                  1000
#普通用户组最大gid
gid_max                 60000
#系统组最小gid
sys_gid_min               201
#系统组最大gid
sys_gid_max               999
#是否创建家目录
create_home                 yes
#权限
umask           077
#删除用户时,是否要移除用户组
usergroups_enab yes
#密码加密算法
encrypt_method sha512

#查看useradd配置文件
[root@zls ~]# cat /etc/default/useradd
group=100                 //依赖于/etc/login.defs的use rgruups_enab参数,如果为no,则在此处控制
home=/home                      //把用户的家目录建在/home中。
inactive=-1                     //是否启用账号过期停权,-1表示不启用。
expire=                         //账号终止日期,不设置表示不启用。
shell=/bin/bash            //新用户默认所有的shell类型。
skel=/etc/skel                  //配置新用户家目录的默认文件存放路径。
create_mail_spool=yes       //创建mail文件。

2.当使用useradd创建用户时,创建的用户家目录下会存在.bash_*环境变量相关的文件,这些环境变量默认文件在/etc/skel目录中拷贝。这个默认拷贝环境变量位置是由l配置文件中定义

企业故障案例

#在当前用户的家目录下,想要删除所有文件,执行了如下命令
[root@db04 ~]# rm -fr .*
#结果再次登录时
-bash-4.1#

#解决办法
-bash-4.1# cp /etc/skel/.bash* .
#再次登录 即可恢复
[root@db04 ~]#

用户密码管理

使用passwd为用户创建密码时,为了安全起见,请尽量设置复杂一些。可以按照如下规则设置密码:

1.密码的长度最好大于10位字符
2.密码中包含大小写字母数字以及特殊字符 ! @ # $
3.不规则性(不要出现自己名字、公司名字、自己电话、等等简单的密码)

注意:1.普通用户只能更改自己的密码(密码必须满足8位字符)

​ 2.管理员用户能更改任何人的密码(密码长度无限制)

使用passwd命令修改用户密码
  • 'passwd'后面不加[username]则是修改当前登陆终端用户的密码。
  • 如果你登陆的是root管理员用户,后面可以指定要修改的用户。
  • 只有root管理员才可以修该其他用户的密码,普通账户只能修改自己的密码,并且普通用户没有修改其他用户密码的权限
//无需用户交互修改密码, 将前者的输出结果, 成为后者的输入
[root@zls ~]# echo "123" | passwd --stdin zls
changing password for user zls.
passwd: all authentication tokens updated successfully.
随机复杂密码生成的方式
//1.系统内置变量生成随机密码
[root@zls ~]# echo $random|md5sum|cut -c 1-10
693c116738
[root@zls ~]# echo $(echo $random|md5sum |cut -c 5-14) |tee pass.txt| passwd --stdin zls

//2.mkpasswd密码生成工具, -l设定密码长度,-d数子,-c小写字母,-c大写字母,-s特殊字符
[root@zls ~]# yum install -y expect   //需要安装扩展包
[root@zls ~]# mkpasswd -l 10 -d 2 -c 2 -c 2 -s 4
|k&13br)i/

推荐密码保存工具客户端,支持windows、macos、iphone以及浏览器插件
lastpass官方网站