当前位置:文档之家› 5 用户及权限管理

5 用户及权限管理


例1:将目录/usr/mengqc及其下面的所有文件、子目录的文件 主改变成liu。 $ chown -R liu /usr/mengqc 例2:把文件的拥有者改为longkey用户,同时文件的所属组改 为root组。 # chown longkey:root chap1.txt
3.chgrp命令 功能:改变文件或目录的所属组。 格式:chgrp [选项] 组名 文件名 说明:如果用户不是该文件的文件主或超级用户,则不能改变该 文件或目录的所属组。chown可以同时改变文件拥有者和所属 组,chgrp只具有改变所属组的功能。 参数选项: -R 递归式地改变指定目录及其下面的所有子目录和文件的用户 组。
(2)/etc/shadow 任何用户对passwd文件都有读的权限,虽然密码已经经过 加密,但还是不能避免有人会获取加密后的密码。为了安全, Linux系统对密码提供了更多一层的保护,即把加密后的密码重 定向到另一个文件/etc/shadow。密码如果经过shadow保护, 在/etc/passwd文件中,每一记录行的密码字段会变成“x”,并且 在/etc目录下存在文件shadow。只有超级用户能够读取shadow 的内容。
例1:显示当前的默认权限掩码值。 $ umask 022 例2:显示新创建文件的权限。 $ cat > test $ ls –l test -rw-r--r-- 1 root root 7 3 月 8 12:57 test 以上说明如果用户创建新的文件,文件的权限应为666-022=644 (即rw-r--r--)。
设定文件权限时,在模式中常用以下的字母代表用户或用户组: u(user)表示文件的所有者。 g(group)表示文件的所属组。 o(others)表示其他用户。 a(all)代表所有用户(即u+g+o)。 权限用以下字符表示: r表示读权限; w表示写权限; x表示执行权限。 最后要指明是 (+)增加权限 (-) 取消权限 (=)赋予权限。
5.1 权限控制机制
linux系统是个多用户系统,能做到不同的用户能同时访 问不同的文件,因此一定要有文件权限控制机制。 对于用户权限的控制只有拥有root权限的用户才可以进行。
5.1.1 用户和权限
1.基本概念
(1)文件主 Linux为每个文件都分配了一个所有者,称为文件主。 文件主和超级用户(root)可对文件进行控制。
例2:查看shadow文件的内容。 # cat /etc/shadow root::12123:0:99999:7::: bin:*:12123:0:99999:7::: ...... test::12123:0:99999:7:::
和passwd文件类似,shadow文件中的每行由9个字段组成。 格式如下: 用户名:密码:最后一次修改时间:最小时间间隔:最大时间间 隔:警告时间:不活动时间:失效时间:标志字段 shadow文件中,密码字段为“*”表示用户被禁止登录,为“!!”表 示密码未设置,为“!”表示用户被锁定。
(1)文件访问权限 读权限(r)表示只允许指定用户读取相应文件的内容。 写权限(w)表示允许指定用户打开并修改文件。 执行权限(x)表示允许指定用户将该文件作为一个程序执行。
(2)目录访问权限 在ls命令后加上-d选项,可以了解目录文件的使用权限。 读权限(r)表示可以读目录内容。 写权限(w)表示允许你从目录中删除或创建新的文件或目录。 执行权限(x)表示允许你在目录中查找,并能用cd命令将工作 目录切换到该目录。 用chmod 命令可改变文件或目录的访问权限。
课堂练习
对上面的指令chmod、chown、chgrp、umask进行一下练习 并观察一下运行结果
5.2 用户的管理
Linux是一个多任务、多用户的操作系统,要能做到不同的 用户能同时访问不同的文件,允许不同的用户从本地登录或远 程登录,这时用户必须拥有一个合法的账号,Linux系统正是通 过账号来实现对用户的访问进行控制的,因此,需要对用户与 组进行有效的管理。
从passwd文件中可以看到,第一行是root用户,紧接的是系 统用户,普通用户通常在文件的尾部。passwd文件中的每一行 由7个字段的数据组成,字段之间用“:”分隔。 其格式如下: 账号名称:密码:UID:GID:个人资料:主目录:Shell
说明如下: 账号名称:用户登录Linux系统时使用的名称。 密码:这里的密码是经过加密后的密码,而不是真正的密 码,若为“x”,说明密码经过了shadow的保护。 UID:用户的标识,是一个数值,Linux系统内部使用它来区 分不同的用户。 GID:用户所在组的标识,是一个数值,Linux系统内部使 用它来区分不同的组,相同的组具有相同的GID。 个人资料:可以记录用户的个人信息,如姓名、电话等信息 (上例中test用户本项为空)。 主目录:通常是/home/username,这里username是用户名, 用户执行“cd~”命令时当前目录会切换到个人主目录。 Shell:定义用户登录后使用的Shell,默认是bash。
Linux基础
3 Sept. 2008 Neusoft Confidential
第五章:用户及权限管理
目标:
通过本章的学习,使学员了解 Linux系统的用户管理及用户操 作安全: 1)了解用户的创建、删除等操 作 2)了解用户安全
时间:2 学时 教学方法:实例+上机
第5章 Linux用户管理
5.1 权限控制机制 5.2 用户的管理 5.3 组 的 管 理 5.4 用户管理器 习题
5.1.2 权限控制命令
1.chmod命令 功能:chmod命令用于改变或设置文件或目录的访问权限。 格式:chmod[选项]模式 文件或目录名 说明:只有文件主或超级用户root才有权用chmod改变文件或 目录的访问权限。 选项参数: -R:对目前目录下的所有档案与子目录进行相同的权限变更 (即以递归式的方式逐个变更)。
例1:将文件“chap1.txt”的所属组设为root组。 $ chgrp root chap1.txt 例 2 : 将 /usr/mengqc 及 其 子 目 录 下 的 所 有 文 件 的 用 户 组 改 为 mengxin。 $ chgrp -R mengxin /usr/mengqc
4.umask命令 功能:用来设置新建文件权限的掩码。 格式:umask [模式] 说明:模式为新建文件权限的掩码值。 文件访问权限可以通过chmod命令来修改。当用户创建一个新 文件后,如果不使用chmod修改权限,则这个文件的权限 是什么呢?这个文件的权限由系统默认权限和默认权限掩 码共同确定,它等于系统默认权限减去默认权限掩码。 Linux系统中目录的默认权限是777,文件的默认权限是666。 因此,有以下公式: 新目录的权限=777-默认权限掩码 新文件的权限=666-默认权限掩码 注意:基于安全原因,Linux系统不允许文件的默认权限有执 行权。 不带任何参数的umask命令显示当前的默认权限掩码值。
2.账号系统文件 Linux系统采用纯文本文件来保存账号的各种信息,其中最重要 的文件有/etc/passwd、/etc/shadow、/etc/group这几个。我们 可以使用vi或其他编辑器来更改它们,也可以使用专门的命令 来更改它们。账号的管理实际上就是对这几个文件的内容进行 添加、修改和删除记录行的操作,不管以哪种形式管理账号, 了解这几个文件的内容十分必要。
(1)/etc/passwd文件 /etc/passwd文件是账号管理中最重要的一个文件,它是 一个纯文本文件。每一个注册用户在该文件都有一个对应的记 录行,这一记录行记录了此用户的必要信息。 例1:显示/etc/passwd文件。 # cat /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:
5.2.2 命令行方式管理用户
在对用户与组进行管理时,可以采用两种方式: – 命令行(Shell)方式 – 图形界面(GUI)方式, 命令行方式下的用户与组的管理,包括用户的添加、删除及修 改等。
1.添加用户账号 超级用户root可以通过在系统提示符下运行useradd或adduser 命令来创建用户账号。 命令格式:useradd[选项]用户名 说明:只有超级用户root才有权使用此命令,使用useradd命 令创建新的用户账号后,应利用passwd命令为新用户设置 口令。 useradd命令有很多的可选参数,具体说明如下: -u:设置用户ID(UID),用户ID和账号一样必须是唯一的。 -g:指定用户所属的用户组(组必须存在),参数可以是组名 称或组ID(GID)。 -d:建立用户目录,参数即所建的用户目录(通常与用户账号 相同)。 -s:设置用户环境,即设置用户的Shell环境。
例3: $ chmod 664 chap1.txt
$ chmod u=rw,g=rw,o=r chap1.txt。
例4: 将目录wn1及其下面的所有子目录和文件的权限改为所有用户 对其都有读、写权限。 $ chmod –R a+rw- wn1
2.chown命令 功能:改变某个文件或目录的拥有者和所属的组。 格式:chown [选项]用户或组 文件名 说明:只有文件主和超级用户才可以使用该命令。同时改变文 件主和文件所属的组时,用户名和用户组名由冒号分开。在 文件名中可以包含通配符。 参数选项: -R 递归式地改变指定目录及其所有子目录、文件的文件主。
5.1 用户登录流程
开始 输入用户名和密码 N 检查/etc/passwd文 件是否有此用户名 Y 取出用户ID 检查/etc/shadow文 件密码是否正确 Y 根据用户ID进行各种操作 N
5.2.1 Linux操作系统下的用户
1.用户 Linux下的用户可以分为三类:超级用户、系统用户和 普通用户。 超级用户的用户名为root,它具有一切权限,只有进行 系统维护(例如建立用户等)或其他必要情形下才用超级 用户登录,以避免系统出现安全问题。 系统用户是Linux系统正常工作所必需的内建的用户, 主要是为了满足相应的系统进程对文件属主的要求而建立 的,系统用户不能用来登录,如bin、daemon、adm、lp等 用户。 普通用户是为了让使用者能够使用Linux系统资源而建 立的,我们的大多数用户属于此类。每个用户都有一个数 值,称为UID。超级用户的UID为0,系统用户的UID一般为 1~499,普通用户的UID为500~60000之间的值。
相关主题