6 使用 YaST 管理用户 #
在安装期间,您可能已为系统创建了本地用户。使用 YaST 模块
可以添加用户,或编辑现有用户。它还可让您配置系统,以便在网络服务器上对用户进行身份验证。6.1 用户和组管理对话框 #
要管理用户或组,请启动 YaST 并单击sudo
yast2 users &
来直接启动 对话框。
每个用户都指派有一个系统范围的用户 ID (UID)。除了可以登录到计算机的用户之外,系统还提供了几个仅供内部使用的系统用户。每位用户都会被指派到一个或多个组中。与系统用户类似,还存在仅供内部使用的系统组。
根据您选择查看和修改的用户集(本地用户、网络用户、系统用户),主窗口会显示几个选项卡。这些选项卡可用于执行以下任务:
- 管理用户帐户
从第 6.2 节 “管理用户帐户”所述)。在第 6.3 节 “其他用户帐户选项”中了解高级选项,例如强制实施口令策略、使用加密的主目录或管理磁盘配额。
选项卡中,创建、修改、删除或临时禁用用户帐户(如- 更改默认设置
本地用户帐户是根据第 6.4 节 “更改本地用户的默认设置”可以了解到如何更改默认组指派或用户主目录的默认路径和访问权限。
选项卡中定义的设置创建的。通过- 将用户指派到组
通过第 6.5 节 “将用户指派到组”可以了解到如何为单个用户更改组指派。
- 管理组
从第 6.6 节 “管理组”以获取有关如何进行此操作的信息。
选项卡中,可以添加、修改或删除现有组。请参见- 更改用户身份验证方法
如果您的计算机已连接到提供了 NIS 或 LDAP 之类的用户身份验证方法的网络上,您可以在第 6.7 节 “更改用户身份验证方法”。
选项卡上的若干身份验证方法中进行选择。有关详细信息,请参见
对于用户和组管理,此对话框提供了类似的功能。通过在此对话框顶部选择适当的选项卡可以轻松地在用户和组管理视图间切换。
使用过滤器选项可定义要修改的一组用户或组:在
或 选项卡上,单击 可查看和编辑用户或组。系统会根据 或 等特定类别(如果适用)列出用户或组。通过 › ,您也可以设置和使用自定义过滤器。此对话框可能不会提供以下所有选项和功能,具体取决于您选择的过滤器。
6.2 管理用户帐户 #
YaST 可让您创建、修改、删除或暂时禁用用户帐户。除非您是有经验的用户或管理员,否则不要修改用户帐户。
文件所有权与用户 ID,而非用户名绑定在一起。用户 ID 更改后,此用户的用户主目录中的文件会自动调整,以反映出此更改。但是,ID 更改后,此用户就不再拥有其在文件系统的其他位置创建的文件的所有权,除非手动更改这些文件的所有权。
下列说明演示了如何设置默认用户帐户。有关其他选项,请参见第 6.3 节 “其他用户帐户选项”。
打开 YaST
对话框并单击 选项卡。使用
定义要管理的用户集。对话框中会列出系统中的用户以及用户所属的组。要修改现有用户选项,请选择某一条目并单击
。要创建新的用户帐户,请单击
。在第个张选项卡上输入合适的用户数据,如
(用于登录)和 。这些数据足以创建新用户。如果此时单击 ,系统会自动分配用户 ID 并将所有其他值设置为默认值。若要将系统通知递送到该用户的邮箱,请激活
。这样,就会为root
创建邮件别名,用户无需先以root
身份登录便可阅读系统邮件。系统服务发送的邮件存储在本地邮箱
/var/spool/mail/
USERNAME 中,其中 USERNAME 是所选用户的登录名。要阅读电子邮件,可以使用mail
命令。要调整其他细节(如用户 ID 或用户主目录的路径),可在
选项卡上进行。如果需要重新定位现有用户的用户主目录,请在该选项卡中输入新的用户主目录路径,并使用
移动当前用户主目录的内容。否则,不会使用任何的现有数据来创建新的用户主目录。要强制用户以常规方式更改口令或设置其他口令选项,请切换到第 6.3.2 节 “强制实施口令策略”。
并调整选项。有关详细信息,请参考如果已按照需要设置了所有选项,请单击
。单击
以关闭管理对话框并保存更改。此时,新添加的用户可以使用您创建的登录名和口令登录系统。或者,要保存所有更改且不退出
对话框,请单击 › 。
root
帐户
虽然从技术上来说可以对 root
帐户重命名,但特定应用程序、脚本或第三方产品可能需要名为 root
的用户存在才能正常运行。虽然这样的配置始终针对的是个别环境,但供应商更新可能会覆盖必要的调整,因此这变成了一项需要持续执行的任务,而不是一次性设置。在涉及到第三方应用程序的复杂设置中更是如此。在这些设置中,需要向涉及的每个供应商校验是否支持重命名 root
帐户。
由于无法预见重命名 root
帐户造成的后果,SUSE 不支持重命名 root
帐户。
通常,重命名 root
帐户背后的理念是隐藏该帐户或使其不可预测。但是,/etc/passwd
要求普通用户具有 644
权限,因此系统的任何用户都能获得用户 ID 0 的登录名。如果要使用更好的方法来保护 root
帐户的安全,请参见第 14.5 节 “限制 root
登录”和第 14.5.3 节 “限制 SSH 登录”。
将(本地)用户 ID 与网络中的 ID 进行匹配会很有用。例如,应该将便携式计算机上的新(本地)用户集成到包含相同用户 ID 的网络环境中。这样可确保用户“脱机”创建的文件的所有权和其直接在网络上创建的文件的所有权相同。
打开 YaST
对话框并单击 选项卡。要在不删除用户帐户的情况下临时禁用该帐户,请从列表中选择该用户并单击
。激活 。再次启用该帐户之前,此用户不能登录您的计算机。要删除用户帐户,请从列表中选择该用户并单击
。选择您是要删除用户的主目录还是保留该数据。
6.3 其他用户帐户选项 #
除了默认用户帐户的设置外,SUSE® Linux Enterprise Desktop 还提供了其他选项。例如,用于强制实施口令策略、使用加密的主目录,或者为用户和组定义磁盘配额的选项。
6.3.1 自动登录和无口令登录 #
如果使用的是 GNOME 桌面环境,则可为特定用户配置自动登录,为所有用户配置无口令登录。自动登录使用户在引导时自动登录到桌面环境。一次只能为一位用户激活此功能。使用无口令登录可以让用户在登录管理器中输入其用户名后直接登录系统。
在多人可以访问的计算机上启用自动登录或无口令登录具有一定的安全性风险。无需身份验证,任何用户都能访问您的系统和数据。如果系统包含机密数据,请勿使用此功能。
要激活自动登录或无口令登录,请通过 YaST
中的 › 来访问这些功能。6.3.2 强制实施口令策略 #
在有多个用户的系统上,最好至少强制实施基本的口令安全性策略。用户应该定期更改其口令并使用不能轻易识破的可靠口令。对于本地用户,请执行以下操作:
打开 YaST
对话框并选择 选项卡。选择用户并单击
。切换至
选项卡。用户的上次口令更改会显示在该选项卡上。要让用户在下次登录时更改其密码,请激活
。要实施口令转换,请设置
和 。要在口令失效前提醒用户更改口令,请为
设置数值。要限制密码失效后用户可以登录的时间周期,请更改
中的值。您也可为整个帐户指定一个特定的失效日期。输入格式为 YYYY-MM-DD 的
。此设置与口令无关,而是应用于帐户本身。有关选项和默认值的详细信息,请单击
。单击
应用您的更改。
6.3.3 管理配额 #
为了防止系统容量在没有通知的情况下耗尽,系统管理员可以为用户或组设置配额。可以为一个或多个文件系统定义配额,该配额限制可使用的磁盘空间量和可在该处创建的 inode(索引节点)数。Inode 是文件系统上的一种数据结构,用于存储普通文件、目录或其他文件系统对象的基本信息。该结构会存储文件系统对象的所有属性(如用户和组所有权、读取、写入或执行权限),但不会存储文件名和内容。
SUSE Linux Enterprise Desktop 允许使用 soft
和 hard
配额。另外,可以定义宽限间隔,允许用户或组暂时超出配额一定的数量。
- 软配额
定义一个警告级别,用于在接近限制时告知用户。管理员可能会要求用户清理并减少分区上的数据。软配额限制通常低于硬配额限制。
- 硬配额
定义一个限制,达到此限制时拒绝写入请求。如果达到了硬配额,则不再可以储存数据,并且应用程序可能会崩溃。
- 宽限期
定义在超出软配额之后,经过多长时间再发出警告。通常设置为一个相当小的值,例如一小时或数小时。
要为特定用户和组配置配额,需要先在 YaST 专家分区程序中为相应的分区启用配额支持。
在 YaST 中,选择
› 并单击 以继续。在
中,选择要启用配额的分区并单击 。单击
并激活 。如果尚未安装quota
软件包,当您单击 确认相应的消息时,系统就会安装该软件包。确认您的更改,然后离开
。输入以下命令确保
quotaon
服务正在运行:>
sudo
systemctl status quotaon.service它应该标记为处于
active
状态。如果情况并非如此,请使用命令systemctl start quotaon.service
将其启动。
现在,您可以为特定用户或组设置软配额或硬配额,并可设置时间周期作为宽限间隔。
在 YaST
中,选择想要设置配额的用户或组并单击 。在
选项卡上,选择 项,并单击 打开 对话框。从
中,选择应应用配额的分区。在
下,限制磁盘空间量。请输入用户或组在此分区上可拥有的大小为 1 KB 的块数。指定 和 值。另外,也可限制用户或组在分区上可拥有的 inode 数。在
中,输入 和仅当用户或组已超出指定的大小或 inode 软限制时,才能定义宽限间隔。否则,与时间有关的文本框不会处于激活状态。指定允许用户或组超出以上设置的限制的时间周期。
单击
确认您的设置。单击
以关闭管理对话框并保存更改。或者,要保存所有更改且不退出
对话框,请单击 › 。
SUSE Linux Enterprise Desktop 还随附了 repquota
或 warnquota
等命令行工具。系统管理员可以使用这些工具来控制磁盘用量,或者向超出配额的用户发送电子邮件通知。管理员也可使用 quota_nld
向 D-BUS 转发与已超出配额有关的内核消息。有关详细信息,请参见 repquota
、warnquota
和 quota_nld
手册页。
6.4 更改本地用户的默认设置 #
创建新的本地用户时,YaST 将使用几个默认设置。例如,这些设置包括用户所属的组或用户主目录的访问权限。您可以更改这些默认设置来满足要求:
打开 YaST
对话框并选择 选项卡。要更改新用户应自动隶属的组,请从
中选择另一个组。如果不想使用
/home/USERNAME
作为新用户主目录的默认路径,请修改 。要更改新建用户主目录的默认权限模式,请调整第 19 章 “Linux 中的访问控制列表”和
中的权限掩码值。有关权限掩码的详细信息,请参见umask
手册页。有关各个选项的信息,请单击
。单击
应用您的更改。
6.5 将用户指派到组 #
系统会根据默认设置将本地用户分配给数个组。您可从第 6.4 节 “更改本地用户的默认设置”。
对话框中的 选项卡访问默认设置。通过以下内容可以了解到修改单个用户的组指派的方法。如需更改新用户的默认组指派,请参见打开 YaST
对话框并单击 选项卡。该选项卡会列出用户及用户所属的组。单击
并切换到 选项卡。要更改用户所属的组,请单击
并从列表中选择该组。要将用户指派给其他次组,请在
列表中激活对应的复选框。单击
以应用您的更改。单击
以关闭管理对话框并保存更改。或者,要保存所有更改且不退出
对话框,请单击 › 。
6.6 管理组 #
使用 YaST 还能轻松添加、修改或删除组。
要删除一个组,该组中不得包含任何组成员。要删除某个组,请从列表中选择该组并单击
。单击 以关闭管理对话框并保存更改。或者,要保存所有更改且不退出 对话框,请单击 › 。6.7 更改用户身份验证方法 #
如果计算机已连接到网络,您可以更改身份验证方法。下列选项可用:
- NIS
在 NIS 服务器上对网络中的所有系统进行集中用户管理。有关详细信息,请参见第 3 章 “使用 NIS”。
- SSSD
系统安全服务守护程序 (SSSD) 可在本地缓存用户数据,并可让用户使用这些数据,即使实际目录服务(暂时)不可访问时也不例外。有关详细信息,请参见第 4.2 节 “SSSD”。
- Samba
在 Linux 和 Windows 混用的网络中经常使用 SMB 身份验证。有关详细信息,请参见第 7 章 “Active Directory 支持”。
要更改身份验证方法,请执行以下操作:
打开 YaST 中的
对话框。单击
选项卡以显示可用身份验证方法和当前设置的概述。要更改身份验证方法,请单击
并选择想要修改的身份验证方法。随后您将直接转到 YaST 中的客户端配置模块。有关相应客户端配置的信息,请参见以下部分:NIS:: 第 3.2 节 “配置 NIS 客户端”
LDAP: 第 4.1 节 “使用 YaST 配置身份验证客户端”
SSSD: 第 4.2 节 “SSSD”
接受配置后,请返回到
概述。单击
以关闭管理对话框。
6.8 默认系统用户 #
SUSE Linux Enterprise Desktop 默认会创建一些不可删除的用户名。通常在 Linux Standard Base 中定义这些用户。下面的列表提供了常见用户名及其用途:
bin
,daemon
旧式用户,为了与旧式应用程序兼容而提供。新式应用程序应该不再使用此用户名。
gdm
GNOME 显示管理器守护程序 (GDM) 使用此用户名来提供图形登录,以及管理本地和远程显示内容。
lp
由通用 Unix 打印系统 (CUPS) 的打印机守护程序使用。
mail
为
sendmail
或postfix
等邮件程序预留的用户。man
由 man 用来访问手册页。
messagebus
用于访问 D-Bus(桌面总线,用于进程间通讯的软件总线)。守护程序是
dbus-daemon
。nobody
不拥有任何文件且属于无权限组的用户。目前,其用途有限,因为 Linux Standard Base 建议为每个守护程序提供单独的用户帐户。
nscd
由名称服务缓存守护程序使用。此守护程序是用于改善 NIS 和 LDAP 性能的查找服务。守护程序是
nscd
。polkitd
由 PolicyKit 授权框架使用,该框架用于定义和处理非特权进程的授权请求。守护程序是
polkitd
。postfix
由 Postfix 邮件程序使用。
pulse
由 Pulseaudio 声音服务器使用。
root
由提供所有适当权限的系统管理员使用。
rpc
由
rpcbind
命令(RPC 端口映射器)使用。rtkit
由提供 D-Bus 系统服务以实现实时调度模式的 rtkit 软件包使用。
salt
Salt 提供的并行远程执行的用户。守护程序名为
salt-master
。scard
用于与智能卡和读卡器通讯的用户。守护程序名为
pcscd
。srvGeoClue
GeoClue D-Bus 服务使用它来提供位置信息。
sshd
安全外壳守护程序 (SSH) 使用它来确保在非安全网络上进行安全的加密通讯。
statd
rpc.statd
守护程序中实施的网络状态监控协议 (NSM) 使用它来侦听重引导通知。systemd-coredump
/usr/lib/systemd/systemd-coredump
命令使用它来获取、保存和处理核心转储。systemd-timesync
/usr/lib/systemd/systemd-timesyncd
命令使用它将本地系统时钟与远程网络时间协议 (NTP) 服务器同步。
6.9 默认系统组 #
默认情况下,SLE 会创建多个供系统服务使用的用户组。下面列出了一些示例,其中有些是必需的组,有些是常见的可选组。
root
具有所有权限的管理组。
bin
为了与旧版应用程序兼容而提供。新应用程序不应使用此组。
daemon
以前用于限制守护程序对系统的访问。守护程序现在应使用各自的 UID/GID 运行,以便相互区分。
audio
音频设备的权限。
gdm
GNOME 显示管理器的权限。
chrony
时间同步服务的权限。
kvm
QEMU 计算机模拟器工具包的权限。
libvirt
虚拟化堆栈的权限。
lp
打印机操作的权限。
mail
邮件服务的权限。
man
特定于手册页和
man
命令的权限。sshd
SSH 通讯协议守护程序的权限。