linux 用户与组管理详解

##用户与组的分类
Linux系统对用户分配如下:
-系统管理员:root
-普通用户:普通用户分为以下两种
          系统用户:系统用户通常是不可登陆的,执行某些服务及进程的帐号
          登录用户:一般用户,
    我们登录linux系统时,输入的是我们的帐号,但是linux系统并不会直接识别你的帐号,而是通过我们建立帐号时系统分配的ID号码,对于用户类型ID分配如下:
     -系统管理员ID:0 (root用户ID)
     -普通用户ID:1~65535,
           系统用户ID:1~499(CentOS 6),1 ~999(CentOS 7)
          登录用户ID:500~+(CentOS 6),1000~+(CentOS 7)
    在建立用户帐号时,系统会为用户帐号分配至少两个ID,一个用户ID(UserID,简称UID),一个用户组ID(GroupID,简称GID),上面是UID,下面了解一下GID:
    -管理员组:0 (root组ID) 
    -普通组:1~65535,
          系统组ID:1~499(CentOS 6),1 ~999(CentOS 7)
          非系统组ID:500~+(CentOS 6),1000~+(CentOS 7)
    对于一个用户而言,只有唯一个UID,但是可以有多个不同的组,分别为主组和附加组,主组组名与用户名相同,且只有一个用户,也可以称为私有组。主组以外的组为附加组。
##相关的配置文件
###用户和组的相关配置文件如下:
/etc/passwd: 用户帐号的相关信息
/etc/group: 组帐号的相关信息
/etc/shadow: 用户密码及相关属性
/etc/gshadow: 组密码及相关属性
###配置文档详解:
####/etc/passwd:文件结构
[root@smartwy ~]# cat /etc/passwd | grep 'wangye' 

     wangye:x:1008:1008:samrtwy:/home/wangye:/bin/bash

passwd文件以":"将信息分为7字段,各字段意义如下:
1字段:用户名称
2字段:用户密码,早期密码就在这个字段,后因安全问题,改放到/etc/shadow
3字段:UID,该帐号是登录用户,UID(CentOS7)分配为1000+
4字段:GID
5字段:对用户的说明信息,(注释)
6字段:用户的家目录
7字段:用户的shell
 
####/etc/group:文件结构
[root@smartwy ~]# cat /etc/group | grep 'wangye'
wangye:x:1008:

group文件以":"将信息分为4字段,各字段意义如下:
1字段:组名称
2字段:用户组密码,因安全问题,改放到/etc/gshadow
3字段:GID
4字段:以此组为附加组的用户名称
 
####/etc/shadow:文件结构
[root@smartwy ~]# cat /etc/shadow | grep 'wangye'


wangye:!!:17251:0:99999:7:::

shadow文件以":"将信息分为4字段,各字段意义如下:
1字段:用户名称
2字段:用户密码,该用户暂未设置密码
3字段:最后一次变更密码的日期,从1970年1月1日开始计算
4字段:密码变更锁定天数,与第3段相比锁定天数过后才可变更密码
5字段:密码使用期限,与第3段相比在此天数内需要重设你的密码
6字段:密码变更前警告期,与第5段相比密码快要到期时,系统会依据这个字段的天数设置发出"警告"
7字段:密码过期宽限时间,在此天数内用户没有登录变更密码,那么该帐号的密码将会"失效"
8字段:帐号失效日期,无论密码是否过期,这个帐号都不能再被使用
9字段:保留字段
 
**建议:密码的复杂性策略**
**1,使用数字,大写字母,小写字母及特殊符号中至少3种**
**2,使用非规律密码且足够长**
**3,定期更换**

####/etc/gshadow:文件结构
[root@smartwy ~]# cat /etc/gshadow | grep 'wangye'
wangye:!::

gshadow文件以":"将信息分为4字段,各字段意义如下:
1字段:组名称
2字段:用户组密码,该用户组暂未设置密码
3字段:用户组管理者,缺省代表没有管理者
4字段:组内用户列表,因为这是用户的私有组所以没有其他用户
##用户和组管理命令
###新增,变更与删除用户:useradd,passwd,chage,usermod,userdel
useradd:新建用户
[root@smartwy ~]# useradd [OPTIONS] username
[OPTIONS]选项参数如下:
-u:指定UID
-g:指定GID(此组需存在)
-G:指定用户附加组,多个附加组需使用逗号分隔开(此组需存在)
-c:指定注释信息
-d:指定用户家目录
-s:指定shell,可在/etc/shells文件里查看shell可用种类
-r:创建系统用户
-D:修改用户默认选项(修改的是/etc/default/useradd中选项)

passwd:添加密码
[root@smartwy ~]# passwd [OPTIONS] username
[OPTIONS]选项参数如下:
-l:锁定指定用户密码
-u:解锁指定用户密码
-d:清除指定用户密码
-e:终止用户密码,强制用户修改密码
-i:非活动期限
-n:指定密码最短试用期
-x:密码最长使用期限
-w:提前多少天警告变更密码
–stdin:echo "12345678" | passwd –stdin username,将12345678设定为username的密码,一般用于批量新建用户初始密码

