当前位置:
文档之家› Linux基础教程(清华课件)-第11章 账 号 管 理
Linux基础教程(清华课件)-第11章 账 号 管 理
2021/3/5
5
11.1了解账号管理
Linux是一个多用户系统,与单用户的MS-DOS有很大 的不同。单用户系统可以由使用者本人负责系统的 安全性,而多用户系统中的所有用户都可以共享机 器中的资源,包括软件资源和硬件资源。系统对每 一个普通用户都设置一定的权限,让其在自己的组
内自由工作,而不能跨越这种限制。同时对系统资 源设置了访问控制表(access control list),即属主 (文件拥有者)、组用户和其他人对资源的访问是可 读、可写还是可执行。从这里可以看出,账号管理 实际就是一种安全策略。它源自UNIX,在其他的多 用户操作系统如Windows NT中也广为采用。
综上所述,账号管理就像是一把锁。劣质的管理就 好比上了一把不用钥匙的锁,人人可以窥探你的隐 私。对于如何保障个人权益,答案是两方面的,作 为普通用户,不要把你的账号和密码告诉别人;作 为管理员,要执行严格的账号管理。
2021/3/5
13
11.3 超级用户
超级用户就是拥有root权限的用户。它在Linux或 UNIX系统中拥有至高权限、能够胜任所有管理工作。
11.3.2 root的登录方式
前面已经提到一种登录方式,就是系统管理员以普 通用户的身份进入系统,必要的时候再用su命令使 自己转变成超级用户。不过su命令转换身份有一个 环境变量转变的问题,读者可以用env命令查看身 份转换前后的环境变量有何变化。
2021/3/5
17
假设有一个用户要转变成root身份,请读者比较使用 以下两条指令会有什么区别:
另外一种登录方式就是从控制台直接登录,对于 UNIX和Linux系统来说,前面我们提到超级用户主 宰一切,实际上很有可能是“控制台”主宰一切。
这里的控制台指的就是直接通过数据线连接到主机 的显示终端。
2021/3/5
19
对于Linux而言,普通的Intel平台的RedHat系统,只 要在Linux启动时输入以下参数即可不需要密码进 入单用户模式:
11.3.3 与root环境变量相关的脚本文件
在root根目录下有几个重要的脚本文件,熟知它们的 内容有助于更好地控制自己的行为,养成良好的习 惯。如PATH环境变量一般没有当前路径“.”,这样 就会督促系统管理员使用绝对路径。
root跟其他用户一样,其基本行为和环境变量由 /etc/bashrc(以bash shell为例)和/etc/profile设定。 root根目录下有两个配置文件.bashrc和.bash-profile, 这两个文件可以由用户个人修改,以添加一些个人 爱好的环境设置。修改后必须执行后方可生效,如 修改完“.bashrc”文件后,执行如下:
2021/3/5
6
系统的这种安全机制有效地防止了普通用户对系统 的破坏。例如存放于/dev目录下的设备文件分别对 应于硬盘驱动器、打印机、光盘驱动器等硬件设备, 系统通过对这些文件设置用户访问权限,使得普通 用户无法通过覆盖硬盘而破坏整个系统,从而保护 了系统。
用户账号一般包括普通用户账号、管理账号和系统 账号。为了鉴别用户身份以及加强系统安全,系统 为每个使用它的人分配了一个账号,这就是普通用 户账号。每个人拥有一个独立的普通用户账号,每 个账号有不同的用户名和密码。用户可以为自己的 文件设置保护,允许或限制别人使用它们。用户账 号被用来控制对系统的使用,只有拥有账号的人才
这个命令通知各个终端用户系统将在10分钟后关机, 便于普通用户做好充分准备。
以上事实充分说明root是一把双刃剑,所以通常情况 下系统管理员要为自己分配一个普通用户账号,必 要时才用su命令将自己改变成为root,以避免因疏 忽导致的意外错误。
2021/3/5
16
正因为root用户拥有这种特殊的地位,保护超级用户 的密码也就成了加强系统安全的关键。这样,从某 种意义来说,对系统的管理问题也就成了对超级用 户密码的管理。系统管理员要严格保护密码,并经 常更换,而且密码要足够复杂、足够长,特别是对 于重要的系统来说,更要建立严格的密码管理制度。
# ..bashrc
2021/3/5
21
普通用户也可以自行设置自己的环境参数,建议读 者动手修改这些脚本,只有试验过才会有更深的体 会。
11.4 其他特殊用户
除了root和普通账号之外,系统中还存在一些账号,
它们不能供任何人登录使用,只能由系统内核使用。
这些账号有bin、sys、nobody、daemon等。这些账
清华大学计算机基础教育课程系列教材 汤荷美 董渊 李莉 程志锐 编著
Linux基础教程(1) 操作系统基础
2021/3/5
1
总目录
第1部分 Linux操作系统
第1章 操作系统概述 第2章 处理机管理 第3章 存储管理 第4章 调度 第5章 设备 第6章 文件系统
2021/3/5
2
第2部分 操作系统命令及shell编程
2021/3/5
9
11.2Linux系统中的归属关系模式
Linux和UNIX一样,其进程和文件都存在一个相关联 的归属关系的概念。文件与进程的拥有者对其有绝
对的控制权,可以控制文件和进程是否允许其他用 户访问,这种权力只有root用户才可以超越。这些 归属关系就是通过规划用户的权限来体现的。
Linux中,每个文件都有一个属主和属组,属主可以
boot:linux 1
而XLinux甚至可以直接从启动菜单中选择。即使启 动过程不允许输入参数,也可以通过光盘或软盘启 动进入系统,这些在安全部分再做介绍。当然对于 商业模式,我们可以采用物理隔离的办法来保护主 机。不过对于系统管理员来说,应该重视控制台的 安全,养成良好的习惯。
2021/3/5
20
rm-fr /home/lily
但是不小心在home前多了一个空格,命令成了: rm-fr /home/lily
在Linux系统中,rm可以接受多个参数,即要删除“/”
和“/home/lily”两个目录,而“/”表示整个文件系
统。当然作为普通用户权限较小,系统不允许这么
做。但是如果用户以root身份执行这个命令的话,
# su
password:(此处提示输入root的密码)
如果想回到原来用户账号,用exit命令即可。
2021/3/5
8
系统中还有一些账号不能被人交互使用,通常这些 账号只能被系统守护进程使用。它们经常必须以除 root及普通用户账号外的某个特殊用户的UID访问 某些文件。
系统管理员(拥有管理账号的人)的工作之一就是为系 统中的所有普通用户添加账号。为了更好地理解账 号管理的必要性,下面介绍Linux和UNIX系统中的 归属关系模式。
10
chown这个权限。例如,文件file1的属主为 dongyuan,属组为A,而用户dongyuan同时是A组 和B组成员,则dongyuan可以用newgrp B命令改变 自己当前的属组,进入B组,然后就可以使用chgrp 将自己的文件属组改为组B。
例如,dongyuan使用chgrp改变file1的属组键入命令:
# chgrp B file1
这样file1的属主仍为dongyuan,而属组变成了B。
root用户使用chown可以同时改变file1的属组和属主, 例如键入命令:
#chown lily:A file1
2021/3/5
11
这样file1的属主仍为lily,而属组变成了A。
Linux中的每个进程也有类似的归属关系。每个进程 都有4个关联的数值:实际UID,有效UID,实际GID, 有效GID。通常情况下,实际ID与有效ID是相同的,
进程的属主可以给进程发信号,也可以降低进程的 优先级,但不可以升高,除非是root。而在某些特 殊情况下(如设置了setuid或setgid位的程序进程),
当该进程运行另一个用户的程序文件时,它的有效 UID或有效GID分别被临时设置为该程序文件的属主 的实际UID或实际GID,从而可以像该属主一样执行 该程序文件。比如普通用户用passwd命令修改口令 时,可以临时获得root权限,修改/etc/passwd文件 的内容。简单地说,就是使程序
第7章 Linux基本命令 第8章 使用vi编辑文件 第9章 shell编程
第3部分 系 统 管 理
第10章 Linux系统软件的获取和安装
第11章 账号管理
第12章 文件系统管理
第13章 TCP/IP网络管理
第14章 备份与恢复
第15章 XWindow及Genie应用程序
2021/3/5
3
第11章 账 号 管 理
任意设置文件的访问权限。文件的访问权限包括属
主的访问权限,属组的访问权限及其他人的访问权 限。属主可以用chmod命令去修改,当然,万能的 root也可以这样做。另外,root还可以使用chown 和chgrp命令分别修改文件的属主和属组,但要注 意,属主本身只有chgrp的权限,而没有
2021/3/5
序、建立自己的目录、决定别人以何种权限(可读、
可写、可执行)访问自己的文件及目录,以及
2021/3/5
14
同组的用户如何访问它们。而root不受这些限制, 不管用户对自己的文件作了何种保护,root都能置 之不理。这一方面体现了root的特权性,也从另一
方面表现出了极大的危险性。例如,普通用户想删 除目录/home/lily目录下的文件,执行以下命令:
在系统管理员手中,它是系统的守护神;在黑客手 中,它就成为系统和管理员的灾难。
11.3.1 root的权威性和危险性
只要掌管了root,就拥有对系统内所有用户的生杀大
权,对所有文件的处置权,以及对所有服务的使用
权。当然,如果不小心敲错了命令,就可能给系统
带来毁灭性的打击。一个普通用户只能在系统中做