一、用户管理之配置文件的重要性

  在Linux系统中,用户账户的相关信息是存放在相关配置文件中。而Linux安全系统的核心是用户账号,用户对系统中各种对象的访问权限取决于他们登录系统时用的账户,并且Linux系统使用特定的配置文件和工具来跟踪和管理系统中的用户账户。

二、说说配置文件

  这里讲述的配置文件分为用户配置文件和用户组配置文件,比如/etc/passwd和/etc/shadow是用户配置文件,/etc/group和/etc/gshadow是用户组配置文件。

  (1)首当其冲要讲讲/etc/passwd文件,该文件位于/etc目录下。/etc/passwd是一个标准的文本文件,你可以用任何的文本编辑器修改该文件的内容。如果/etc/passwd文件出现损坏,系统就无法读取它的内容了,这样会导致用户无法正常登录,只用重装Linux系统解决了。/etc/passwd文件包含了一些与用户相关的信息,将用户的登录名匹配对应的UID值。UID即User ID,拥有创建权限的用户创建用户时会分配唯一的用户ID,UID是数值但在登录系统时用的不是UID,而是登录名。

  如2-1图所示,/etc/passwd文件的部分信息。每一行就是用户账户的相关信息,每一行包含7个字段的信息:

    第1个字段:用户名称,即登录名。

    第2个字段:密码标志。该字段都被设置成了x,并不是说所有的用户账户都用相同的密码,这只是一个密码标志而已,用户有无密码都会被设置成x。

    第3个字段:UID,即用户ID(User ID)。其中0用来标记超级用户,比如root用户,如果手动更改某一个用户的UID为0,那该用户也会拥有超级用户的权限。1-499这个范围用来标记系统用户,这些用户俗称伪用户是系统上运行的各种服务进程访问资源用的特殊账户,所有运行在后台的服务都需要用一个系统用户账户登录到Linux系统上。500-65535这个范围用户来标记普通用户,比如新创建的用户的UID值就会在这个范围内。

    第4个字段:GID,即用户组的ID(用户初始组的ID)。这里的用户组分为初始组和附加组,初始组就是指用户一登录就立刻拥有这个用户组的相关权限,每个用户的初始组只能有一个,一般就是与这个用户的用户名相同的组名作为这个用户的初始组。附加组就是指用户可以加入多个其他的用户组,并拥有这些组的权限,附加组可以有多个。

    第5个字段:用户说明,就是用户的相关描述。

    第6个字段:用户的HOME目录的位置。普通用户的HOME目录一般都是/home/用户名/这样的形式,root用户的HOME目录是/root/。

    第7个字段:登录之后的shell。

    

                                图 2-1

  (2)其次是/etc/shadow文件位于/etc目录下,该文件是保存密码相关信息。只有root用户才能访问这个文件,如果root用户编辑了该文件,有可能被更改的用户就登录不上。使用shadow密码系统后,Linux系统可以更好地控制用户密码。它可以控制用户多久更改一次密码,以及什么时候禁用该用户,如果密码未更新的话。

  如图2-2所示,在/etc/shadow文件中,系统为每个用户都保存了一条记录,每条记录都有9个字段:

    第1个字段:用户名,即登录名。

    第2个字段:加密之后的密码,使用SHA512散列加密算法进行加密。如果密码字段位是"!!"或"*"代表没有密码,不能登录。

    第3个字段:密码最后一次的修改日期(天数表示),使用1970年1月1日作为标准时间,每过一天时间戳加1。

    第4个字段:两次密码的修改时间间隔(和第3个字段相比)。

    第5个字段:密码有效期(和第3个字段相比)。

    第6个字段:密码到期前的警告天数(和第5个字段相比)。

    第7个字段:密码到期后多少天禁用用户。

    第8个字段:用户被禁用的日期(用天数表示),使用1970年1月1日作为标准时间,每过一天时间加1。

    第9个字段:预留字段给将来使用。

    

                                 图 2-2

  (3)用户组的配置我就不细说了,跟用户的配置文件大同小异。接下来说说用户模板目录/etc/skel/,用户模板目录是作为创建新用户HOME目录的模板。这样就能自动在每个新用户的HOME目录放置默认的系统文件。

