linux 系统中的用户管理

                                             用户管理

一、linux中用户存在的意义:

    我们知道在linux系统中是多户的,若从单个户用这个角度切入,那用户存在的意义就是每个用户有自己的权限所在,它只能做自己该作的事,不能 影响和干扰其它用户的工作。这样的工作方式才会是安全的、秩序稳定的。

二、linux中用户组存在的意义:

    和生活中一样,有些东西是私人的,有些东西是公共的,有些工作一个人就可以完成,有些工作就需要多个用户协同合作完成,用户组就是针对这一实际情况出现的。

      其实简单来说,用户就是来限制权限的,用户组就是用来放权限的。在这样的工作方式下,linux系统变成了一个有弹性的系统,不那么刻板。所以理解好这一点,才能对linux用户的管理有更好的掌握。

三、linux中用户的查看方式:

  •  当前工作用户的查看 :    whoami        如下图:

  •   系统中的用户的查看

id       username             ######  查看指定用户的uid  gid   和它所属的所有的组。

id     -u       username      ###### 查看指定用户的uid

id    -g       username       ######查看指定用户的gid

id     -G     username       #######查看指定用户的所有属组

id   -n      username         #######  显示名字而不显示数字

四、用户的切换:

命令  su  -   username

在切换用户过程中有两点需要特别注意:

  • 一是要注意 那一小横‘ - ’ 的意思,我想要说的是切换用户时一定得记住不能漏掉它,它代表连同用户环境的切换。简单点说,不加那一小横的切换用户就是换汤不换药,加上就是如假包换的换用户。 通过下图的对比就很容易发现二者的区别:

  • 第二就是要注意在每一切换户用之后,记得要用命令 exit或ctrl d  退出一下,不要一直使用命令su 去切换用户,因为如果不退出继续切换,每切换一次就打开一个shell,这样会大量浪费系统的资源。最后就会不能再切换户用。

 

五、用户信息在系统中的存储:

  与用户相关的信息分布在系统中的五个文件中,下面依次介绍:

  • /etc/passwd 文件

该文件中记录了系统中所有的用户的基本信息,如下图一为这个文集中我随即截的片段,图二是我们的普通用户的基本信息:

 

图一

图二

冒号将用户信息分成了七个部分,每个部分分别表示不同的含义。

第一部分代表:用户名       第二部分代表用户密码   第三部分为用户的uid    第四部分为用户的gid     第五部分为用户说明 

 第六部分为用户的家目录     第七部分代表了用户的默认的shell类型

  • /etc/group

这个文件放置的是用户组相关的信息。

        文件里的每行代表一个用户组与它的相关信息,冒号将一行分为四个部分,每个部分代表不同含义:

         第一部分代表组名      第二部分代表组密码     第三部分代表组的gid    第四部分表示组的成员

  • /etc/shadow

       这个文件里面的信息是与用户登陆认证相关的信息,非常重要,文件的内容我们后文再详细讨论。

  • /etc/skel/.*

         这个文件中的文件都是隐藏文件,当使用useradd命令新建用户时,该目录下的所有文件都会被作为模板被复制到用户的家目录里,这些文件主要是用户的配置文件,也称用户骨文件。

  • /etc/home

用户的家目录,所有新建的用户默认都会放在该目录下面。

六、用命令对用户进行管理:

1.用户的建立

为了在做实验过程中实验现象更明显,我们先介绍一条用户信息监控命令:

watch -n 1 'tail -n 3 /etc/passwd /etc/group; ls -l /home'

     现在我们来看一下建立用户的命令以及几个参数的含义:

    useradd        username         ######  创建一个名为username的用户

   useradd      -u    6666  username  ######  指定创建的用户的uid为6666

   useradd      -g    1111  username   ######  指定新创建用户时,用户属于gid为1111的这个用户组,前提是gid为1111的这个用户组得事先存在或者提前创建。

   useradd     -G   2222  username  ######  指定新创建用户时,用户属于gid为2222.的这个附属组,前提是gid为1111的这个附属组得事先存在或者提前创建。

   useradd   -c  "nice user"  usraname   ####### 指定新创用户的用户说明

  useradd      -d     /home   useraname   ###### 指定创建新用户的家目录

useradd       -s   /bin/bash    useraname   ##########  指定新创用户的默认shell

实验过程的步骤就是,1. 用指定参数创建用户看监控现象  2. 删除用户。  然后试验每个参数的现象。

2.用户的删除以及用户组的创建:

userdel   username   #########删除用户在/etc/passwd     /etc/group    /etc/shadow 这些目录中的信息,但会遗留用户的配置文件

userdel    -r   username  #######  彻底删除用户

groupadd  groupname  ######   建立新的用户组

groupadd -g  6666    #######  用指定的组id建立新用户组

groupdel    groupname  ####### 删除用户

3.更改用户信息:

更改用户信息命令 usermod

usermod    -l      新名称         原名称

usermod   -u     1111             username ########   更改用户的uid

usermod   -g     2222             username ######## 更改用户的初始组

usermod    -G   3333            username  ########  更改用户的附加组

usermod     -aG   4444        username    #######   添加用户的附加组

usermod     -G      " "             username  ###### 清空用户的附加组

usermod        -c     "nice user"   username  ##### 更改用户说明

usermod     -d     /home/terry     username  #### 更改用户家目录的指向

usermod   -md   /home/terry   username     #####更改用户的家目录

usermod    -s    /bin/bash      username  #####  更改用户的默认shell

usermod     -L           username  ######  冻结用户

usermod     -U           username  #####   解锁用户

 

 

七、用户的认证信息:

      用户的认证工作是运维人员的工作,所以熟练掌握/etc/shadow 这个文件的内容的含义以及对其进行管理是非常必要的!

首先我们来放张图看看该文件的详细内容:

由图可以发现,一个用户的认证信息被冒号分成了九个部分,每个部分分别代表不同的含义,下面我们一次来进行说明。

1.第一部分:用户的名称

2.第二部分:用户密码

 passwd    username  #### 修改用户密码   

passwd      -l          username  #########  在用户密码前加入两个‘!!’

passwd       -u        username  ######

usermode  -L       username ######  在用户密码前加入一个‘!’

usermod   -U       username ######   密码为空时不能使用

passwd       -S      username  #######查看用户的密码信息

usermod  -d        username ######  清空用户密码

  若将默认shell改为 /sbin/nologin,那么就算用户有密码有不能登陆主机。

3.第三部分:用户密码最后一次被更改的时间

passwd     -e    username   ######  初始化用花修改密码的时间

chage    -d    n   usrname   ######### 可以修改用户的最后一次修改密码的时间。n为任意数

第四部分:用户密码最短有效期

passwd     -n 1       username  ######## 用户密码在一天之内不能被更改

chage       -m 1     username   #########

第五部分、用户密码最长有效期:

passwd    -x     30  username #######   30天内密码有效

chage       -M    30   usrname   #######

第六部分、密码警告期限:

passwd     -w   2    username   ####### 密码过期前两天发出警告

chage       -W  2    username   #######

第七部分、  用户非活跃天数:

  passwd       -i   1   username  #####  用户密码过期后仍可登陆系统的天数

chage        -I   1       usrname   #####

第八部分、   用户到期日:

chage    -E  2.018-10-30   wisdom  #####  用户wisdom在30号那天会被冻结

第九部分、暂未启用!

哈哈哈,谢谢品尝,欢迎大爷再来

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值