《Linux用户管理和权限.ppt》由会员分享,可在线阅读,更多相关《Linux用户管理和权限.ppt(40页珍藏版)》请在三一办公上搜索。
1、Linux用户管理和权限管理,用户管理类命令,用户管理组管理密码管理用户信息查询,引 言,Linux系统是一个多用户的时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。每个用户账号都拥有一个惟一的用户名和各自的口令。用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。实现用户账号的管理,要完成的工作主要有如下几个方面:1.用户账号的添加、删除与修改。2.用户口令的管理。3.用户组
2、的管理。,/etc/passwd 用户信息文件,用户帐号管理,(1)/etc/passwd用户信息文件/etc/passwd文件是账号管理中最重要的一个文件,它是一个纯文本文件。每一个注册用户在该文件都有一个对应的记录行,这一记录行记录了此用户的必要信息。例1:显示/etc/passwd文件。#cat/etc/passwdroot:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:,从passwd文件中可以看到,第一行是root用户,紧接的是系统用户,普通用户通常在文件的尾部。passwd文件中的每一行由7个字段的数据组成,字段之间用“:”分隔,其格式如
3、下:root:x:0:0:root:/root:/bin/bash账号名称:密码:UID:GID:个人资料:主目录:Shell,说明如下:账号名称:用户登录Linux系统时使用的名称。密码:这里的密码是经过加密后的密码,而不是真正的密码,若为“x”,说明密码经过了shadow的保护。UID:用户的标识,是一个数值,Linux系统内部使用它来区分不同的用户。GID:用户所在组的标识,是一个数值,Linux系统内部使用它来区分不同的组,相同的组具有相同的GID。个人资料:可以记录用户的个人信息,如姓名、电话等信息(上例中test用户本项为空)。主目录:通常是/home/username,这里use
4、rname是用户名,用户执行“cd”命令时当前目录会切换到个人主目录。Shell:定义用户登录后使用的Shell,默认是bash。,/etc/passwd,用户UID,UID:用户独一无二的身份标识,(2)/etc/shadow 任何用户对passwd文件都有读的权限,虽然密码已经经过加密,但还是不能避免有人会获取加密后的密码。为了安全,Linux系统对密码提供了更多一层的保护,即把加密后的密码重定向到另一个文件/etc/shadow。密码如果经过shadow保护,在/etc/passwd文件中,每一记录行的密码字段会变成“x”,并且在/etc目录下存在文件shadow。只有超级用户能够读取s
5、hadow的内容。,/etc/shadow 密码文件,例2:查看shadow文件的内容。#cat/etc/shadowroot:12123:0:99999:7:bin:*:12123:0:99999:7:test:12123:0:99999:7:,和passwd文件类似,shadow文件中的每行由9个字段组成,格式如下:root:12123:0:99999:7:用户名:密码:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志字段 shadow文件中,密码字段为“*”表示用户被禁止登录,为“!”表示密码未设置,为“!”表示用户被锁定。,(3)pwconv和pwun
6、conv 安装Linux系统时,系统缺省采用shadow来保护密码。如果安装Linux时未启用shadow,可以使用pwconv命令启用shadow。注意用root用户登录来执行该命令,执行的结果是/etc/passwd文件中的密码字段被改为“x”,同时产生/etc/shadow文件。相反,如果要取消shadow功能,可使用pwunconv命令。,用户管理命令useradduserdelusermod,用户帐号管理,1添加用户账号超级用户root可以通过在系统提示符下运行useradd或adduser命令来创建用户 账号useradd:添加帐号Options:-u 指定用户的UID。-g 指定
7、用户的组,即默认的组-G 指定用户所属的其它组-d 指定用户宿主目录,即用户登录的起始目录-s 指定用户的shell环境-c 指定用户的别名,用户帐号管理,adduser zsPasswd,例:分析useradd 命令中选项的意义。#useradd u 550 g 100 d/home/user1 s/bin/bash e 08/02/06 user1其参数的意义如下:-u参数:设置用户的UID为550。-g参数:指定用户所属的用户组,但该用户组必须已经存在。参数采用组名或GID皆可,如-g 100与-g users的意思相同,都是把用户加入到users用户组中,其中users用户组的GID为
8、100。,-d参数:建立用户目录,如d/home/user1就是替用户建立位于/home目录下的用户目录,目录名称为user1。-s参数:指定用户环境,如s/bin/bash指定bash为该用户的Shell。当然也可指定其他Shell供用户使用。-e 参数:设置账号的期限,格式为“月/日/年”如e 08/02/06为2006年8月2日。,新用户信息文件/etc/skel例题:ls/etc/skel,2修改用户属性(1)passwd 命令功能:设置修改用户的密码属性。格式:passwd 用户名说明:修改用户的密码需要两次输入密码确认。密码是保证系统安全的一个重要措施,在设置密码时,不要使用过于简
9、单的密码。密码的长度应在8位或8位以上,由数字和英文组合而成。用户的密码也可以自己更改,这时使用不带用户名的passwd命令。#passwd,(2)chsh 命令功能:修改用户的Shell设置。格式:chsh 用户名 说明:如果用户的默认Shell不合适,可以把它改成任何已经加入到/etc/Shells文件中的Shell。使用chsh命令改变用户的Shell,指定的Shell一定要在/etc/Shells中存在,否则会导致用户无法登录。也可以使用下面要介绍的命令usermod来改变用户的Shell设置。,(3)usermod 命令功能:改变用户的属性。格式:usermod选项用户名参数选项:-
10、d dir:改变用户的主目录,如果同时使用“-m”选项,原来主目录的内容会移动到新的主目录。-g GID或组名:修改用户的所属基本组。-l name:更改账户的名称,必须在该用户未登录的情况下才能使用。-m:把主目录的所有内容移动到新的目录。,-p 密码:修改用户的密码。-s Shell:修改用户的登录Shell。-u UID:改变用户的UID为新的值,改变用户的UID时主目录下所有该用户所拥有的文件或子目录将自动更改UID,但对于主目录之外的文件和目录只能用chown命令手工进行设置。,例:修改user2的UID为新的值600、所属组为wyq。#usermod u 600 g wyq use
11、r2,3删除用户账号若不再允许用户登录系统时,可以将用户账号删除。使用userdel命令删除账号。命令格式为:userdel选项用户名参数选项:-r表示在删除账号的同时,将用户主目录及其内部文件同时删除。若不加选项-r,则表示只删除登录账号而保留相关目录。,4锁定用户账号在系统中,有时需要临时禁止某个用户账号登录而不删除。可以采用以下两种方式之一:1)使用passwd命令锁定用户账号。命令格式为:passwd-l用户名。例:锁定用户账号user1登录。#passwd-l user1 查看Linux系统中管理用户账号的系统文件etc/passwd,可看到其密码域的第一个字符前加了符号“!”(若系
12、统有密码保护则文件为etc/shadow,可参考)。,2)在etc/passwd文件中将该用户的passwd域的第一个字符前加一个号或号。恢复时,使用带“-u”参数的passwd命令。例:恢复user1用户账号登录。#passwd-u user1Changing password for user user1Unlocking password for user user1passwd:Success,用户组管理,Linux的组 Linux的组有私有组、系统组、标准组之分。建立账户时,若没有指定账户所属的组,系统会建立一个和用户名相同的组,这个组就是私有组,这个组只容纳了一个用户。而标准组可以
13、容纳多个用户,组中的用户都具有组所拥有的权利。系统组是Linux系统自动建立的。一个用户可以属于多个组,用户所属的组又有基本组和附加组之分。在用户所属组中的第一个组称为基本组,基本组在/etc/passwd文件中指定;其他组为附加组,附加组在/etc/group文件中指定。属于多个组的用户所拥有的权限是它所在的组的权限之和。,用户组管理,/etc/group 用户组文件,用户组管理,/etc/gshadow 用户组密码文件,Linux系统关于组的信息存放在文件/etc/group中。例:显示文件/etc/group内容。#cat/etc/grouproot:x:0:root,testbin:x
14、:1:root,bin,daemontest:x:500:group1:x:1000:user1:x:501:,group文件中的每一行记录了一个组的信息,每行包括4个字段,字段之间用“:”分隔。格式为组名:组的密码:GID:组成员。字段说明:组名:组的名称,如root、bin等。组的密码:设置加入组的密码,一般情况下不使用组密码,该字段通常没用。GID:组的标识符,为数值,类似UID。组成员:组所包含的用户,用户之间用“,”分隔。,5.3.2 用户组的添加、修改、删除,1添加组可以手工编辑/etc/group文件来完成组的添加,也可以用命令groupadd来添加组,命令格式:groupadd
15、 组名例:添加组group1。#groupadd group1,2修改组属性使用groupmod命令来修改组名或GID。在groupmod-g命令后加上组的新ID号和组名来修改GID。在groupmod-n命令后加上新组名和原组名来修改组名。,3删除组使用groupdel命令来删除组。格式:groupdel组名说明:组被删除后,应使用chown命令将被删除用户组的目录与文件变为它隶属的用户组。要改变组中的成员用户或改变组的密码使用gpasswd命令。格式:gpasswd参数用户名组名不带参数时,即修改组密码。参数选项:-a:将用户加入到组中。-d:将用户从组中删除。,例:将用户user1加入到组group1中。#gpasswd-a user1 group1例:将用户user1从组group1中删除。#gpasswd-d user1 group1,用户组管理命令groupaddgroupdelgroupmod,用户组管理,密码管理,密码管理命令passwdpasswd usernamepasswd-dpasswd Spasswd lpasswd-u,扩展命令,gpasswd a 用户名 组名gpasswd-d 用户名 组名pwunconv 取消屏蔽口令pwconv 启用屏蔽口令,