Linux 用户篇——用户管理的配置文件的更多相关文章

  1. Linux 用户篇——用户管理命令之id、whoami、su、chage

    一.浅谈id.whoami.su.chage 本篇是续写上一篇<Linux 用户篇——用户管理命令之useradd.passwd.userdel.usermod>. (1)id命令 命令格 ...

  2. Linux 用户篇——用户管理命令之useradd、passwd、userdel、usermod

    一.用户重要,用户管理命令同样重要 用户是Linux系统安全的核心,每个登录Linux系统的用户都会分配相应的权限,这些权限取决于能否访问系统中各种对象.而管理这些用户的相关信息离不开用户管理命令,比 ...

  3. linux基础之用户和组管理及权限

    一.用户和组管理 相关配置文件 /etc/passwd: 用户名 : 密码占位符 : UID : GID : COMMENTS : 家目录 :默认shell /etc/group: 组名 : 组密码占 ...

  4. Linux系列教程(十四)——Linux用户和用户组管理之相关配置文件

    前面我们介绍了软件包管理.首先介绍了rpm包的相关命令,但是我们发现直接安装rpm包会被其依赖性折磨的不行,然后解决办法是yum在线管理,通过yum命令安装rpm包能自动帮助我们解决依赖性.最后又介绍 ...

  5. linux【第六篇】用户和用户管理及定时任务复习

    定时任务复习 1.什么是定时任务? 2.如何编辑查看定时任务(配置文件位置?),语法的特殊字符意义是什么?- * , / 3.书写定时任务有哪些要领? 4.生产如何调试定时任务 5.生产场景配置定时任 ...

  6. java程序员菜鸟进阶(十五)linux基础入门(三)linux用户和组管理

    我们大家都知道,要登录linux操作系统,我们必须要有一个用户名和密码.每一个用户都由一个惟一的身份来标识,这个标识叫做用户ID.系统中的每一个用户也至少需要属于一个"用户分组". ...

  7. Linux操作系统常用命令合集——第二篇- 用户和组操作(15个命令)

    一.前言:本篇介绍用户和组操作的15个命令,在介绍之前我们先来看看几个示例 1.先进入到etc目录下,找到passwd文件,用vi编辑器查看: # vi /etc/passwd 解释:这里面存放着Li ...

  8. Linux学习--4.用户和组的管理

    用户和组的管理 前言 本篇文章主要讲Linux系统下用户和组的概念,还有添加用户和组,修改用户和组的基本操作,会涉及不少与之相关的配置文件与命令的介绍,几乎所有 正文 首先,简单提下概念,用户是操作系 ...

  9. linux 用户创建、管理、权限分配

    (1)su与sudo su:通过su可以在用户之间切换,如果超级权限用户root向普通或虚拟用户切换不需要密码,什么是权力?这就是!而普通用户切换到其它任何用户都需要密码验证: sudo: sudo扮 ...

随机推荐

  1. 代码收藏系列--javascript--日期函数

    /** * 获取当前时间的简短函数 * @returns {String} * @@example getTimeStamp() 结果是:2017-07-12 09:21:30 */ function ...

  2. 【乱搞】【CF1095E】 Almost Regular Bracket Sequence

    Description 给定一个长度为 \(n\) 的小括号序列,求有多少个位置满足将这个位置的括号方向反过来后使得新序列是一个合法的括号序列.即在任意一个位置前缀左括号的个数不少于前缀右括号的个数, ...

  3. Java配置jdk图文教程

    1.计算机 ==>右键属性 2.高级系统设置 3.环境变量 4.找path变量 5.找到jdk的bin目录并复制路径到path环境变量里(jdk5.0以后就可以只配path路径了). 6.pat ...

  4. 图像处理之直方图均衡化及C源码实现

    1 直方图均衡化(Histogram Equalization)简介 图像对比度增强的方法可以分成两类:一类是直接对比度增强方法;另一类是间接对比度增强方法.直方图拉伸和直方图均衡化是两种最常见的间接 ...

  5. lightoj 1148 Mad Counting(数学水题)

    lightoj 1148 Mad Counting 链接:http://lightoj.com/volume_showproblem.php?problem=1148 题意:民意调查,每一名公民都有盟 ...

  6. 免密码登录服务器python脚本

    在自动化运维平台没有做完之前,常需要登录服务器做很多维护操作,每次找好长好长的密码,那么多服务器,你会疯掉的,所以瞎搞了以下脚本.先解一下燃眉之急,哈哈 cat login_root.exp #!/u ...

  7. 【CodeForces】913 F. Strongly Connected Tournament 概率和期望DP

    [题目]F. Strongly Connected Tournament [题意]给定n个点(游戏者),每轮游戏进行下列操作: 1.每对游戏者i和j(i<j)进行一场游戏,有p的概率i赢j(反之 ...

  8. Python作业选课系统(第六周)

    作业需求: 角色:学校.学员.课程.讲师.完成下面的要求 1. 创建北京.上海 2 所学校 2. 创建linux , python , go 3个课程 , linux\py 在北京开, go 在上海开 ...

  9. 图片轮播器——jquery插件

    下载:http://files.cnblogs.com/files/wordblog/jiaoben828.rar

  10. ruby post json

    require 'net/http' require 'json' uri = URI('http://localhost/test1.php') req = Net::HTTP::Post.new ...