题目描述
创建用户帐户
创建下列用户、组和组成员资格:
名为 sysmgrs 的组
用户 natasha, 作为次要组从属于 sysmgrs
用户 harry, 作为次要组还从属于 sysmgrs
用户 sarah, 无权访问系统上的交互式 shell 且不是 sysmgrs 的成员natasha, harry 和 sarah 的密码应当都是 flectrag
核心命令
groupadd [组名] useradd [用户名] -G [组名] useradd [用户名] -s /sbin/nologin echo [密码] | passwd --stdin [用户名] passwd [用户名]
操作过程
创建名为 sysmgrs 的组,具体命令如下:
groupadd sysmgrs
创建用户 natasha 和 harry, 并使之从属于次要组 sysmgrs, 具体命令如下:
useradd natasha -G sysmgrs useradd harry -G sysmgrs
注:
①
-G参数可以为用户指定多个从属组,这些组也被称为“次要组”;②
-g参数用于为用户指定唯一的一个起始组,起始组也被称为“主组”。
创建用户 sarah 并使其无法访问系统上的交互式 Shell, 同时,用户 sarah 不属于组 sysmgrs, 具体命令如下:
useradd sarah -s /sbin/nologin
注:
① Shell 就是人类用户与操作系统进行交互的外壳,在一般情况下,系统账户默认使用的 Shell 都是
/bin/bash;② 如果要不允许一个系统用户使用交互式的 Shell, 可以在创建该用户时,使用
-s参数将其使用的 Shell 指定为/sbin/nologin或者更严格的/bin/false. 如果不知道/sbin/nologin怎么写,可以在/etc/passwd中查看。③ 不允许一个系统用户使用交互式的 Shell, 并不意味着该用户不可以使用系统资源,我们只是无法使用没有交互式 Shell 的用户账号执行系统登陆等人机交互式操作。
为用户 natasha, harry 和 sarah 指定密码为 flectrag:
echo flectrag | passwd --stdin natasha echo flectrag | passwd --stdin harry echo flectrag | passwd --stdin sarah
注:
①
--stdin中的stdin来自 “Standard Input”, 即“标准输入”,该参数用于从标准输入管道读入新密码;
虽然借助管道 | 设置密码的方式比较方便,但如果不加处理会被 history 命令查询出所设置的密码,因此上述设置用户密码的方式存在安全隐患,为此,我们可以使用如下命令为用户逐一设置密码:
passwd natasha passwd harry passwd sarah
至此,我们就完成了本题。