課題6:ユーザー管理
記事ディレクトリ
実験システム:Centos 7
6.1必要に応じてユーザー、ユーザーグループ、グループメンバーを着用する
- 実験の要件:
1. adminという名前のグループを作成します。
2.追加グループとしてadminを使用して、maryという名前のユーザーを作成します。
3. adminを追加グループとしてaliceユーザーを作成し、bobbyユーザーを作成します。ユーザーはシステムへのログインを許可されず、adminはその追加グループではありません。
4.メアリー、アリス、ボビーは、ユーザーパスワードとしてredhatを使用する必要があります。
- 実験手順
[root@ ~ 03:49:09]#groupadd admin //创建admin组
[root@ ~ 03:51:52]#cat /etc/group //查看组文件
....
admin:x:1004:
[root@ ~ 03:52:10]#useradd mary -G admin //创建mary用户
[root@ ~ 03:54:15]#useradd alice -G admin //创建alice用户
[root@ ~ 03:54:28]#useradd bobby -s /etc/nologin //创建bobby用户
[root@ ~ 03:56:51]#passwd mary //添加mary的密码
Changing password for user mary.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
[root@ ~ 03:57:08]#echo "redhat" |passwd --stdin alice
Changing password for user alice. //另一种方式给alice添加密码
passwd: all authentication tokens updated successfully.
[root@ ~ 03:58:26]#echo "redhat" |passwd --stdin bobby
Changing password for user bobby.
passwd: all authentication tokens updated successfully.
[root@ ~ 04:00:16]#cat /etc/passwd //查看用户配置文件
root:x:0:0:root:/root:/bin/bash
...
mary:x:1003:1005::/home/mary:/bin/bash
alice:x:1004:1006::/home/alice:/bin/bash
bobby:x:1005:1007::/home/bobby:/etc/nologin
- 知識の補足:/ etc / passwdの各行の内容:
ユーザー名に対応するuid:パスワード(未使用、/ etc / shadowに保存されています):uid:gid:ユーザー情報の説明:ホームディレクトリ:シェル
6.2必要に応じてローカルディレクトリを作成する
- 実験の要件:
1.ディレクトリ所有グループはadminです。
2.ディレクトリは、管理グループのメンバーが読み取り、書き込み、および実行できる必要があります。このディレクトリの所有者を除いて、他の誰も権限を与えることはできません(rootを除く:彼はシステム内のすべてのファイルとディレクトリに対する権限を持ちます)
3. / common / adminで作成されたすべてのドキュメントまたはディレクトリは、管理者グループを自動的に継承します
- 実験分析
この実験は主にプロジェクト開発で使用されます。通常、同じグループ内の複数のアカウントがディレクトリを使用する権限を持つことができるように、ディレクトリを設定するときにSGIDが使用されます。chgrpおよびchmod関連の操作にはrootを使用し、これらの管理者を設定する必要があります。グループのユーザーが必要とする開発環境であるrootユーザーは、管理者の役割を果たします。
- 実験手順
[root@ / 04:04:27]#mkdir -p /common/admin //创建目录
[root@ / 04:05:24]#chgrp admin /common/admin/ //修目录属组
[root@ / 04:11:06]#ll -h /common //查看目录元数据
total 4.0K
drwxr-xr-x. 2 root admin 4.0K Jul 29 16:04 admin
[root@ / 04:24:39]#chmod 2770 /common/admin //修改目录权限
[root@ / 04:26:40]#ll /common //查看元数据,权限变化
total 4
drwxrws---. 2 root admin 4096 Jul 29 16:04 admin //设置sgid成功
6.3 umaskを変更し、要件に従ってファイル/ディレクトリのアクセス許可を計算する
- 実験要件
umaskを053に変更し、rootユーザーと通常のユーザーのアクセス許可を計算してファイルとディレクトリを作成し、計算手順を記述します
- 実験手順
ディレクトリを作成するデフォルトの権限はrwxrwxrwxであり、対応する3つのバイナリビットは次のとおりです。
ファイル作成のデフォルトの許可は、3つのバイナリ番号に対応するrw-rw-rw-です。666
rootユーザーのデフォルトのumaskは022で、通常のユーザーのデフォルトのumaskは002です。
umaskが053に変更された場合:
-
rootユーザーによって作成されたファイル/ディレクトリの計算:(テーマを変更する必要はありません。グループはブロックr、x権限に属し、その他はブロックw、x権限に属します)、結果は次のとおりです。
-
ディレクトリ:rwx -w- r–
-
ファイル:rw- -w- r–
-
-
一般ユーザーが作成したファイル/ディレクトリの計算:
- ディレクトリ:rwx -w- r–
- ファイル:rw- -w- r–
- 知識の補足
umaskの機能:いくつかの権限を取り除き、umaskを適切に定義してシステムのセキュリティを支援します。
6.4 / etc / fstabをコピーして、必要に応じてドキュメントの権限を設定します
- 実験要件
1. / tmp / testにコピーします
2.このドキュメントの所有者はアリスである必要があります
3.このディレクトリのユーザーは、他のユーザーが作成したファイルを削除できません
4.ドキュメントにコンテンツを追加するだけ
- 実験分析
ディレクトリにsbitを設定するだけで十分ですユーザーがディレクトリにファイルまたはディレクトリを作成した場合、変更されたファイルまたはディレクトリを削除できるのは、自分とrootだけです。
- 実験手順
Last login: Wed Jul 29 16:30:31 CST 2020 on pts/0
[root@ ~ 04:51:08]$ mkdir /tmp/test //创建目录
[root@ ~ 04:51:28]$ cp /etc/fstab /tmp/test/fstab //复制文件
[root@ ~ 04:51:48]$ chown alice /tmp/test/fstab //修改文件所有者
[root@ ~ 04:52:46]$ ll /tmp/test //查看目录元数据
total 4
-rw-r--r--. 1 alice root 545 Jul 29 20:55 fstab
[root@ ~ 04:53:16]$ chgrp admin /tmp/test/fstab //修改目录属组
[root@ ~ 04:54:27]$ ll /tmp/test/fstab //查看修改后的目录元数据
-rw-r--r--. 1 alice admin 545 Jul 29 16:47 /tmp/test/fstab
[root@ /tmp 05:03:36]#chmod 1777 ./test //文件不能被其他用户删除
[root@ /tmp 05:03:52]#ll //查看文件元数据变化
total 28
drwxrwxrwt. 2 alice alice 4096 Jul 29 16:47 test
[mary@linpengze test]$ ls //切换到同组的mary,测试
fstab
[mary@linpengze test]$ rm fstab //删除fstab
rm: remove write-protected regular file ‘fstab’? y
rm: cannot remove ‘fstab’: Permission denied //无法删除
[root@ /tmp/test 05:11:18]#chattr +a ./fstab //文档只能被追加内容
[root@ /tmp/test 05:11:28]#lsattr //查看当前目录下文件特殊属性
-----a-------e-- ./fstab //a:append e:executive
6.5必要に応じてコマンドプロンプトを変更する
-
実験的要件:形式:<コマンド番号>ユーザー名:ホスト名->
-
実験手順
[root@ / 05:16:42]#vim ~/.bashrc //修改配置文件
PS1="<\#>\u:\h-->"
[root@ / 05:23:47]#init 6 //重启,实际可以用. ~/.bashrc在当前shell执行文件
<1>root:linpengze-->ls //测试,命令提示符发生改变
aa aabb.tar.gz nginx-1.14.0 quan test
aaased aaha.exp nginx-1.14.0.tar.gz quanfile
aaawk anaconda-ks.cfg -o scriptcluster
<2>root:linpengze-->
6.6コマンドclear clearを設定してログインシェルで有効にする
- 実験手順
<7>root:linpengze-->alias cl=clear //这种方式仅在当前shell中生效
<8>root:linpengze-->cl
<9>root:linpengze-->vim /root/.bashrc //修改配置文件,使得在登录shell中生效
add: alias cl='clear'
<10>root:linpengze-->source ~/.bashrc