chage:修改密码参数
[root@smartwy ~]# chage [OPTIONS] username
[OPTIONS]选项参数如下:
-l:列出该用户的密码详细参数
-d:修改shadow第3段(最后一次变更密码的日期)设定为0时,用户首次登录需要变更密码
-m:修改shadow第4段(密码变更锁定天数)
-M:修改shadow第5段(密码使用期限)
-W:修改shadow第6段(密码变更前警告期)
-I:修改shadow第7段(密码过期宽限时间)
-E:修改shadow第8段(帐号失效日期)

usermod:用户属性修改
[root@smartwy ~]# usermod [OPTIONS] username
[OPTIONS]选项参数如下:
-u:指定UID
-g:指定GID(此组需存在)
-G:指定用户附加组,多个附加组需使用逗号分隔开(此组需存在)
-c:指定注释信息
-d:指定用户家目录
-s:指定shell,可在/etc/shells文件里查看shell可用种类
-r:创建系统用户
-l:更改用户名
-L:锁定用户,密码前添加"!"
-U:解锁用户,去掉密码前的"!"

userdel:删除用户
[root@smartwy ~]# userdel [OPTIONS] username
[OPTIONS]选项参数如下:
-r:删除用户家目录

###新增,变更与删除组:groupadd,gpasswd,groupmod,groupdel

groupadd:新建组
[root@smartwy ~]# groupadd [OPTIONS] groupname
[OPTIONS]选项参数如下:
-g:指定GID
-r:创建系统组

gpasswd:组密码
[root@smartwy ~]# gasswd [OPTIONS] groupname
[OPTIONS]选项参数如下:
-a user:将用户user添加进该组
-d user:将用户user移除该组
-A userlist:设置有组管理权限的用户列表

groupmod:组属性修改
[root@smartwy ~]# groupmod [OPTIONS] groupname
[OPTIONS]选项参数如下:
-g:修改GID
-n:修改组名称

groupdel:删除组
[root@smartwy ~]# groupdel groupname

##扩展id与su
###id:查看用户相关ID信息
[root@smartwy ~]# id [OPTIONS]… [USER] 
[OPTIONS]选项参数如下:
-g:查看该组GID
-u:查看该用户ID
###su:切换用户
[root@smartwy ~]# su  [user[args]] 
非登录式切换,不会读取目标用户的配置文件
[root@smartwy ~]# su – [user[args]] 
登录式切换,读取目标用户的配置文件
**注意:root切换其它用户无需密码,非root切换用户时需要密码**

原创文章,作者:wangy,如若转载,请注明出处:http://www.178linux.com/72274

赞 (0)
wangywangy
上一篇 2017-04-04 23:54
下一篇 2017-04-05 08:22

相关推荐

  • 如何安装VMware Workstation

    1、打开安装包,直接点击“下一步” 2、选择接受条款,单击“下一步” 3、选择安装路径,单击“下一步” 4、单击“下一步”,也可以勾选掉两个选项   5、单击“下一步”   6、点击“安装”   7、完成安装  

    2017-07-11
  • 堡垒机-麒麟堡垒机动态口令使用手册

      一.管理员部分 1.在其它-licenses菜单查看动态口令许可是否打开,如果未打开联系厂商重新生成许可   2.找厂商生成密钥文件,密钥文件中包含令牌种子,在其它–动态令牌菜单将密钥文件导入即可看到所有的令牌种子,每个令牌可以绑定给多个用户     3.令牌绑定可以在 资源管理–…

    安全运维 2016-05-29
  • M22 Centos设置yum源方法

    实验目的: 使用虚拟机模拟建立yum源服务器,在客户机上指定yum源为该服务器。 实验器材: WMware12安装Centos6.8虚拟机作为yum服务源 WMware12安装Centos7.3 作为客户端访问yum源服务器 实验原理图: 实验过程: 服务器端: 1、  显示已经挂载的光盘 #cd /misc/cd #先执行此命令才可以看到光盘挂载…

    2017-03-06
  • N22-℡浮生.若夢 ╮第九周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash ## declare -i log_user declare -i notlog_user for i …

    Linux干货 2016-12-12
  • Linux之函数

      Linux之函数     函数介绍函数function是由若干条shell命令组成的语句块,实现代码重用和模块化编程。它与shell程序形式上是相似的,不同的是它不是一个单独的进程,不能独立运行,而是shell程序的一部分。函数和shell程序比较相似,区别在于:Shell程序在子Shell中运行而Shell函数在…

    Linux干货 2016-08-25
  • Shell脚本编程中作业

    一、作业: 1、1、编写服务脚本/root/bin/testsrv.sh,完成如下要求 (1) 脚本可接受参数:start, stop, restart, status (2) 如果参数非此四者之一,提示使用格式后报错退出 (3) 如是start:则创建/var/lock/subsys/SCRIPT_NAME, 并显示“启动成功” 考虑:如果事先已经启动过一…

    Linux干货 2016-08-24

评论列表(1条)

  • renjin
    renjin 2017-04-05 11:38

    对命令的选项及参数有较详细的说明,可以把常用的标注一下,适当的加入一些图片