在Linux中,每个文件都分3类权限:账户本身的权限,账户所在群组的权限和其它权限。账户和群组是多对多的关系,即一个账户可以属于多个群组,一个群组可以包含多个账户。但是,对于每一个已登录的账户,只能存在一个当前生效的群组(初始群组)。

账户管理相关配置文件如下:账户信息文件是/etc/passwd、账户密码文件是/etc/shadow、群组信息文件是/etc/group、群组密码文件是/etc/gshadow。

1、/etc/passwd文件怎么看

如上图,/etc/passwd文件中每一行为一个账户,以冒号作为分割的每个字段意思按序号分别如下:

[1] 账户名。改名使用命令usermod -l

[2] 密码,该字段已启用。账户密码在/etc/shadow文件配置

[3] UID,账户的唯一标识。影响该字段值的命令包括:useradd -u、usermod -u

[4] GID,初始群组的唯一标识,关联/etc/group文件的第3个字段。该群组为账户默认的有效群组(有效群组可以使用newgrp命令进行切换)。影响该字段值的命令包括:useradd -g、usermod -g

[5] 描述。影响该字段值的命令包括:useradd -c、usermod -c

[6] 家目录绝对路径。影响该字段值的命令包括:useradd -d、usermod -d

[7] shell,账户默认启用的shell,当为/sbin/nologin时账户无法登录。账户能使用的shell可以用命令chsh -l查询(查询结果为/etc/shells文件的内容)。影响该字段值的命令包括:useradd -s、usermod -s

2、/etc/shadow文件怎么看

如上图,文件/etc/shadow的每一行对应一个账户的密码信息,以冒号作为分割的每个字段意思按序号分别如下:

[1] 账户名,关联/etc/passwd文件的第1个字段

[2] 密码,加密后的密文,加密算法由/etc/login.defs文件中的ENCRYPT_METHOD指定,此处为SHA512。影响该字段值的命令包 括:usermod -L(前置!!冻结)、usermod -U(解冻)、passwd -l(冻结)、passwd -u(解冻)、

[3] 创建日期,上图显示的是一个数字,该数字表示自1970-01-01以来所经历的天数。影响该字段值的命令包括:chage -d

[4] 密码创建之后需经历多少天才能再次修改,0表示无此限制。影响该字段值的命令包括:passwd -n、chage -m

[5] 密码创建多少天之后就过期,99999天约等于99999/365年,好几百年意味着密码不会过期。影响该字段值的命令包括:passwd -x、chage -M

[6] 密码过期前多少天开始向用户发送警告信息。影响该字段值的命令包括:passwd -w、chage -W

[7] 密码过期后还能宽限多少天,在此时间段内用户还可以登录和修改密码,过了这个时间段用户就不能够登录了。影响该字段值的命令包括:useradd -f、usermod -f、passwd -i、chage -I

[8] 失效日期,一个数字,该数字表示自1970-01-01以来所经历的天数。过了这一天用户的密码就失效,无论是否过期均不可再登录。影响该字段值的命令包括:useradd -e、usermod -e、chage -E

[9] 保留

3、/etc/group文件怎么看

如上图,文件/etc/group的每一行对应一个群组,以冒号作为分割的每个字段意思按序号分别如下:

[1] 群组名。改名使用命令:groupmod -n

[2] 密码,已启用,群组密码在/etc/gshadow文件中配置

[3] GID,群组唯一标识,由/etc/passwd文件中的第4个字段关联,作为对应账户的初始群组。影响该字段值的命令包括:groupadd -g、groupmod -g

[4] 帐号名列表,以逗号隔开。这些帐号可以主动切换为该群组的成员,如上图用户mophee(初始群组为mophee)可使用newgrp命令将其生效群组切换为mysql或mail。影响该字段值的命令包括:useradd -G、usermod -[a]G

4、/etc/gshadow文件怎么看

如上图,文件/etc/gshadow中的每一行对应一个群组的密码信息,以冒号作为分割后的每个字段意思按序号分别如下:

[1] 群组名,与/etc/group中的群组名对应

[2] 密码,加密后的密文,使用命令gpasswd group_name可设置群组密码,使用gpasswd -r group_name删除密码

