郑州仿站定制模板建站,门户网站内容管理系统,国外访问国内网站速度,手机百度搜索引擎【BASH】回顾与知识点梳理 二十六 二十六. 二十一至二十五章知识点总结及练习26.1 总结26.2 模拟26.3 简答题 该系列目录 -- 【BASH】回顾与知识点梳理#xff08;目录#xff09;
二十六. 二十一至二十五章知识点总结及练习
26.1 总结
Linux 操作系统上面#xff0c… 【BASH】回顾与知识点梳理 二十六 二十六. 二十一至二十五章知识点总结及练习26.1 总结26.2 模拟26.3 简答题 该系列目录 -- 【BASH】回顾与知识点梳理目录
二十六. 二十一至二十五章知识点总结及练习
26.1 总结
Linux 操作系统上面关于账号与群组其实记录的是 UID/GID 的数字而已使用者的账号/群组与 UID/GID 的对应参考 /etc/passwd 及 /etc/group 两个文件/etc/passwd 文件结构以冒号隔开共分为七个字段分别是『账号名称、密码、UID、GID、全名(注释)、家目录、shell』UID 只有 0 与非为 0 两种0为root非为 0 则为一般账号。一般账号又分为系统账号 (1~999) 及可登入者账号(大于 1000)账号的密码已经移动到 /etc/shadow 文件中该文件权限为仅有 root 可以更动。该文件分为九个字段内容为『 账号名称、加密密码、密码更动日期、密码最小可变动日期、密码最大需变动日期、密码过期前警告日数、密码失效天数、 账号失效日、保留未使用』使用者可以支持多个群组其中在新建文件时会影响新文件群组者为有效群组。而写入 /etc/passwd 的第四个字段者 称为初始群组。与使用者建立、更改参数、删除有关的指令为useradd, usermod, userdel 等密码建立则为 passwd与群组建立、修改、删除有关的指令为groupadd, groupmod, groupdel 等群组的观察与有效群组的切换分别为groups 及 newgrp 指令useradd 指令作用参考的文件有 /etc/default/useradd, /etc/login.defs, /etc/skel/ 等等观察用户详细的密码参数可以使用『 chage -l 账号 』来处理用户自行修改参数的指令有 chsh, chfn 等观察指令则有 id, finger 等ACL 的功能需要文件系统有支持CentOS 7 预设的 XFS 确实有支持 ACL 功能ACL 可进行单一个人或群组的权限管理但 ACL 的启动需要有文件系统的支持ACL 的设定可使用 setfacl 查阅则使用 getfacl 身份切换可使用 su 亦可使用 sudo 但使用 sudo 者必须先以 visudo 设定可使用的指令PAM 模块可进行某些程序的验证程序与 PAM 模块有关的配置文件位于 /etc/pam.d/* 及 /etc/security/*系统上面账号登入情况的查询可使用 w, who, last, lastlog 等在线与使用者交谈可使用 write, wall脱机状态下可使用 mail 传送邮件
26.2 模拟
情境模拟题一想将本服务器的账号分开管理分为单纯邮件使用与可登入系统账号两种。其中若为纯邮件账号时 将该账号加入 mail 为初始群组且此账号不可使用 bash 等 shell 登入系统。若为可登入账号时 将该账号加入 youcan 这个次要群组。
目标了解 /sbin/nologin 的用途前提可自行观察使用者是否已经建立等问题需求需已了解 useradd, groupadd 等指令的用法
解决方案如下
预先察看一下两个群组是否存在
[rootstudy ~]# grep mail /etc/group
[rootstudy ~]# grep youcan /etc/group
[rootstudy ~]# groupadd youcan开始建立三个邮件账号此账号名称为 pop1, pop2, pop3 且密码与账号相同。可使用如下的程序来处理
[rootstudy ~]# vim popuser.sh
#!/bin/bash
for username in pop1 pop2 pop3
do
useradd -g mail -s /sbin/nologin -M $username
echo $username | passwd --stdin $username
done
[rootstudy ~]# sh popuser.sh开始建立一般账号只是这些一般账号必须要能够登入并且需要使用次要群组的支持所以
[rootstudy ~]# vim loginuser.sh
#!/bin/bash
for username in youlog1 youlog2 youlog3
do
useradd -G youcan -s /bin/bash -m $username
echo $username | passwd --stdin $username
done
[rootstudy ~]# sh loginuser.s这样就将账号分开管理了非常简单吧
26.3 简答题 root 的 UID 与 GID 是多少而基于这个理由我要让 test 这个账号具有 root 的权限应该怎么作 /etc/passwd
root:x:0:0...
test:x:0:0...理论上root 的 UID 与 GID 均为 0 所以要让 test 变成 root 的权限那么就将 /etc/passwd 里面 test 的 UID 与 GID 字段变成 0 即可 实际上别这么搞 假设我是一个系统管理员我有一个用户最近不乖所以我想暂时将他的账号停掉 让他近期无法进行任何动作等到未来他乖一点之后我再将他的账号启用请问我可以怎么作比较好 passwd -l yurq由于这个账号是暂时失效的所以不能使用 userdel 来删除否则很麻烦那么应该如何设定呢再回去瞧一瞧 /etc/shadow 的架构可以知道有这几个可使用的方法 将 /etc/passwd 的 shell 字段写成 /sbin/nologin 即可让该账号暂时无法登入主机将 /etc/shadow 内的密码字段增加一个 * 号在最前面这样该账号亦无法登入将 /etc/shadow 的第八个字段关于账号取消日期的那个设定小于目前日期的数字那么他就无法登入系统了 我在使用 useradd 的时候新增的账号里面的 UID, GID 还有其他相关的密码控制都是在哪几个文件里面设定的 在 /etc/login.defs 还有 /etc/default/useradd 里面规定好的 UID/etc/passwd/etc/shadowGID/etc/group/etc/gshadow我希望我在设定每个账号的时候( 使用 useradd )预设情况中他们的家目录就含有一个名称为 www 的子目录我应该怎么作比较好 mkdir /etc/skel/WWW简单说明系统账号与一般用户账号的差别 系统账号的shell一般都是/sbin/nologin无法登录没有家目录一般而言为了让系统能够顺利以较小的权限运作UID一般再1~999之间 简单说明为何 CentOS 建立使用者时他会主动的帮使用者建立一个群组而不是使用 /etc/default/useradd 的设定 不同的 linux distributions 对于使用者 group 的建立机制并不相同。主要的机制分为 Public group schemes: 用户将会直接给予一个系统指定的群组一般来说即是 users 可以 SuSE Server 9 为代表Private group schemes: 系统会建立一个与账号一样的组名以 CentOS 7.x 为例 如何建立一个使用者名称 alex, 他所属群组为 alexgroup, 预计使用 csh, 他的全名为 “Alex Tsai” 且他还得要加入 users 群组当中 [rootnode-135 ~]# useradd -s /bin/csh -g alexgroup -G users -c Alex Tsai alex1由于种种因素导致你的用户家目录以后都需要被放置到 /account 这个目录下。 请问我该如何作可以让使用 useradd 时默认的家目录就指向 /account 最简单的方法编辑 /etc/default/useradd 将里头的 HOME/home 改成 HOME/account 即可。 我想要让 dmtsai 这个使用者加入 vbird1, vbird2, vbird3 这三个群组且不影响 dmtsai 原本已经支持的次要群组时该如何动作
usermod -a -G vbird1,vbird2,vbird3 dmtsai该系列目录 -- 【BASH】回顾与知识点梳理目录