《 Linux操作系统》第四讲 用户管理 学时计划:4学时理论,2学时实验 (实验四:用户管理) 教学大纲: 1、用户管理的基本概念 2、 Linux的用户与用户组 3、与用户管理有关的配置文件 4、用户管理 5、用户组管理 6、讨论与思考 Linux操作系统是一个多用户多任务的操作系统,在用户管理方 面,拥有用户添加、用户管理、用户组管理、用户切换等多种工具。 本讲介绍 Linux操作系统下的用户管理的一些基本概念,并详细 讲解用户和用户组管理的工具的使用。 用户管理的基本概念 1.1单用户多任务和多用户多任务 Linux是一个多用户、多任务的操作系统。操作系统可以分为单 用户多任务和多用户多任务操作系统。 (1)单用户多任务 单用户多任务操作系统要求系统在单一时间内为单个用户服务 但它允许用户一次提交多项任务。例如,用户可以在运行程序的同时 开始另一文档的编辑工作。 举例来说,用户 zhaodongfeng登录 Linux系统,进入系统后, 首先打开 Netbeans撰写程序,但在写程序的过程中,又打开xms欣 赏音乐,同时打开QQ软件和朋友保持联系。这样,用户同时打开了 3个应用软件,这样的系统就是单用户多任务操作系统。 (2)多用户多任务 1|(anx操作系统》讲稿/河南中医学院/阮晓龙/ phactcm.edu.cn
1 《Linux 操作系统》讲稿 / 河南中医学院 / 阮晓龙 / rxl@hactcm.edu.cn 《Linux 操作系统》第四讲: 用户管理 学时计划:4 学时 理论,2 学时 实验 (实验四:用户管理) 教学大纲: 1、用户管理的基本概念 2、Linux 的用户与用户组 3、与用户管理有关的配置文件 4、用户管理 5、用户组管理 6、讨论与思考 Linux 操作系统是一个多用户多任务的操作系统,在用户管理方 面,拥有用户添加、用户管理、用户组管理、用户切换等多种工具。 本讲介绍 Linux 操作系统下的用户管理的一些基本概念,并详细 讲解用户和用户组管理的工具的使用。 一、用户管理的基本概念 1.1 单用户多任务和多用户多任务 Linux 是一个多用户、多任务的操作系统。操作系统可以分为单 用户多任务和多用户多任务操作系统。 (1)单用户多任务 单用户多任务操作系统要求系统在单一时间内为单个用户服务, 但它允许用户一次提交多项任务。例如,用户可以在运行程序的同时 开始另一文档的编辑工作。 举例来说,用户 zhaodongfeng 登录 Linux 系统,进入系统后, 首先打开 Netbeans 撰写程序,但在写程序的过程中,又打开 xmms 欣 赏音乐,同时打开 QQ 软件和朋友保持联系。这样,用户同时打开了 3 个应用软件,这样的系统就是单用户多任务操作系统。 (2)多用户多任务
多用户多任务操作系统允许多个用户共享使用同一台计算机的 资源,即在一台计算机上联接几台甚至几十台终端机,终端机可以没 有自己的CPU与内存,只有键盘与显示器,每个用户都通过各自的终 端机使用这台计算机的资源,计算机按固定的时间片轮流为各个终端 服务。由于计算机的处理速度很快,用户感觉不到等待时间,似乎这 台计算机专为自己服务一样 当然,多用户多任务并不是必须许多用户同时通过多个终端设备 来使用同一台计算机,多用户也可以通过远程登录的方式来进行。 举例来讲,一台 Ubuntu server服务器,服务器上开设有FTP用 户、系统管理员、Web管理用户等,在同一时刻,这些用户可以在同 时刻访问服务器,并执行不同的任务。 1.2用户角色识别 用户在操作系统中是分角色的,角色不同,权限和所能够完成的 任务也不同。 在 Linux操作系统中,用户角色是通过UID和用户名进行识别的, 并且主要使用UID进行识别。 二、 Linux的用户和用户组 2.1用户(User) 用户是能够获取系统资源的权限的集合。 Linux操作系统中,主 要有三类用户,分别如下所示。 root用户:系统唯一的一个拥有最高权限的账户。 虚拟用户:也被称之为伪用户或假用户,与真实用户区分开来, 这类用户不具有登录系统的能力,但却是系统运行不可缺少的用户, 主要用户FTP服务、NFS服务等公共服务的启动账户,这类用户通常 都是系统自身拥有的,而非管理员自行添加的 普通用户:是系统真实账户。这类用户能够登录操作系统,但只 能操作个人目录下的内容。普通用户通常都是由系统管理员自行添加 的并指定权限 Linux操作系统中,与用户有关的信息保存在/etc/ passwd和 /etc/ shadow这两个文件中。 2|(amx操作系统》讲稿/河南中医学院/阮晓龙/ phactcm.edu.cn
2 《Linux 操作系统》讲稿 / 河南中医学院 / 阮晓龙 / rxl@hactcm.edu.cn 多用户多任务操作系统允许多个用户共享使用同一台计算机的 资源,即在一台计算机上联接几台甚至几十台终端机,终端机可以没 有自己的 CPU 与内存,只有键盘与显示器,每个用户都通过各自的终 端机使用这台计算机的资源,计算机按固定的时间片轮流为各个终端 服务。由于计算机的处理速度很快,用户感觉不到等待时间,似乎这 台计算机专为自己服务一样。 当然,多用户多任务并不是必须许多用户同时通过多个终端设备 来使用同一台计算机,多用户也可以通过远程登录的方式来进行。 举例来讲,一台 Ubuntu Server 服务器,服务器上开设有 FTP 用 户、系统管理员、Web 管理用户等,在同一时刻,这些用户可以在同 一时刻访问服务器,并执行不同的任务。 1.2 用户角色识别 用户在操作系统中是分角色的,角色不同,权限和所能够完成的 任务也不同。 在Linux操作系统中,用户角色是通过UID和用户名进行识别的, 并且主要使用 UID 进行识别。 二、Linux 的用户和用户组 2.1 用户(User) 用户是能够获取系统资源的权限的集合。Linux 操作系统中,主 要有三类用户,分别如下所示。 root 用户:系统唯一的一个拥有最高权限的账户。 虚拟用户:也被称之为伪用户或假用户,与真实用户区分开来, 这类用户不具有登录系统的能力,但却是系统运行不可缺少的用户, 主要用户 FTP 服务、NFS 服务等公共服务的启动账户,这类用户通常 都是系统自身拥有的,而非管理员自行添加的。 普通用户:是系统真实账户。这类用户能够登录操作系统,但只 能操作个人目录下的内容。普通用户通常都是由系统管理员自行添加 的并指定权限。 Linux 操作系统中,与用户有关的信息保存在/etc/passwd 和 /etc/shadow 这两个文件中
2.2用户组( Group) 用户组( group)就是具有相同特征的用户(user)的集合体, 用户组是权限的容器。在 Linux操作系统中,主要有三类用户组,分 别如下所示 普通用户组:通常是由系统管理员创建的,可以指定加入多个用 户,加入的用户将继承用户组的权限。 系统用户组:该组内一般存放系统管理用户。 私有组:也称基本组。当创建用户时,如果没有为其指明所属用 户组,则就为其定义一个私有的用户组,私有用户组得名称和用户名 相同。私有组可以转变成普通用户组,当把其他用户加入到一个私有 组中,私有组就转变成了普通用户组。 Linux操作系统中,与用户组有关的信息保存在/etc/ group和 /etc/ shadow这两个文件中。 三、与用户管理有关的配置文件 Linux操作系统中,与用户有关的信息保存在/etc/ passwd和 /etc/ shadow这两个文件中,与用户组有关的信息保存在/etc/ group 和/etc/ shadow这两个文件中。 3. 1/etc/passwd (1)关于/etc/ passwd /etc/ passwd是系统识别用户的一个文件。不准确的讲, /etc/ passwd操作系统的花名册,系统所有的用户都在这里有记载 当以 zhaodongfeng账号登录时,系统首先查阅/etc/ passwd文 件,判断是否有 zhaodongfeng账号,然后确定帐号的UID,之后通 过UID来确认用户和身份。系统中如果存在 zhaodongfeng账号,则 读取/etc/ shadow文件中所对应的 zhaodongfeng帐号的密码。如果 密码核实无误则登录系统成功,并开始读取用户的配置文件。 (2)/etc/ passwd的详细说明 在/etc/ passwd中,每一行都表示的是一个用户的信息。每一行 有7个段位,每个段位用:号分割。 查看系统的/etc/ passwd的文件内容,具体如下。 3l(anx操作系统》讲稿/河南中医学院/阮晓龙/ phactcm.edu.cn
3 《Linux 操作系统》讲稿 / 河南中医学院 / 阮晓龙 / rxl@hactcm.edu.cn 2.2 用户组(Group) 用户组(group)就是具有相同特征的用户(user)的集合体, 用户组是权限的容器。在 Linux 操作系统中,主要有三类用户组,分 别如下所示。 普通用户组:通常是由系统管理员创建的,可以指定加入多个用 户,加入的用户将继承用户组的权限。 系统用户组:该组内一般存放系统管理用户。 私有组:也称基本组。当创建用户时,如果没有为其指明所属用 户组,则就为其定义一个私有的用户组,私有用户组得名称和用户名 相同。私有组可以转变成普通用户组,当把其他用户加入到一个私有 组中,私有组就转变成了普通用户组。 Linux 操作系统中,与用户组有关的信息保存在/etc/group 和 /etc/gshadow 这两个文件中。 三、与用户管理有关的配置文件 Linux 操作系统中,与用户有关的信息保存在/etc/passwd 和 /etc/shadow 这两个文件中,与用户组有关的信息保存在/etc/group 和/etc/gshadow 这两个文件中。 3.1/etc/passwd (1)关于/etc/passwd /etc/passwd 是系统识别用户的一个文件。不准确的讲, /etc/passwd 操作系统的花名册,系统所有的用户都在这里有记载。 当以 zhaodongfeng 账号登录时,系统首先查阅/etc/passwd 文 件,判断是否有 zhaodongfeng 账号,然后确定帐号的 UID,之后通 过 UID 来确认用户和身份。系统中如果存在 zhaodongfeng 账号,则 读取/etc/shadow 文件中所对应的 zhaodongfeng 帐号的密码。如果 密码核实无误则登录系统成功,并开始读取用户的配置文件。 (2)/etc/passwd 的详细说明 在/etc/passwd 中,每一行都表示的是一个用户的信息。每一行 有 7 个段位,每个段位用:号分割。 查看系统的/etc/passwd 的文件内容,具体如下
zhaodongfeng Teach Server - S cat/etc/passwd daemon: x: 1: 1: daemon: /usr/sbin: /bin/sh bin x: 2: 2: bin: /bin: /bin/sh sync x: 4: 65534: sync: /bin: /bin/sync games: X: 5: 60: games: /usr/games: /bin/sh man x: 6: 12: man /var/cache/man: /bin/sh Ip x: 7: 7: lp: /var/spool/pd: /bin/sh mail: x: 8: 8 mail: /var/mail: /bin/sh news: x: 9: 9: news /var/spool/news: /bin/sh uucp: x: 10: 10: uucp: /var/spool/uucp: /bin/sl proxy x: 13: 13 proxy: /bin: /bin/sh www-data x: 33: 33 www-data /var/www /bin/sh backup: x: 34: 34: backup: /var/backups: /bin/sh list x: 38: 38: Mailing List Manager: /var/list: /bin/sh irc x: 39: 39: ircd: /var/run/ircd: /bin/sh gnats: x: 41: 41: Gnats Bug-Reporting System(admin): /var/lib/gnats: /bin/sh nobody: x: 65534: 65534: nobody: /nonexistent: /bin/sh libuuid x: 100: 101: /var/lib/libuuid: /bin/sh mysql: x: 102: 105: MySQL Server,,,: /nonexistent: /bin/false sshd: x: 103: 65534: /var/run/sshd: /usr/sbin/nologin zhaodongfeng x: 1000: 1000: zhaodongfeng, /home/zhaodongfeng: /bin/bash ftp: x: 104: 112: ftp daemon, /srvftp: /bin/false snmp: x: 105: 114: /var/lib/snmp: /bin/false zhaodongfeng@ Teach Server - S 说明如下 第一字段:用户名(也被称为登录名) 第二字段:口令,具体内容是一个字母x,其密码已被映射到 /etc/ shadow文件中。 第三字段:UID 第四字段:GID。 第五字段:用户名全称,这是可选的,可以不设置 第六字段:用户个人目录所在位置。 第七字段:用户所用 SHELL的类型。 (3)关于UID UID是用户的ID值,在操作系统中每个用户的UID值是唯一的 确切的说每个用户都要对应一个唯一的UID,UID的唯一性关系到系 4|am操作系统》讲稿/河南中医学院/阮晓龙/@phactcm.edu.cn
4 《Linux 操作系统》讲稿 / 河南中医学院 / 阮晓龙 / rxl@hactcm.edu.cn zhaodongfeng@TeachServer:~$ cat /etc/passwd root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh mail:x:8:8:mail:/var/mail:/bin/sh news:x:9:9:news:/var/spool/news:/bin/sh uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh proxy:x:13:13:proxy:/bin:/bin/sh www-data:x:33:33:www-data:/var/www:/bin/sh backup:x:34:34:backup:/var/backups:/bin/sh list:x:38:38:Mailing List Manager:/var/list:/bin/sh irc:x:39:39:ircd:/var/run/ircd:/bin/sh gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh nobody:x:65534:65534:nobody:/nonexistent:/bin/sh libuuid:x:100:101::/var/lib/libuuid:/bin/sh syslog:x:101:103::/home/syslog:/bin/false mysql:x:102:105:MySQL Server,,,:/nonexistent:/bin/false sshd:x:103:65534::/var/run/sshd:/usr/sbin/nologin zhaodongfeng:x:1000:1000:zhaodongfeng,,,:/home/zhaodongfeng:/bin/bash ftp:x:104:112:ftp daemon,,,:/srv/ftp:/bin/false snmp:x:105:114::/var/lib/snmp:/bin/false zhaodongfeng@TeachServer:~$ 说明如下: 第一字段:用户名(也被称为登录名) 第二字段:口令,具体内容是一个字母 x,其密码已被映射到 /etc/shadow 文件中。 第三字段:UID。 第四字段:GID。 第五字段:用户名全称,这是可选的,可以不设置。 第六字段:用户个人目录所在位置。 第七字段:用户所用 SHELL 的类型。 (3)关于 UID UID 是用户的 ID 值,在操作系统中每个用户的 UID 值是唯一的。 确切的说每个用户都要对应一个唯一的 UID,UID 的唯一性关系到系
统的安全。系统管理员应该确保这一规则 系统用户的UID的值从0开始,是一个正整数,至于最大值可以 在/etc/ login.defs可以查到,一般 Linux发行版约定为60000。在 Linux操作系统中,root的UID是0,拥有系统最高权限。 UID是确认用户权限的标识,用户登录系统所属的角色是通过 UID来实现的,而非用户名,因此把几个用户共用一个UID是危险的 UID的唯一性是需要管理员人为保障的,因为管理员可以通过修 改/etc/ passwd文件来修改任何用户的UID的值。通常情况下, Linux 发行版都会预留一定的UID和GID给系统虚拟用户占用。例如, Fedora 系统会把前499个UID和GID预留,管理员自行添加新用户时的UID 和GID从500开始。在 Linux操作系统中,系统通过/etc/ login.defs 文件的 UID MIN选项指定UID和GID的最小值。 3. 2/etc/shadow (1)关于/etc/ shadow /etc/ shadow文件是/etc/ passwd的影子文件,这个文件不是由 /etc/ passwd产生的。/etc/ shadow和/ec/ passwd是对应互补的。 /etc/ shadow文件内容包括了用户名及被加密的密码以及其它在 /etc/ passwd中没有包括的用户信息。比如用户的有效期限、密码过 期时间等。/etc/ shadow文件的读取和修改需要root权限。 (2)/etc/ shadow的详细说明 /etc/ shadow文件的内容包括9个段位,每个段位之间用:号分 割。 查看系统的/etc/ shadow的文件内容,具体如下。 zhaodongfeng TeachServer -S sudo cat /etc/shadow sudo] password for zhaodongfeng root:!:15023:099999:7 daemon:*:15023:0:999997 bin:*:15023:0:99999:7 sys:*:15023:0:999997 sync:*:15023.0:999997 games:*:15023:0:999997: man:*:15023:099999:7 lp:*:15023:0:99999 mail:*:15023:0:99999:7: 5|am操作系统》讲稿/河南中医学院/阮晓龙/ phactcm.edu.cn
5 《Linux 操作系统》讲稿 / 河南中医学院 / 阮晓龙 / rxl@hactcm.edu.cn 统的安全。系统管理员应该确保这一规则。 系统用户的 UID 的值从 0 开始,是一个正整数,至于最大值可以 在/etc/login.defs 可以查到,一般 Linux 发行版约定为 60000。在 Linux 操作系统中,root 的 UID 是 0,拥有系统最高权限。 UID 是确认用户权限的标识,用户登录系统所属的角色是通过 UID 来实现的,而非用户名,因此把几个用户共用一个 UID 是危险的。 UID 的唯一性是需要管理员人为保障的,因为管理员可以通过修 改/etc/passwd 文件来修改任何用户的 UID 的值。通常情况下,Linux 发行版都会预留一定的UID和 GID给系统虚拟用户占用。例如,Fedora 系统会把前 499 个 UID 和 GID 预留,管理员自行添加新用户时的 UID 和 GID 从 500 开始。在 Linux 操作系统中,系统通过/etc/login.defs 文件的 UID_MIN 选项指定 UID 和 GID 的最小值。 3.2/etc/shadow (1)关于/etc/shadow /etc/shadow 文件是/etc/passwd 的影子文件,这个文件不是由 /etc/passwd 产生的。/etc/shadow 和/etc/passwd 是对应互补的。 /etc/shadow文件内容包括了用户名及被加密的密码以及其它在 /etc/passwd 中没有包括的用户信息。比如用户的有效期限、密码过 期时间等。/etc/shadow 文件的读取和修改需要 root 权限。 (2)/etc/shadow 的详细说明 /etc/shadow 文件的内容包括 9 个段位,每个段位之间用:号分 割。 查看系统的/etc/shadow 的文件内容,具体如下。 zhaodongfeng@TeachServer:~$ sudo cat /etc/shadow [sudo] password for zhaodongfeng: root:!:15023:0:99999:7::: daemon:*:15023:0:99999:7::: bin:*:15023:0:99999:7::: sys:*:15023:0:99999:7::: sync:*:15023:0:99999:7::: games:*:15023:0:99999:7::: man:*:15023:0:99999:7::: lp:*:15023:0:99999:7::: mail:*:15023:0:99999:7:::
news:*:15023:0:999997: uucp*:15023:099997: proxy:*:15023:0:999997 www-data:*:15023:0:999997: backup:*:15023:099997 list:*:15023:0:99999:7: irc:*:15023:0:99999:7: gnats:*:15023:0:99997 nobody:*:150230:9997 libuuid:!:15023:0:999997: syslog:*:15023:0:99997 mysq!:15023:0:99997 hd:*:15023:0:999997: zhaodongfeng: $6SUUOEeci2SjOM40b76bGjbezGf7zqDSyAoFN68GCvjRUtcB9 wUUZ7. wkPQol2NN8yubehoQhv4spkj Kp2JIrHCRjXSjOAkZ0: 15023: 0: 99999: 7 ftp:*:15031:0:99999 snmp:*:152450:999997 zhaodongfeng@ Teach Server S 说明如下。 第一字段:用户名(也被称为登录名),在/etc/ shadow中,用 户名和/etc/ passwd是相同的,这样就把 passwd和 shadow中用的用 户记录联系在一起,这个字段是非空的。 第二字段:密码(已被加密),如果是有些用户在这段是x,表 示这个用户不能登录到系统,这个字段是非空的 第三字段:上次修改口令的时间。这个时间是从1970年01月 01日算起到最近一次修改口令的时间间隔(天数)。 第四字段:两次修改口令间隔最少的天数,如果设置为0,则表 示禁用此功能。此项功能对于提高系统的安全性有重要的意义。其默 认值是通过/etc/ login.defs文件的 PASS MIN DAYS选项进行定义 第五字段:两次修改口令间隔最多的天数,也就是所谓的口令有 效期。此功能增强了操作系统用户管理口令的时效性,对于提高系统 的安全性有重要的意义。其默认值是通过/etc/ login.defs文件的 PASS MAX DAYS选项进行定义 第六字段:提前多少天警告用户口令将过期。当用户登录系统后, 系统登录程序提醒用户口令将要在多少天内作废。其默认值是通过 /etc/ login.defs文件的PASS_ WARN AGE选项进行定义。 6《Linux操作系统》讲稿/河南中医学院/阮晓龙/rx@hactcm.edu.cn
6 《Linux 操作系统》讲稿 / 河南中医学院 / 阮晓龙 / rxl@hactcm.edu.cn news:*:15023:0:99999:7::: uucp:*:15023:0:99999:7::: proxy:*:15023:0:99999:7::: www-data:*:15023:0:99999:7::: backup:*:15023:0:99999:7::: list:*:15023:0:99999:7::: irc:*:15023:0:99999:7::: gnats:*:15023:0:99999:7::: nobody:*:15023:0:99999:7::: libuuid:!:15023:0:99999:7::: syslog:*:15023:0:99999:7::: mysql:!:15023:0:99999:7::: sshd:*:15023:0:99999:7::: zhaodongfeng:$6$UU0Eeci2$jOM4Ob76bGjbezGf7zqDSyAoFN68GCvjRUtcB9 wUUz7.wkPQo12NN8yubeh0Qhv4spkjKp2JIrHCRjXsj0AkZ0:15023:0:99999:7::: ftp:*:15031:0:99999:7::: snmp:*:15245:0:99999:7::: zhaodongfeng@TeachServer:~$ 说明如下。 第一字段:用户名(也被称为登录名),在/etc/shadow 中,用 户名和/etc/passwd 是相同的,这样就把 passwd 和 shadow 中用的用 户记录联系在一起,这个字段是非空的。 第二字段:密码(已被加密),如果是有些用户在这段是 x,表 示这个用户不能登录到系统,这个字段是非空的。 第三字段:上次修改口令的时间。这个时间是从 1970 年 01 月 01 日算起到最近一次修改口令的时间间隔(天数)。 第四字段:两次修改口令间隔最少的天数,如果设置为 0,则表 示禁用此功能。此项功能对于提高系统的安全性有重要的意义。其默 认值是通过/etc/login.defs 文件的 PASS_MIN_DAYS 选项进行定义。 第五字段:两次修改口令间隔最多的天数,也就是所谓的口令有 效期。此功能增强了操作系统用户管理口令的时效性,对于提高系统 的安全性有重要的意义。其默认值是通过/etc/login.defs 文件的 PASS_MAX_DAYS 选项进行定义。 第六字段:提前多少天警告用户口令将过期。当用户登录系统后, 系统登录程序提醒用户口令将要在多少天内作废。其默认值是通过 /etc/login.defs 文件的 PASS_WARN_AGE 选项进行定义
第七字段:在口令过期之后多少天禁用此用户。此字段表示用 口令作废多少天后,系统会禁用此用户。用户禁用后,将无法登陆系 统且无法进行口令修改。 第八字段:用户过期日期。此字段指定了用户过期的天数(从 1970年的1月1日开始的天数),如果这个字段的值为空,帐号永远 不过期 第九字段:保留字段,目前为空,以备将来 Linux发展之用。 可以使用 man shadow命令来查看帮助,从而获得更为详尽的资 3. 3/etc/group (1)关于/etc/ group /etc/ group文件是用户组的配置文件,内容包括用户和用户组, 并且能显示出用户是归属哪个用户组或哪几个用户组。一个用户可以 归属一个或多个不同的用户组,同一用户组的用户之间具有相似的特 征 用户组在系统管理中为系统管理员提供了极大的方便,但安全性 方面也存在一定的问题。如某个用户对系统管理有重要的权限,那就 最好让用户拥有独立的用户组,或者是把用户下的文件的权限设置为 完全私有,从而确保不会因为用户组的权限继承特性造成其他用户也 越权得到管理权限。特别需要说明的是,root用户组通常不要把普 通用户加入进去,以防止普通用户拥有root权限。 (2)/etc/ group的详细说明 /etc/ group内容包括用户组( Group)、用户组口令、GID及该用 户组所包含的用户(User),每个用户组一条记录。 查看系统/etc/ group的文件内容,具体如下。 zhaodongfeng@ Teach Server: S cat /etc/group daemon: adm x: 4 zhaodongfeng tty: x: 5 disk x: 6 7|(am操作系统》讲稿/河南中医学院/阮晓龙/@phactcm.edu.cn
7 《Linux 操作系统》讲稿 / 河南中医学院 / 阮晓龙 / rxl@hactcm.edu.cn 第七字段:在口令过期之后多少天禁用此用户。此字段表示用户 口令作废多少天后,系统会禁用此用户。用户禁用后,将无法登陆系 统且无法进行口令修改。 第八字段:用户过期日期。此字段指定了用户过期的天数(从 1970 年的 1 月 1 日开始的天数),如果这个字段的值为空,帐号永远 不过期; 第九字段:保留字段,目前为空,以备将来 Linux 发展之用。 可以使用 man shadow 命令来查看帮助,从而获得更为详尽的资 料。 3.3/etc/group (1)关于/etc/group /etc/group文件是用户组的配置文件,内容包括用户和用户组, 并且能显示出用户是归属哪个用户组或哪几个用户组。一个用户可以 归属一个或多个不同的用户组,同一用户组的用户之间具有相似的特 征。 用户组在系统管理中为系统管理员提供了极大的方便,但安全性 方面也存在一定的问题。如某个用户对系统管理有重要的权限,那就 最好让用户拥有独立的用户组,或者是把用户下的文件的权限设置为 完全私有,从而确保不会因为用户组的权限继承特性造成其他用户也 越权得到管理权限。特别需要说明的是,root 用户组通常不要把普 通用户加入进去,以防止普通用户拥有 root 权限。 (2)/etc/group 的详细说明 /etc/group 内容包括用户组(Group)、用户组口令、GID 及该用 户组所包含的用户(User),每个用户组一条记录。 查看系统/etc/group 的文件内容,具体如下。 zhaodongfeng@TeachServer:~$ cat /etc/group root:x:0: daemon:x:1: bin:x:2: sys:x:3: adm:x:4:zhaodongfeng tty:x:5: disk:x:6:
l:x:8 cdrom x: 24: zhaodongfeng flo www-data x: 33 tx:38: 39 shadow x: 42 sI: x: 45 nogroup: x: 65534 libuuid x: 101 crontab x: 102 syslog: x: 103 fuse.x: 104 ysql x: 10 ssh x: 107 ssI-cert. x: 108 haodongfeng: x: 100 109: zhaodong sambashare: x: 110 zhaodongfeng admin: x: 111 zhaodongfeng tempter: x: 113 ftp: x: 112 ftp 8《Linux操作系统》讲稿/河南中医学院/阮晓龙/rx@hatem.edu.cn
8 《Linux 操作系统》讲稿 / 河南中医学院 / 阮晓龙 / rxl@hactcm.edu.cn lp:x:7: mail:x:8: news:x:9: uucp:x:10: man:x:12: proxy:x:13: kmem:x:15: dialout:x:20:zhaodongfeng fax:x:21: voice:x:22: cdrom:x:24:zhaodongfeng floppy:x:25: tape:x:26: sudo:x:27: audio:x:29: dip:x:30: www-data:x:33: backup:x:34: operator:x:37: list:x:38: irc:x:39: src:x:40: gnats:x:41: shadow:x:42: utmp:x:43: video:x:44: sasl:x:45: plugdev:x:46:zhaodongfeng staff:x:50: games:x:60: users:x:100: nogroup:x:65534: libuuid:x:101: crontab:x:102: syslog:x:103: fuse:x:104: mysql:x:105: mlocate:x:106: ssh:x:107: ssl-cert:x:108: zhaodongfeng:x:1000: lpadmin:x:109:zhaodongfeng sambashare:x:110:zhaodongfeng admin:x:111:zhaodongfeng utempter:x:113: ftp:x:112:ftp
snmp x: 114 zhaodongfeng a Teach Server - S 说明如下。 第一字段:用户组名称。 第二字段:用户组密码。 第三字段:GID。 第四字段:用户列表,每个用户之间用,号分割。该字段可以为 空,如果字段为空表示用户组为GID的用户名 (3)关于GID GID和UID类似,是一个正整数或0。GID从0开始,GID为0的 组让系统赋予给root用户组。 inux系统会预留一些较靠前的GID给系统虚拟用户使用,每个 系统预留的GID都有所不同。系统添加用户组默认的GID范围在 /etc/ login.defs文件中通过 GID MIN和 GID MAX两个选项进行定义。 3.4/etc/shadow (1)关于/etc/ shadow /etc/ gshado是/etc/ group的加密文件,用户组( Group)管理 的密码就是存放在这个文件中。/etc/ shadow和/etc/ group是互补 的两个文件。 (2)/etc/ shadow的详细说明 查看系统/etc/ shodow的文件内容,具体如下。 zhaodongfeng @Teach Server -S sudo cat /etc/shadow [sudo] password for zhaodongfeng daemon adm: * zhaodongfeng disk.* 9|am操作系统》讲稿/河南中医学院/阮晓龙/pemn
9 《Linux 操作系统》讲稿 / 河南中医学院 / 阮晓龙 / rxl@hactcm.edu.cn snmp:x:114: zhaodongfeng@TeachServer:~$ 说明如下。 第一字段:用户组名称。 第二字段:用户组密码。 第三字段:GID。 第四字段:用户列表,每个用户之间用,号分割。该字段可以为 空,如果字段为空表示用户组为 GID 的用户名 (3)关于 GID GID 和 UID 类似,是一个正整数或 0。GID 从 0 开始,GID 为 0 的 组让系统赋予给 root 用户组。 Linux 系统会预留一些较靠前的 GID 给系统虚拟用户使用,每个 系统预留的 GID 都有所不同。系统添加用户组默认的 GID 范围在 /etc/login.defs文件中通过GID_MIN和GID_MAX两个选项进行定义。 3.4/etc/gshadow (1)关于/etc/gshadow /etc/gshado 是/etc/group 的加密文件,用户组(Group)管理 的密码就是存放在这个文件中。/etc/gshadow 和/etc/group 是互补 的两个文件。 (2)/etc/gshadow 的详细说明 查看系统/etc/gshodow 的文件内容,具体如下。 zhaodongfeng@TeachServer:~$ sudo cat /etc/gshadow [sudo] password for zhaodongfeng: root:*:: daemon:*:: bin:*:: sys:*:: adm:*::zhaodongfeng tty:*:: disk:*:: lp:*:: mail:*:: news:*:: uucp:*::
proxy cdrom. zhaodongfeng flo operator: h nogroup crontab: l locate ssh: I ssI-cert haodongfeng Ipadmin: ! Zhaodongfeng sambashare ! . zhaodongfeng tempter haodongfeng a Teach Server - S 10《LInux操作系统》讲稿/河南中医学院/阮晓龙/rl@hactcm.edu.cn
10 《Linux 操作系统》讲稿 / 河南中医学院 / 阮晓龙 / rxl@hactcm.edu.cn man:*:: proxy:*:: kmem:*:: dialout:*::zhaodongfeng fax:*:: voice:*:: cdrom:*::zhaodongfeng floppy:*:: tape:*:: sudo:*:: audio:*:: dip:*:: www-data:*:: backup:*:: operator:*:: list:*:: irc:*:: src:*:: gnats:*:: shadow:*:: utmp:*:: video:*:: sasl:*:: plugdev:*::zhaodongfeng staff:*:: games:*:: users:*:: nogroup:*:: libuuid:!:: crontab:!:: syslog:!:: fuse:!:: mysql:!:: mlocate:!:: ssh:!:: ssl-cert:!:: zhaodongfeng:!:: lpadmin:!::zhaodongfeng sambashare:!::zhaodongfeng admin:!::zhaodongfeng utempter:!:: ftp:!::ftp snmp:!:: zhaodongfeng@TeachServer:~$