《第08节Linux账户管理和权限管理》由会员分享,可在线阅读,更多相关《第08节Linux账户管理和权限管理(58页珍藏版)》请在金锄头文库上搜索。
1、LinuxLinux基础基础Linux账户管理和权限管理账户管理和权限管理第六 节教学目的和要求教学目的和要求 理解账户实质理解账户实质熟悉账户配置文件熟悉账户配置文件学会设置和管理口令学会设置和管理口令理解理解Linux系统的权限系统的权限学会设置基本操作权限学会设置基本操作权限了解特殊权限的使用了解特殊权限的使用第六 节重点内容重点内容 账户实质账户实质账户文件账户文件账户设置账户设置权限表示权限表示权限设置权限设置第六 节账户概述账户概述什么是用户账户什么是用户账户n像像Linux这样的多任务多用户系统,往往是这样的多任务多用户系统,往往是一台计算机被多个人同时使用,因此每个一台计算机被
2、多个人同时使用,因此每个用户都有一个惟一的用于登录的用户名以用户都有一个惟一的用于登录的用户名以示区分。示区分。n然而,对于用户来说除了名字还有许多其然而,对于用户来说除了名字还有许多其他特性。一个账户他特性。一个账户(account)则用来指定属则用来指定属于一个用户的所有文件、资源以及信息。于一个用户的所有文件、资源以及信息。第六 节账户概述账户概述账户实质账户实质n账户实质上就是一个用户在系统上的账户实质上就是一个用户在系统上的标识,系统依据账户来区分每个用户标识,系统依据账户来区分每个用户的的文件、文件、进程、任务进程、任务,给每个用户提,给每个用户提供特定的工作环境(如用户的工作目供
3、特定的工作环境(如用户的工作目录、录、shell版本、版本、以及以及X-Windows环环境的配置等),使每个用户的工作都境的配置等),使每个用户的工作都能能独立不受干扰地独立不受干扰地进行。进行。第六 节账户概述账户概述Linux中的账户包括中的账户包括用户账户用户账户n超级用户:超级用户:UID=0,GID=0n普通用户:普通用户:UID=500n伪用户:伪用户:0UID500组账户组账户n标准组标准组:标准组可以容纳多个用户,若使用标准组,:标准组可以容纳多个用户,若使用标准组,在创建一个新的用户时就应该指定他所属于的组。在创建一个新的用户时就应该指定他所属于的组。n私有组私有组:私有组
4、中只有用户自己。当在创建一个新:私有组中只有用户自己。当在创建一个新用户用户user时,时,若没有指定他所属于的组,若没有指定他所属于的组,RedHat就建立一个和该用户同名的私有组。就建立一个和该用户同名的私有组。第六 节账户概述账户概述用户和组的关系用户和组的关系n组是用户的集合组是用户的集合。一个标准组可以容。一个标准组可以容纳多个用户。纳多个用户。n同一个用户可以同属于多个组同一个用户可以同属于多个组,这些,这些组可以是私有组,也可以是标准组。组可以是私有组,也可以是标准组。n当一个用户同属于多个组时,将这些当一个用户同属于多个组时,将这些组分为:组分为:n主组:用户登录系统时的组。主
5、组:用户登录系统时的组。n附加组:可切换的其他组。附加组:可切换的其他组。第六 节系统账户文件系统账户文件用户口令文件用户口令文件/etc/passwdn文件权限:文件权限:(-rw-r-r-)用户影子口令文件用户影子口令文件/etc/shadown文件权限:文件权限:(-r-)组账号文件组账号文件/etc/groupn文件权限:文件权限:(-rw-r-r-)组口令文件组口令文件/etc/gshadown文件权限:文件权限:(-r-)第六 节Red Hat 的账户管理的账户管理默认启用默认启用shadowpasswords功能。功能。/etc/passwd文件对任何用户均可读,文件对任何用户均
6、可读,为了增加系统的安全性,为了增加系统的安全性,用户的口令通常用用户的口令通常用shadowpasswords保护。保护。经过经过shadowpasswords保护的账户密码和相关设保护的账户密码和相关设置信息保存在置信息保存在/etc/shadow文件里。文件里。/etc/shadow只对只对root用户可读。用户可读。默认使用默认使用MD5算法的用户口令。算法的用户口令。一般不设置组口令。因为绝大多数应用程序不使用一般不设置组口令。因为绝大多数应用程序不使用组口令组口令第六 节Red Hat 的账户管理的账户管理RedHat建议尽量使用建议尽量使用私有组私有组来提高系统来提高系统安全性。
7、安全性。RedHat不建议管理员直接编辑修改系统不建议管理员直接编辑修改系统账户文件来维护账户。若用户直接编辑了账账户文件来维护账户。若用户直接编辑了账户文件,户文件,建议使用账号文件的一致性检测建议使用账号文件的一致性检测命令。命令。npwck命令命令:检测文件:检测文件“/etc/passwd”和和“/etc/shadow”的每行中字段的格式和值是否的每行中字段的格式和值是否正确。正确。ngrpck命令命令:检测文件:检测文件“/etc/group”和和“/etc/gshadow”的每行中字段的格式和值是否的每行中字段的格式和值是否正确。正确。第六 节与账户管理相关的其他文件或目录与账户管
8、理相关的其他文件或目录在在Linux系统中有几个用来设置新账户的文件、配系统中有几个用来设置新账户的文件、配置文件和子目录,例如,置文件和子目录,例如,etc/skel子目录里就保存子目录里就保存着新用户的初始化文件,新用户的登录子目录被放着新用户的初始化文件,新用户的登录子目录被放在在/home子目录中,下面是一个路径名列表。子目录中,下面是一个路径名列表。n/home用户自己的登录子目录所在的位置。用户自己的登录子目录所在的位置。n/etc/skel为登录为登录shell保存默认的初始化文件,保存默认的初始化文件,如如.bash-pro等。等。n/etc/shells保存登录保存登录she
9、ll,如,如BASH和和TCSH等。等。n/etc/passwd为用户保存它的口令。为用户保存它的口令。n/etc/group保存用户所属的用户组信息。保存用户所属的用户组信息。n可以手工修改这些文件和子目录来设置一个新账可以手工修改这些文件和子目录来设置一个新账户。户。第六 节使用命令行工具添加用户账号使用命令行工具添加用户账号命令格式:命令格式:#useradd常用选项:常用选项:n-ggroup:指定新用户的主组。:指定新用户的主组。n-Ggroup:指定新用户的附加组。:指定新用户的附加组。n-ddirectory:指定新用户的自家目录。:指定新用户的自家目录。n-sshell:指定新
10、用户使用的:指定新用户使用的Shell,默认为,默认为bash。n-eexpire:指定用户的登录失效时间,例如:指定用户的登录失效时间,例如:08/31/2006n-M:不建立新用户的自家目录。:不建立新用户的自家目录。第六 节使用命令行工具添加用户账号使用命令行工具添加用户账号操作举例:操作举例:#useradduser1#useradd-s/bin/tcshjason#useradd-gmygroup-e12/31/2006user2#useradd-Gstafftom#useradd-G-d/var/ftp2-s/sbin/nologin-Manftp1第六 节口令设置口令设置使用使用
11、useradd命令创建用户账户之后需要使用命令创建用户账户之后需要使用passwd命令设置初始口令命令设置初始口令格式:格式:#passwd举例:举例:为指定用户设置口令为指定用户设置口令#passwdjason修改用户自己的口令修改用户自己的口令$passwd第六 节使用命令行工具修改用户账号使用命令行工具修改用户账号命令格式:命令格式:#usermod常用选项:选项与常用选项:选项与useradd命令基本相同。命令基本相同。操作举例:操作举例:n#usermod-luser2user1n#usermod-Gsoftgroupjjhn#usermod-Luser1n#usermod-Uuse
12、r1第六 节使用命令行工具删除用户账号使用命令行工具删除用户账号命令格式:命令格式:#userdel常用选项:常用选项:-r用于删除用户的宿主目录用于删除用户的宿主目录n操作举例:操作举例:#userdeluser2n#userdel-ruser1第六 节使用命令行工具添加组账号使用命令行工具添加组账号命令格式:命令格式:#groupadd常用选项:常用选项:n-r:用于创建系统组账号(:用于创建系统组账号(GID小于小于500)n-g:用于指定:用于指定GID操作举例:操作举例:n#groupaddmygroupn#groupadd-rsysgroupn#groupadd-g888group
13、2第六 节使用命令行工具修改组账号使用命令行工具修改组账号格式:格式:#groupmod常用选项:常用选项:n-g:改变组账号的:改变组账号的GID,组账号名保持不变。,组账号名保持不变。n-n:改变组账号名。:改变组账号名。操作举例:操作举例:n#groupmod-g503mygroupn#groupmod-nnewgroupmygroup第六 节使用命令行工具删除组账号使用命令行工具删除组账号命令格式:命令格式:#groupdel注意事项:注意事项:n被删除的组账号必须存在被删除的组账号必须存在n当有用户使用组账号作为私有组时不能删当有用户使用组账号作为私有组时不能删除除n与用户名同名的私
14、有组账号在使用与用户名同名的私有组账号在使用userdel命令删除用户时被同时删除命令删除用户时被同时删除操作举例:操作举例:n#groupdelmygroup第六 节口令管理口令管理禁用用户账户口令禁用用户账户口令n#passwd-l查看用户账户口令状态查看用户账户口令状态n#passwd-S恢复用户账户口令恢复用户账户口令n#passwd-u删除用户账户口令删除用户账户口令n#passwd-d第六 节口令时效口令时效口令时效简介口令时效简介n口令时效是系统管理员用来防止机构内不口令时效是系统管理员用来防止机构内不良口令的一种技术。良口令的一种技术。n口令时效意味着过了一段预先设定的时间口令
15、时效意味着过了一段预先设定的时间后(通常是后(通常是90天),天),用户会被提示创建一用户会被提示创建一个新口令。个新口令。n强制用户在一段时间之后更改口令的机制强制用户在一段时间之后更改口令的机制称为口令时效。称为口令时效。chage命令命令n命令格式:命令格式:#chage第六 节口令时效口令时效Change命令常用选项:命令常用选项:n-mdays:指定用户必须改变口令所间隔的最少天数。如果值为:指定用户必须改变口令所间隔的最少天数。如果值为0,口令就不会过期。,口令就不会过期。n-Mdays:指定口令有效的最多天数。:指定口令有效的最多天数。当该选项指定的天数加当该选项指定的天数加上上
16、-d选项指定的天数小于当前的日期,用户在使用该账号前就选项指定的天数小于当前的日期,用户在使用该账号前就必须改变口令。必须改变口令。n-ddays:指定自从:指定自从1970年年1月月1日起,口令被改变的天数。日起,口令被改变的天数。n-Idays:指定口令过期后,账号被锁前不活跃的天数。:指定口令过期后,账号被锁前不活跃的天数。如果值如果值为为0,账号在口令过期后就不会被锁。,账号在口令过期后就不会被锁。n-Edate:指定账号被锁的日期,日期格式为:指定账号被锁的日期,日期格式为YYYY-MM-DD。若不用日期,也可以使用自若不用日期,也可以使用自1970年年1月月1日后经过的天数。日后经
17、过的天数。n-Wdays:指定口令过期前要警告用户的天数。:指定口令过期前要警告用户的天数。n-l:列出指定用户当前的口令时效信息,以确定账号何时过期。:列出指定用户当前的口令时效信息,以确定账号何时过期。第六 节口令时效口令时效操作举例:操作举例:n用户用户user1两天内不能更改口令,两天内不能更改口令,并且口令最长的存活期为并且口令最长的存活期为30天,天,并在口令过期前并在口令过期前5天通知天通知user1。n#chage-m2-M30-W5user1n查看用户查看用户user1当前的口令时效信当前的口令时效信息。息。n#chage-luser1第六 节用户管理器配置用户管理器配置如果
18、用户更喜欢使用图形化界面,可使如果用户更喜欢使用图形化界面,可使用用户管理器来配置用户和组。用用户管理器来配置用户和组。用户管理器允许查看、修改、添加和删用户管理器允许查看、修改、添加和删除本地用户和组,如图所示。除本地用户和组,如图所示。图图 Red Hat Red Hat用户管理器用户管理器第六 节添加新用户添加新用户 要添加新用户,在用户要添加新用户,在用户管理器中单击【添加用管理器中单击【添加用户】图标按钮。一个如户】图标按钮。一个如图图所示创建新用户的对所示创建新用户的对话框就会出现。在适当话框就会出现。在适当的文本框内输入新用户的文本框内输入新用户的用户名和全称。在【的用户名和全称
19、。在【口令】和【确认口令】口令】和【确认口令】文本框内输入口令。口文本框内输入口令。口令必须至少有令必须至少有6个字符。个字符。图图 创建新用户创建新用户 第六 节添加新用户添加新用户选择一个登录选择一个登录shell。如果不能确定应。如果不能确定应该选择哪一个该选择哪一个shell,就接受默认的,就接受默认的/bin/bash。默认的主目录是。默认的主目录是/home/用用户名。可以改变为用户创建的主目录,户名。可以改变为用户创建的主目录,或者通过取消已选中的【创建主目录】或者通过取消已选中的【创建主目录】复选框来不为用户创建主目录。复选框来不为用户创建主目录。第六 节修改用户属性修改用户属
20、性 要查看某个现存用户的属性,单击图中的【要查看某个现存用户的属性,单击图中的【用户】标签,从用户列表中选择该用户,然用户】标签,从用户列表中选择该用户,然后单击【属性】图标按钮,或者从菜单栏选后单击【属性】图标按钮,或者从菜单栏选择【文件】择【文件】|【属性】命令,一个类似图的对【属性】命令,一个类似图的对话框就会出现。话框就会出现。图图 用户属性用户属性第六 节修改用户属性修改用户属性【用户属性】对话框有【用户属性】对话框有4 4个选项卡,其功能如下。个选项卡,其功能如下。n【用户数据】:显示在添加用户时配置的基本用户【用户数据】:显示在添加用户时配置的基本用户信息。使用这个选项卡来改变用
21、户全称、口令、主信息。使用这个选项卡来改变用户全称、口令、主目录或登录目录或登录 shell shell。n【账号信息】:如果想让账号到达某一固定日期时【账号信息】:如果想让账号到达某一固定日期时过期,选中【启动账户过期】复选框。在提供的文过期,选中【启动账户过期】复选框。在提供的文本框内输入日期。选中【用户账号已被锁】复选框本框内输入日期。选中【用户账号已被锁】复选框来锁住用户账号,从而使用户无法在系统登录。来锁住用户账号,从而使用户无法在系统登录。n【口令信息】:这个选项卡显示了用户口令最后一【口令信息】:这个选项卡显示了用户口令最后一次被改变的日期。要强制用户在一定天数之后改变次被改变的
22、日期。要强制用户在一定天数之后改变口令,选中【启动账户过期】复选框。还可以设置口令,选中【启动账户过期】复选框。还可以设置允许用户改变口令之前要经过的天数,用户被警告允许用户改变口令之前要经过的天数,用户被警告改变口令之前要经过的天数,以及账号变为不活动改变口令之前要经过的天数,以及账号变为不活动之前要经过的天数。之前要经过的天数。n【组群】:选择想让用户加入的组以及用户的主要【组群】:选择想让用户加入的组以及用户的主要组。组。 第六 节添加新组添加新组 要添加新用户组,单击【添加组群】图标按要添加新用户组,单击【添加组群】图标按钮。一个类似图的创建新组群窗口就会出现。钮。一个类似图的创建新组
23、群窗口就会出现。输入新组的名称来创建。要为新组指定组输入新组的名称来创建。要为新组指定组ID,选中【手工指定组群,选中【手工指定组群ID】复选框,然后选】复选框,然后选择择GID的数值。的数值。RedHatLinux把把低于低于500的组的组ID保留给系统组。保留给系统组。单击【确定】按钮来创建单击【确定】按钮来创建组。新组就会出现在组列组。新组就会出现在组列表中。表中。图图 创建新组创建新组第六 节修改组属性修改组属性 要查看某一现存组的属性,从要查看某一现存组的属性,从组列表中选择该组,组列表中选择该组,然后在然后在按钮菜单中单击【属性】图标按钮菜单中单击【属性】图标按钮,或选择用户管理器
24、菜单按钮,或选择用户管理器菜单【文件】【文件】|【属性】命令。一【属性】命令。一个类似图的组属性对话框就会个类似图的组属性对话框就会出现。出现。【组群用户】选项卡显示了哪【组群用户】选项卡显示了哪些用户是组的成员。选择其他些用户是组的成员。选择其他用户把他们加入到组中,或取用户把他们加入到组中,或取消选择用户把他们从组中移除。消选择用户把他们从组中移除。单击【确定】按钮来修改该组单击【确定】按钮来修改该组中的用户。中的用户。图图 组属性组属性第六 节成批添加用户账户成批添加用户账户创建脚本创建脚本addusers,内容为:,内容为:n#!/bin/bashecho-nGivemethename
25、oftheuserdata.readfile1!-f$file&(echo$filedoesnotexist.;exit1)whilereadusername2douseradd$username/dev/null2&13if$?-ne0thenechoFailtocreateanaccountwithname=$username.elseechoredhat|passwd-stdin$username/dev/null2&14fidone$file第六 节成批添加用户账户成批添加用户账户创建用户名数据文件创建用户名数据文件users,内容为:,内容为:nuser101user102user1
26、03user104执行脚本创建多个用户执行脚本创建多个用户n#bashaddusersGivemethenameoftheuserdata.users5第六 节常用的用户和组状态命令常用的用户和组状态命令whoami:用于显示当前用户的名称。:用于显示当前用户的名称。groups:用于显示指定用户所属的组,用于显示指定用户所属的组,如未指定用户则显示当前用户所属的组。如未指定用户则显示当前用户所属的组。id:用于显示用户当前的:用于显示用户当前的uid、gid和用户所属的组列和用户所属的组列表。表。su-:用于转换当前用户到指定的用户用于转换当前用户到指定的用户账号,若不指定用户名则转换当前用
27、户到账号,若不指定用户名则转换当前用户到root。若使若使用参数用参数“-”则在转换当前用户的同时转换用户工作环境。则在转换当前用户的同时转换用户工作环境。newgrp:用于转换用户的当前组到指定的用于转换用户的当前组到指定的附加组,用户必须属于该组才可以进行。附加组,用户必须属于该组才可以进行。第六 节操作权限概述操作权限概述Linux是多用户的操作系统,允许多个用户同时是多用户的操作系统,允许多个用户同时在系统上登录和工作。在系统上登录和工作。为了确保系统和用户的安全,为了确保系统和用户的安全,Linux采取了很多采取了很多的安全措施。的安全措施。通过通过用户的代号(用户的代号(UID)来
28、确定每个用户在登录来确定每个用户在登录系统后都做了些什么,系统后都做了些什么,也可以用来区别不同用户也可以用来区别不同用户所建立的文件或目录。所建立的文件或目录。Linux文件系统安全模型是通过给系统中的文件文件系统安全模型是通过给系统中的文件赋予三个属性来起作用的,这三个赋予每个文件赋予三个属性来起作用的,这三个赋予每个文件的属性称为的属性称为所有者所有者、组组和和访问权限访问权限。Linux下下每每一个文件必须严格地属于一个用户和一个组一个文件必须严格地属于一个用户和一个组。第六 节使用使用 Linux 系统资源的四类人员系统资源的四类人员在在Linux中,将使用系统资源的人员分为四类:中
29、,将使用系统资源的人员分为四类:n超级用户超级用户n文件或目录的属主文件或目录的属主n属主的同组人属主的同组人n其他人员其他人员由于超级用户具有操作由于超级用户具有操作Linux系统的一切权限,所以系统的一切权限,所以不用指定超级用户对文件和目录的访问权限。不用指定超级用户对文件和目录的访问权限。对于其对于其他三类用户都要指定对文件和目录的访问权限。他三类用户都要指定对文件和目录的访问权限。用户只能不受限制的操作自家目录及其子目录下的所用户只能不受限制的操作自家目录及其子目录下的所有文件。有文件。对系统中其他目录的访问受到同组和其他人对系统中其他目录的访问受到同组和其他人的访问限制。的访问限制
30、。第六 节设置文件权限的准则设置文件权限的准则尽量使用尽量使用私有组私有组,保护用户各自的文件或目录。,保护用户各自的文件或目录。应随时了解指定给文件和目录的权限,定期检应随时了解指定给文件和目录的权限,定期检查文件和目录以确保指定了正确的权限。查文件和目录以确保指定了正确的权限。如如果在目录下发现陌生的文件请向系统管理员或果在目录下发现陌生的文件请向系统管理员或安全人员报告。安全人员报告。为文件和目录指定权限时请慎重考虑只有在具为文件和目录指定权限时请慎重考虑只有在具有充分的理由。有充分的理由。例如:处理小组项目时组员例如:处理小组项目时组员可能需要访问特定的文件或目录需要让他人访可能需要访
31、问特定的文件或目录需要让他人访问时再将访问权限授予他人。问时再将访问权限授予他人。第六 节三种基本的访问权限三种基本的访问权限三种基本的访问权限三种基本的访问权限n读(读(r)n写(写(w)n执行(执行(x)三种基本的访问权限对文件的含义三种基本的访问权限对文件的含义nr:可以读文件的内容:可以读文件的内容nw:可以修改该文件:可以修改该文件nx:可以执行该文件:可以执行该文件第六 节三种基本的访问权限三种基本的访问权限三种基本的访问权限对目录的含义三种基本的访问权限对目录的含义nr:可以列出目录中的文件列表:可以列出目录中的文件列表nw:可以在该目录中创建、删除文件:可以在该目录中创建、删除
32、文件nx:可以使用:可以使用cd命令进入该目录命令进入该目录目录权限提示目录权限提示n有只读权限的用户不能用有只读权限的用户不能用cd进入该目录;还必须有执进入该目录;还必须有执行权限才能进入。行权限才能进入。n有执行权限的用户只有在知道文件名并拥有该文件的读有执行权限的用户只有在知道文件名并拥有该文件的读权限的情况下才可以访问目录下的文件。权限的情况下才可以访问目录下的文件。n必须有读和执行权限才可以使用必须有读和执行权限才可以使用ls列出目录清单,或列出目录清单,或使用使用cd进入目录。进入目录。n如用户有目录的写权限,则可以创建、删除或修改目录如用户有目录的写权限,则可以创建、删除或修改
33、目录下的任何文件或子目录,既使该文件或子目录属于其他下的任何文件或子目录,既使该文件或子目录属于其他用户。用户。第六 节查看文件和目录的权限查看文件和目录的权限使用如下命令查看权限使用如下命令查看权限n$ls-l常见的权限字符串及其含义常见的权限字符串及其含义字符字符数值数值说明说明-rw-600只有属主才有读取和写入的权限。只有属主才有读取和写入的权限。-rw-r-r-644-rwx-700-rwxr-xr-x755-rwx-x-x711-rw-rw-rw-666-rwxrwxrwx777drwx-700drwxr-xr-x755第六 节权限的文字设定法权限的文字设定法chmod命令的文字设
34、定法格式命令的文字设定法格式chmodugoa+-=rwxugo人员标识人员标识n属主(属主(u)n同组(同组(g)n其他人(其他人(o)n所有的人员(所有的人员(a)第六 节权限的文字设定法权限的文字设定法设定方法设定方法n+:增加权限:增加权限n-:删除权限:删除权限n=:分配权限,同时删除旧的权限:分配权限,同时删除旧的权限权限字符权限字符nr(读)(读)nw(写)(写)nx(执行)(执行)nu(和属主的权限相同)(和属主的权限相同)ng(和所属组用户的权限相同)(和所属组用户的权限相同)no(和其他用户的权限相同)(和其他用户的权限相同)第六 节权限的文字设定法举例权限的文字设定法举例
35、取消组用户和其他用户对文件取消组用户和其他用户对文件users的的读取权限读取权限#cd;ls-lusers-rw-r-r-1rootroot42May218:07users#chmodgo-rusers#llusers-rw-1rootroot42May218:07users第六 节权限的文字设定法举例权限的文字设定法举例对文件对文件addusers的属主添加执行权的属主添加执行权限限#lladdusers-rw-r-r-1rootroot452May217:44addusers#chmodu+xaddusers#lladdusers-rwxr-r-1rootroot452May217:44
36、addusers第六 节权限的文字设定法举例权限的文字设定法举例对文件对文件addusers1的属主添加执行的属主添加执行权限,同时取消组用户和其他用户权限,同时取消组用户和其他用户对文件的读取权限对文件的读取权限#lladdusers-rw-r-r-1rootroot399May218:14addusers1#chmodu+x,go-raddusers1#lladdusers1-rwx-1rootroot399May218:14addusers1第六 节权限的数值设定法权限的数值设定法 chmod命令的数值设定法格式命令的数值设定法格式nchmodn1n2n3n1n2n3n其中其中n1代表属
37、主的权限代表属主的权限nn2代表组用户的权限代表组用户的权限nn3代表其他用户的权限代表其他用户的权限第六 节权限的数值设定法权限的数值设定法 n1、n2、n3选项都是选项都是8进制数字,其意进制数字,其意义如下:义如下:读读写写执行执行二进制二进制八进制八进制说明说明-0000没有权限。没有权限。-x0011允许执行。允许执行。-w-0102允许写入。允许写入。-wx0113允许执行和写入。允许执行和写入。r-1004允许读取。允许读取。r-x1015允许执行和读取。允许执行和读取。rw-1106允许写入和读取。允许写入和读取。rwx1117允许执行写入和读取。允许执行写入和读取。第六 节权
38、限的数值设定法举例权限的数值设定法举例 对文件对文件addusers的属主设置可读、写和的属主设置可读、写和执行权限,执行权限,所属组用户和其他用户只设所属组用户和其他用户只设置读和执行的权限,没有写的权限。置读和执行的权限,没有写的权限。#lladdusers-rwxr-r-1rootroot452May217:44addusers#chmod755addusers#lladdusers-rwxr-xr-x1rootroot452May217:44addusers第六 节权限的数值设定法举例权限的数值设定法举例 取消组用户和其他用户对文件取消组用户和其他用户对文件users1的的一切权限一切
39、权限#llusers1-rw-r-r-1rootroot24May218:15users1#chmod600users1#llusers1-rw-1rootroot24May218:15users1第六 节更改属主和组更改属主和组 chown命令命令n功能:更改属主和组。功能:更改属主和组。n格式:格式:#chown-Rn参数参数-R:表示对目录及其子目录进行:表示对目录及其子目录进行递归设置。递归设置。第六 节更改属主和组更改属主和组举例:举例:n将文件将文件users1的属主改成的属主改成osmond#chmodosmondusers1n将文件将文件users1的组改成的组改成staff#
40、chmod.staffusers1n将文件将文件users的属主和组都改成的属主和组都改成osmond#chownosmond.osmondusersn将将mydir目录及其子目录下的所有文件或目录的属目录及其子目录下的所有文件或目录的属主和组都改成主和组都改成osmond#chownRosmond.osmondmydir第六 节三种特殊权限简介三种特殊权限简介 SUIDn当一个设置了当一个设置了SUID位的可执行文件被执行时,该位的可执行文件被执行时,该文件将以所有者的身份运行,文件将以所有者的身份运行,也就是说无论谁来也就是说无论谁来执行这个文件,他都有文件所有者的特权。执行这个文件,他都
41、有文件所有者的特权。n如果所有者是如果所有者是root的话,那么执行人就有超级用的话,那么执行人就有超级用户的特权了。户的特权了。SGIDn当一个设置了当一个设置了SGID位的可执行文件运行时,该文位的可执行文件运行时,该文件将具有所属组的特权,件将具有所属组的特权,任意存取整个组所能使任意存取整个组所能使用的系统资源。用的系统资源。n若一个目录设置了若一个目录设置了SGID,则所有被复制到这个目,则所有被复制到这个目录下的文件,录下的文件,其所属的组都会被重设为和这个目其所属的组都会被重设为和这个目录一样,除非在复制文件时加上录一样,除非在复制文件时加上-p(preserve,保留文件属性)
42、的参数,才能保留原来所属的群组保留文件属性)的参数,才能保留原来所属的群组设置。设置。第六 节三种特殊权限简介三种特殊权限简介sticky-bitn对一个文件设置了对一个文件设置了sticky-bit之后,尽之后,尽管其他用户有写权限,管其他用户有写权限,也必须由属主也必须由属主执行删除、移动等操作。执行删除、移动等操作。n对一个目录设置了对一个目录设置了sticky-bit之后,存之后,存放在该目录的文件仅准许其属主执行放在该目录的文件仅准许其属主执行删除、删除、移动等操作。移动等操作。第六 节特殊权限实例特殊权限实例 SUID的典型例子是的典型例子是passwd程序程序#ll/usr/bi
43、n/passwd-r-s-x-x1rootroot16336Feb142003/usr/bin/passwd设置了设置了sticky-bit的典型例子是系统的典型例子是系统临时文件目录临时文件目录/tmp#ll-d/tmpdrwxrwxrwt4rootroot4096May308:20/tmp第六 节特殊权限的文字表示特殊权限的文字表示 SUID和和SGID用用s表示;表示;Sticky-bit用用t表示表示SUID是占用属主的是占用属主的x位置来表示位置来表示SGID是占用组的是占用组的x位置来表示位置来表示Sticky-bit是占用其他人的是占用其他人的x位置来表示的位置来表示的在表示上有
44、大小写之分在表示上有大小写之分n假若同时设置执行权限和假若同时设置执行权限和SUID、SGID与与Sticky,权限标识字符是小写的形式权限标识字符是小写的形式n倘若关闭执行的权限,则标识字符会变成大写倘若关闭执行的权限,则标识字符会变成大写第六 节特殊权限的文字表示特殊权限的文字表示 例如:例如:-rwsr-sr-t1rootroot9Aug1921:47showme-rwSr-Sr-T1rootroot9Aug1921:47showme-rwsr-Sr-T1rootroot9Aug1921:47showme-rwsr-Sr-t1rootroot9Aug1921:47showme-rwsr-
45、sr-T1rootroot9Aug1921:47showme第六 节特殊权限的数值表示特殊权限的数值表示 三种特殊权限可以用单独的一位三种特殊权限可以用单独的一位8进制数值表进制数值表示示SUID、SGID和和sticky-bit的数值表示的数值表示SUIDSGIDsticky二进制二进制八进制八进制说明说明-0000不设置特殊权限不设置特殊权限-t0011只设置只设置sticky-s-0102只设置只设置SGID-st0113只设置只设置SGID和和stickys-1004只设置只设置SUIDs-t1015只设置只设置SUID和和stickyss-1106只设置只设置SUID和和sst111
46、7设置三种特殊权限设置三种特殊权限第六 节设置特殊权限举例设置特殊权限举例 为程序为程序/usr/bin/myapp添加添加SUID权限权限#chmodu+s/usr/bin/myapp为目录为目录/home/groupspace添加添加SGID权限权限#chmodg+s/home/groupspace为目录为目录/home/share添加添加sticky权限权限#chmodo+t/home/share为程序为程序/usr/bin/myapp添加添加SUID权限权限#chmod4755/usr/bin/myapp为目录为目录/home/groupspace添加添加SGID权限权限#chmod2
47、755/home/groupspace为目录为目录/home/share添加添加sticky权限权限#chmod1755/home/share第六 节思考题思考题1、Linux系统是如何标识用户和组的?系统是如何标识用户和组的?2、简述私有组和主组的关系?简述标准组和附加组的、简述私有组和主组的关系?简述标准组和附加组的关系?关系?3、简述、简述Linux的四个账户系统文件及其各个字段的含的四个账户系统文件及其各个字段的含义?义?4、如何设置用户口令?如何锁定用户账号?如何设置、如何设置用户口令?如何锁定用户账号?如何设置用户口令时效?用户口令时效?5、Linux文件系统的三种基本权限为何?文件系统的三种基本权限为何?6、Linux文件系统的三种特殊权限为何?何时使用它文件系统的三种特殊权限为何?何时使用它们?们?7、简述、简述chmod命令的两种设置权限的方法?命令的两种设置权限的方法?8、简述三种特殊权限及其设置方法?、简述三种特殊权限及其设置方法?