Linux用户与组管理详解

在linux系统上,用户管理是基于用户名和密码的方式进行资源的分配,了解和掌握用户与组的管理是从事运维工作所必须具备的能力,也是将来从事运维行业的重要工作之一。

timg_image&quality=80&size=b9999_10000&sec=1522737516367&di=82992248e0191bcecd36

在linux系统上,用户管理是基于用户名和密码的方式进行资源的分配,了解和掌握用户与组的管理是从事运维工作所必须具备的能力,也是将来从事运维行业的重要工作之一。这里我将介绍Linux系统中用户与组的一些相关概念及管理用户与组的常见命令等:

 

*安全3A

Linux通过三个机制来保证用户的安全:

Authentication:认证

Authorization:授权

Accouting|Audition:审计

 

*用户user

令牌:token

Linux用户:Username

管理员:root,UID=0(拥有对系统的最高操作权限)

普通用户:

系统用户:1-499,1-999(centos7)

登录用户:500+,1000+(centos7)

 

*组 group:

Linux组:Groupname/GID

管理员组:root,GID=0

普通组:

系统组:1-499,1-999(centos7)

普通组:500+,1000+(centos7)

在创建用户不指定组的情况下,默认创建一个与该用户名相同的组作为该用户的主组

 

*组的类别:

用户的主要组:

用户必须属于一个且只有一个主组

组名同用户名,且仅包含一个用户,私有组

用户的附加组:

一个用户可以属于零个或多个附加组

 

*安全上下文

进程所能够访问资源的权限取决于进程的运行者的身份

 

*用户和组的配置文件

/etc/passwd:        存放用户及其属性信息

/etc/shadow:       存放用户密码及其相关信息

/etc/group:  存放组及属性信息

/etc/gshadow:     存放组密码及其相关信息

/etc/default/useradd:新建账户模板信息

 

/etc/passwd

passwd

name:password:UID:GID:GECEO:directory:shell

1.用户名

2.密码:显示为x

3.UID:用户ID

4.GID:组ID

5.描述信息:GECOS,可添加用户描述信息

6.家目录:用户家目录

7.shell类型:用户shell类型

 

/etc/shadow

shadow

1.用户名

2.密码加密:算法$6;!!表示账户锁定

3.上次修改密码时间:距离1970.1.1的天数

4.密码最小修改时间:距离下次修改密码至少需间隔的天数(0表示随时可变更)

5.密码最大修改时间:距离本次密码修改时间最多可间隔的天数(99999表示永不过期)

6.密码提醒时间:距离密码即将到期提前警告的天数

7.密码到期后宽限时间:密码到期后账户还能使用的天数

8.账户有效期:该账户可使用的日期

9.保留区域:保留将来可能增加的区域

密码期限

/etc/group

group

group_name:password:GID:user_list

1.组名

2.组密码:普通用户加入某个组时需要的密码(不推荐设置密码)

3.GID:组ID

4.组成员:“,”作为分隔符

 

/etc/gshadow

gshadow

group_name:encrypted_password:administrators:members

1.组名

2.组密码

3.组管理员(组长)

4.组成员:“,”作为分隔符

 

/etc/default/useradd

# useradd defaults file            创建用户默认文件

GROUP=100                     创建用户无指定组时默认所属的组users

HOME=/home                          创建用户默认家目录路径

INACTIVE=-1                    创建用户时默认没有宽限时间

EXPIRE=                             创建用户时默认有效期

SHELL=/bin/bash                      创建用户时默认shell类型

SKEL=/etc/skel                          创建用户时家目录模板

CREATE_MAIL_SPOOL=yes             创建用户时默认创建邮箱

 

*文件操作

vipw         等同于vi /etc/passwd

vigr           等同于vi /etc/group

pwck        检查passwd文件格式错误

grpck        检查group文件格式错误

 

*用户与组的管理命令

用户管理命令及常用选项:

useradd            etc/default/useradd存放创建用户时的默认信息

-u     指定uid(生产环境中多台服务器保证程序是同一UID)

-o     不检查UID的唯一性,需配合-u使用(不建议UID一样)

-g     创建用户时指定主组

-c  创建用户时添加描述

-d     创建用户时指定家目录路径,二层目录(生产环境中创建给服务用的账户可能会用到)

-s      创建用户时指定shell类型/etc/shells

-r      创建系统用户(默认不创建家目录)