[3] 群组管理员,使用命令gpasswd -A user1,... group_name 可设置群组的管理员。注:群组管理员可以为群组成员设置密码

[4] 群组成员,该字段与/etc/group的第4个字段相同且同步更改,除了使用useradd -G、usermod -G命令维护外,还可使用gpasswd -[adM]进行维护。影响该字段值的命令包括:useradd -G、usermod -[a]G

-----------------------------------------------

理论上,修改以上4个配置文件就可以进行账户管理,但不建议这样进行账户管理。Linux提供足够的命令对账户进行管理,虽然这些命令实质上也是修改这4个文件的内容,但建议使用这些命令:

useradd:添加账户

useradd mophee #建立群组mophee,建立账户mophee,建立家目录/home/mophee且权限为700。无密码,无法登录。
useradd -u 519 -g users mophee2 #建立账目mophee2并指定UID为519,指定初始群组为users
useradd -r mophee3 #建立系统帐号mophee3,UID和GID范围:100~499,无家目录

usermod:修改账户

userdel:删除账户

userdel mophee #删除账户mophee:
#1、从/etc/passwd和/etc/shadow删除;
#2、从/etc/group和/etc/gshadow的最后一个字段除移;
#3、若其初始群组无其它成员账户,则删除群组
userdel -r mophee #除了删除账户外,还删除其家目录和邮件目录

passwd:账户密码管理

passwd -S mophee #列出帐号mophee相关的密码信息

chage:修改账户密码,一般用户可用此命令修改自己的密码

chage -l mophee #列出帐号mophee相关的密码信息

groupadd:添加群组

groupmod:修改群组

groupdel:删除群组

gpasswd:群组密码、群组管理员和成员管理

groups:查看所属群组

groups mophee #列出帐号mophee所属的群组

newgrp:切换有效群组

----------------------------------------------

与账户管理有关的其它配置文件:/etc/login.defs、/etc/default/useradd(使用命令useradd时的一些默认值)。

1、文件/etc/default/useradd怎么看

GROUP:预设的群组ID

HOME:家目录的基准目录,添加账户且创建其家目录等同于在该基准目录下新建一个与账户名同名的目录,影响/etc/passwd的第6个字段

INACTIVE:设置密码过期后是否失效,-1表示不会失效,影响/etc/shadow的第7个字段

EXPIRE:密码失效日期,影响/etc/shadow的第8个字段

SHELL:默认的shell,影响/etc/passwd的第7个字段

SKEL:创建家目录是参考的初始内容,即创建家目录时会将该目录下的内容复制一份到家目录中

CREATE_MAIL_SPOOL:是否创建对应的mailbox目录,yes/no,yes时会在/var/spool/mail/目录下创建与帐号名同名的目录用于存储该账户的邮件

2、文件/etc/login.defs怎么看

MAIL_DIR:邮件目录的基准目录,一般为/var/spool/mail

PASS_MAX_DAYS:自密码创建之日起到过期的天数,影响/etc/shadow的第5个字段

PASS_MIN_DAYS:密码创建之后不允许更改的天数,影响/etc/shadow的第4个字段

PASS_MIN_LEN:设置密码允许的最短长度,已启用,由pam模块取代该功能

PASS_WARN_AGE:密码过期之前开始发送警告信息的天数,影响/etc/shadow的第6个字段

UID_MIN:小于该数字值的UID均为系统帐号,默认设为500。使用useradd且未添加-r选项时添加的账户UID均大于此值

UID_MAX:系统支持最大的UID值

GID_MIN:与UID_MIN功能类似,影响的是GID

GID_MAX:与UID_MAX功能类似,影响的是GID

CREATE_HOME:默认是否创建家目录,yes/no

UMASK:家目录默认权限的反码,即该值为077时,家目录的权限为700

USERGROUPS_ENAB:设置在使用userdel命令删除账户时,如果其初始群组下没有其它成员账户,是否将群组也删除。yes/no

ENCRYPT_METHOD:加密算法,如SHA512

