您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 模块1linux入门--1.3-Linux用户及组管理.
NetworkOptimizationExpertTeam模块1LINUX入门1.3LINUX用户及组管理主讲人:钱乾NetworkOptimizationExpertTeam1.3Linux用户及组管理•确保Linux系统自身的安全和稳定,必须建立一种秩序,使每个用户的权限都能得到规范。为了区分不同的用户,就产生了用户账户。Linux系统正是通过账户来实现对用户的访问进行控制的。这样每个用户有唯一的身份标识,这个标识叫做用户ID(UserIDUID)。系统中每个用户都属于一个或者多个用户组,用户组是一些具有相同特性的用户的集合。只要给一个用户组授予某一权限,组中的所有用户就都拥有了相同的权限,可以大大减轻系统管理员的工作负担,用户组也有唯一的身份标识,这个标识就做组ID(GroupIDGID)。要管理Linux主机的用户,首先要了解Linux到底是怎么样识别每一个用户的。NetworkOptimizationExpertTeam1.3.1Linux用户及组管理方式•一、理解Linux多用户,多任务的特性–Linux是一个真实的、完整的多用户多任务操作系统,多用户多任务就是可以在系统上建立多个用户,而多个用户可以在同一时间内登录同一个系统执行各自不同的任务,而互不影响,例如某台Linux服务器上有4个用户,分别是root、、ftp和mysql,在同一时间内,root用户可能在查看系统日志,管理维护系统,用户可能在修改自己的网页程序,ftp用户可能在上传文件到服务器,mysql用户可能在执行自己的SQL查询,每个用户互不干扰,有条不紊的进行着自己的工作,而每个用户之间不能越权访问,比如查询操作,ftp用户也不能修改用户的网页程序,因此可知,不同用户具有不同的权限,每个用户是在权限允许的范围内完成不同的任务,Linux正是通过这种权限的划分与管理,实现了多用户多任务的运行机制。NetworkOptimizationExpertTeam1.3.1Linux用户及组管理方式二、Linux下用户的角色分类–在Linux下用户是根据角色定义的,具体分为三种角色:–超级用户:拥有对系统的最高管理权限,默认是root用户。–普通用户:只能对自己目录下的文件进行访问和修改,具有登录系统的权限,例如上面提到的用户、ftp用户等。–虚拟用户:也叫“伪”用户,这类用户最大的特点是不能登录系统,它们的存在主要是方便系统管理,满足相应的系统进程对文件属主的要求。例如系统默认的bin、adm、nobody用户等,一般运行的web服务,默认就是使用的nobody用户,但是nobody用户是不能登录系统的。NetworkOptimizationExpertTeam1.3.1Linux用户及组管理方式三、用户和组的概念–我们知道,Linux是一个多用户多任务的分时操作系统,如果要使用系统资源,就必须向系统管理员申请一个账户,然后通过这个账户进入系统。这个账户和用户是一个概念,通过建立不同属性的用户,一方面,可以合理的利用和控制系统资源,另一方面也可以帮助用户组织文件,提供对用户文件的安全性保护。–每个用户都用一个唯一的用户名和用户口令,在登录系统时,只有正确输入了用户名和密码,才能进入系统和自己的主目录。–用户组是具有相同特征用户的逻辑集合,有时我们需要让多个用户具有相同的权限,比如查看、修改某一个文件的权限,一种方法是分别对多个用户进行文件访问授权,如果有10个用户的话,就需要授权10次,显然这种方法不太合理;另一种方法是建立一个组,让这个组具有查看、修改此文件的权限,然后将所有需要访问此文件的用户放入这个组中,那么所有用户就具有了和组一样的权限。这就是用户组,将用户分组是Linux系统中对用户进行管理及控制访问权限的一种手段,通过定义用户组,在很大程度上简化了管理工作。NetworkOptimizationExpertTeam1.3.1Linux用户及组管理方式四、用户和组的关系用户和用户组的对应关系有:一对一、一对多、多对一和多对多;下图2-1展示了这种关系:–图2-1用户与用户组关系–一对一:即一个用户可以存在一个组中,也可以是组中的唯一成员。–一对多:即一个用户可以存在多个用户组中。那么此用户具有多个组的共同权限。–多对一:多个用户可以存在一个组中,这些用户具有和组相同的权限。–多对多:多个用户可以存在多个组中。其实就是上面三个对应关系的扩展。NetworkOptimizationExpertTeam1.3.2Linux用户及组的相关配置文件–谈到用户,就不得不谈用户管理,用户配置文件,以及用户查询和管理的控制工具;用户管理主要通过修改用户配置文件完成;用户管理控制工具最终目的也是为了修改用户配置文件–什么是用户查询和管理控制工具呢?用户查询和控制工具是查询、添加、修改和删除用户等系统管理工具,比如查询用户的id和finger命令,添加用户的useradd或adduser命令、删除用户的userdel命令、设置密码的passwd命令、修改用户usermod命令等等;我们需要知道的是通过用户查询和控制工具所进行的动作的最终目的也是修改用户配置文件;所以我们进行用户管理的时候,直接修改用户配置文件一样可以达到用户管理的目的–通过上面的解说,我们能实实在在的感觉到用户(User)配置文件的重要性;其实用户和用户组在系统管理中是不可分割的,但为了说明问题,我们还是得把用户(User)的配置文件单列出来解说,其中包括/etc/passwd和/etc/shadow文件;在这之中,你还能了解UID的重要性NetworkOptimizationExpertTeam1.3.2Linux用户及组的相关配置文件•一、用户相关的配置文件–(1)/etc/passwd文件–系统用户配置文件,是用户管理中最重要的一个文件。这个文件记录了Linux系统中每个用户的一些基本属性,并且对所有用户可读。需要特别注意的是,里边很多用户本来就是系统中必须要的,称为系统用户。例如bin、deamon、adm和nobody,这些用户是系统必要的用户,请不要随意删除。这个文件的结构:–root:x:0:0:root:/root:/bin/bash–bin:x:1:1:bin:/bin:/sbin/nologin–daemon:x:2:2:daemon:/sbin:/sbin/nologin–adm:x:3:4:adm:/var/adm:/sbin/nologin–lp:x:4:7:lp:/var/spool/lpd:/sbin/nologinNetworkOptimizationExpertTeam1.3.2Linux用户及组的相关配置文件/etc/passwd中每一行记录对应一个用户,每行记录又被冒号分割,其格式和具体含义如下:用户名:密码:用户标识号:组标识号:注释性描述:主目录:默认shell下面是每个字段的详细含义:用户名:对应UID,是代表用户账号的字符串,例如root就是系统默认的管理员的用户名称。密码:存放着加密后的用户口令,虽然这个字段存放的只是用户口令的加密串,不是明文,但是由于/etc/passwd文件对所有用户都可读,所以这仍是一个安全隐患。因此,现在许多Linux版本都使用了shadow技术,把真正加密后的用户口令存放到/etc/shadow文件中,而在/etc/passwd文件的口令字段中只存放一个特殊的字符,例如用“x”或者“*”来表示。NetworkOptimizationExpertTeam2.3.2用户配置文件概述用户标识号:就是用户的UID,每个用户都有一个UID,并且是唯一的,通常UID号的取值范围是0~65535,0是超级用户root的标识号,1~99由系统保留,作为管理账号,普通用户的标识号从100开始。而在Linux系统中,普通用户UID默认从500开始。UID是Linux下确认用户权限的标志,用户的角色和权限都是通过UID来实现的,因此多个用户公用一个UID是非常危险的,会造成系统权限和管理的混乱,例如将普通用户的UID设置为0后,这个普通用户就具有了root用户的权限,这是极度危险的操作。因此要尽量保持用户UID的唯一性。组标识号:就是组的GID,与用户的UID类似,这个字段记录了用户所属的用户组。它对应着/etc/group文件中的一条记录,其实/etc/group的概念与/etc/passwd差不多,只是用它来规范用户组。NetworkOptimizationExpertTeam2.3.2用户配置文件概述注释性描述:字段是对用户的描述信息,比如用户的住址、电话、姓名等等,这个字段没有什么重要用途,只是用来解释这个用户的意义而已,但是提供使用finger功能时,这个字段可以提供更多的信息。主目录:也就是用户登录到系统之后默认所处的目录,也可以叫做用户的主目录、家目录、根目录等等,以上面为例,root的家目录在/root,当root登录之后,就会立刻进入到/root目录里。如果某个用户的使用空间特别大,想要将该用户的家目录移到其它地方,可以在这里修改。默认的用户家目录在/home/yourIDname。NetworkOptimizationExpertTeam1.3.2Linux用户及组的相关配置文件默认shell:就是用户登录系统后默认使用的命令解释器,shell是用户和Linux内核之间的接口,用户所作的任何操作,都是通过shell传递给系统内核的。Linux下常用的shell有sh、bash、csh等,管理员可以根据用户的习惯,为每个用户设置不同的shell。NetworkOptimizationExpertTeam1.3.2Linux用户及组的相关配置文件(2)/etc/shadow文件用户影子文件,由于/etc/passwd文件是所有用户都可读的,这样就导致了用户的密码容易出现泄露,因此,Linux将用户的密码信息从/etc/passwd中分离出来,单独的放到了一个文件中,这个文件就是/etc/shadow,该文件只有root用户拥有读权限,从而保证了用户密码的安全性。–下面介绍下/etc/shadow文件内容的格式:–用户名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:保留字段–/etc/shadow文件的结构:–[root@localhost~]#more/etc/shadow–root:$1$PuvoXSGo$ocje6AGMN9xXQyZUl7pnj0:15099:0:99999:7:::–bin:*:15099:0:99999:7:::–daemon:*:15099:0:99999:7:::–adm:*:15099:0:99999:7:::NetworkOptimizationExpertTeam1.3.2Linux用户及组的相关配置文件–解释下每个字段的详细含义:–用户名:由于密码也要与用户名对应。因此,这个文件的第一栏就是用户名,必须要与/etc/passwd相同。–加密口令:这才是真正的密码,而且经过编码后的密码。你只会看到一些特殊符号的字母。需要特别注意的是,虽然这些加密过的密码很难破解,但“很难”不等于“不能”,所以,这个文件的默认属性是“-rw-------”或者是“-r--------”,即只有root才可以读写。随时注意,不要更改这个文件的属性。另外,如果密码栏的第一个字符为*或者是!,标识这个用户不会用来登录。如果某一用户不规范操作,可以在这个文件中将该用户的密码字段前加*或者是!,该用户将无法登录系统。NetworkOptimizationExpertTeam1.3.2Linux用户及组的相关配置文件–最后一次修改密码时间:表示从某个时间起,到用户最近一次修改口令的间隔天数。计算Linux系统日期的时间是1970年1月1日作为1开始,这个日期是累加的,自己可以通过passwd来修改用
本文标题:模块1linux入门--1.3-Linux用户及组管理.
链接地址:https://www.777doc.com/doc-5093975 .html