-m    强行创建家目录,用于系统用户,配合-r使用(生产环境中为服务生成系统用户)-M         强行不创建家目录,用于普通用户

-G     创建用户时加入到多个辅助组里,多个辅助组用“,”分开

-N   创建一个用户名和主组名不同的用户,默认users作为主组

-p    创建用户添加密码(不建议此种方式添加口令,口令会在shadow文件中明文)

 

usermod

-u     修改UID

-g     修改GID(组需存在)

-G     修改辅助组(会将原来的辅助组覆盖),如果要保留原辅助组配合-a使用

-s      新的默认shell

-c     新的注释信息

-d     新家目录不会自动创建;若要创建新家目录并移动原家数据,同时使用-m选项(-m -d有顺序)

-l      新的用户名

-L     用户加锁

-U    用户解锁(centos6以后禁止此方式解锁)

 

userdel

-r      删除用户的所有文件,家目录及邮箱(工作中不建议用,建议保留数据)

 

*组帐号维护命令及常用选项

groupadd

-g     指明GID号创建组

-r      创建系统组group(centos6:ID<500、centos7:ID<1000)

 

groupmod

-n     新的组名

-g     新的GID

 

groupdel 删除组(前提没有用户以此组为主组)

 

groupmems     查看指定组的成员

-g     更改为指定组(只有root)

-a     指定用户加入组

-d     从组中删除用户

-p     从组中清除所有成员

-l      显示组成员列表(读取的/etc/group文件中对应组的最后一个字段的全部内容)

 

gpasswd           给组添加口令

-a user     将user添加至指定组中

-d user     从指定组中移除用户user

-A user1,user2…  设置有管理权限的用户列表(设置组管理员)

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/94787

(1)
wangxczwangxcz
上一篇 2018-04-03 10:48
下一篇 2018-04-03 13:18

相关推荐

  • 计算机原理与Linux基础

    计算机的组成及功能 1、其实计算机的组织分为内部设备和外部设备, 内部设备:         CPU:运算器、寄存器、缓存         存储器:内存,RAM(Random Access Memory)         控制器:控制器是整个计算机系统的控制中心,它指挥计算机各部分协调地工作,保证计算机按照预先规定的目标和步骤有条不紊地进行操作及处理。 外部…

    Linux笔记 2018-05-13
  • Linux巧用dd密令测试磁盘的读写能力

    dd if=/dev/zero of=/data/test.txt bs=4k count=100000
    dd if=/dev/sda1 of=/dev/null bs=4k count=1000000000
    只是粗略计算方法!

    Linux笔记 2018-03-31
  • 06葵花宝典之linux网络、进程管理和shell循环语句

    06葵花宝典之linux网络、进程管理和shell循环语句 作为服务器,其输入输出功能在大多数时候都是通过网络提供的,网络功能对于服务器而言是至关重要的。 一、OSI七层模型和TCP/IP四层模型 1、OSI七层模型 OSI七层模型是参考ISO(International Standard Organization国际标准化组织)所指定的一个用于通信系统间互…

    2018-04-15
  • 进程和计划任务

    进程和计划任务 一、 进程 程序:是在磁盘上的一个文件,只要不去运行它就是一个静态文件,不占用内存空间; 进程:process是一个动态的概念,只有当用户将程序运行起来时才会有进程,当进程执行完毕时,就会从内存中删除。 线程:thread   pstree –p 命令显示中{}中的即为线程。 一个进程会对应一个程序,而一个程序可能会对应多个进程。 一个进程里…

    2018-05-05
  • 参加马哥教育面授班

    很兴奋,今天是开班的第6天了,课程的具体安排为,1、3、5上课,2、4、6实操课。课堂上目前是王老师授课,讲的都是满满的干货,很详细。让我再次确信参加这次培训不会有错。 面授班与在网络学习,我觉得学习效果差别还是蛮大的。参加面授班能很好的约束我的行为,不会出现学着学着就打开游戏或看电影了,学习效率很高,哈哈。初次见到马哥教育的各个老师发现都很平易近人,学习上…

    Linux笔记 2018-07-21
  • Homework_week3

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。        who | cut -d’ ‘ -f1 | uniq 2、取出最后登录到当前系统的用户的相关信息。       who | tail -1 3、取出当前系统上被用户当作其默认shell的最多的那个shell。       cut …

    Linux笔记 2018-06-26