CentOS下的账户管理相关推荐

  1. Centos下MySql用户管理

    Centos下MySql用户管理 1.创建用户 CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 2.用户授权 GRANT privile ...

  2. CentOS下用yum管理软件的好处

    使用CentOS, 用yum管理软件,比源代码安装卸载有诸多好处. 在设置服务器,需要安装大量软件时,这种方式的优势尤为明显. 例如命令: yum install scim  就可以直接安装到scim ...

  3. 【转】【Centos】Centos下用upstart管理自己的服务程序

    Upstart是Ubuntu用来进行服务进程管理的服务,本文介绍如何利用upstart来通过Centos操作系统管理我们自己开发的应用程序. 什么时候要管理我们的应用程序?当我们开发出服务类的应用程序 ...

  4. CentOS 下的包管理工具RPM

    RPM Package Manager(RPM软件包管理器) RPM的常用参数: -i:install,安装, -e:erase,删除 -vh:显示安装进度 -v:verbose,详细显示处理的文件 ...

  5. linux 组群设置组群密码,Linux 组群账户管理

    一.Linux组群账户配置文件 1./etc/group文件 /etc/group文件是用户组群的配置文件,内容包括用户和用户组群,并且能显示出用户是归属哪个用户组群或哪几个用户组群.一个用户可以归属 ...

  6. CentOS下开启mysql远程连接,远程管理数据库

    当服务器没有运行php.没装phpmyadmin的时候,远程管理mysql就显得有必要了.因为在CentOS下设置的,所以标题加上了CentOS,以下的命令在debian等系统下应该也OK. mysq ...

  7. Centos下磁盘管理

    Centos下磁盘管理     1.磁盘分区格式说明 linux分区不同于windows,linux下硬盘设备名为(IDE硬盘为hdx(x为从a-d)因为IDE硬盘最多四个,SCSI,SATA,USB ...

  8. centos用户账户管理

    1.1 用户账户管理 加固项目名称 禁用默认账户 加固说明 及时删除多余的.过期的帐户,避免共享帐户的存在,因为多余的账户和默认账户容易导致恶意用户和非授权用户直接通过这些账户获取系统的访问权限.例如 ...

  9. CentOS下搭建测试WEB平台

    CentOS下搭建测试WEB平台 LAMP MYSQL 下载免编译的软件包 cd /usr/local/src wget http://mirrors.sohu.com/mysql/MySQL-5.1 ...

最新文章

  1. 推荐几个超NB的技术公号!
  2. rocket mq整体架构
  3. python提速qq邮箱邮件_python3通过qq邮箱发送邮件
  4. 我参与的一个项目的继续总结:牢骚篇
  5. 10个JavaScript代码片段,帮助你成为更好的开发者
  6. 使用 Kotlin Script 自定义实现项目开发脚手架
  7. java 应用编程接口_java 应用程序接口(api)是什么
  8. 如何编译运行C语言代码
  9. a标签下载pdf文档
  10. 我的Ubuntu计算机出现“黑屏”,何故?
  11. js判断上传文件为图片格式、excel格式
  12. 【原创】龙妈的善良和软件测试的关系
  13. 软件分析与测试研讨会,第四届Vector测试专题研讨会
  14. php fatal error解决,这是为什么 Fatal Error,该怎么解决
  15. 7-26 出生年 (15分)
  16. 6.4.1 借贷账户信息
  17. 【Unity3D】使用 FBX 格式的外部模型 ( 向 Unity 中添加 FBX 模型 | 向 Scene 场景中添加 FBX 模型 | 3D 物体渲染 | 3D 物体材质设置 )
  18. response的响应头,下载文件
  19. linux CST与EDT时区互转
  20. Trunk和Access分析

热门文章

  1. page fault in nonpaged area 蓝屏_由于错误的更新,安装Windows 10 KB4549951后蓝屏死机解决办法...
  2. python beautifulsoup抓取网页内容_利用Python和Beautiful Soup抓取网页内容
  3. python加密执行_如何在Python中执行PGP(生成密钥,加密/解密)
  4. 计算同比 环比_PowerBI学习教程(三)时间累积同比环比计算
  5. 一周一论文(翻译)——[VLDB 19] Minimizing Cost by Reducing Scaling Operators in Distributed Stream Processing
  6. tomcat war java_java – 启动Tomcat WAR
  7. wxpython 安装_下载和安装wxPython
  8. 这是Nginx的负载均衡配置方法
  9. w3wp进程发生死锁ISAPI aspnet
  10. php curl流方式远程下载大文件